News for hackers. Stuff that matters.
Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by MrWiffles on Friday May 20, 2022 @06:36PM (#31453384)
Sure, great for metrics, terrible for actually doing the job.

Leetcode can never compete with or allow a candidate to demonstrate real multi-dimensional or multi-systems thinking. You may be able to write some bass ackwards arcane algorithm and prove you’re “31337” but can you make that work at scale with a data store that you have no information about? How’s it going to get the data to operate on in the first place? Will your data retrieval query cripple a prod database? Read from replica? How far behind can that data be without making your fancy algorithm useless? How will you parallelize that work set? In-request or background job? Multi-threaded or single thread? What about changing state in multi threaded contexts? Database indexes? Schema design? How will you handle failures in your algorithm? How will you handle malformed data? And most importantly, does what you’re doing benefit the user, or just your epeen?

Leetcode is bullshit. It’ll never let somebody show you they’re good at anything other than solving bullshit problems. And you’ll lose everybody who CAN work within the larger context by chasing candidates who’s chief skill is solving bullshit problems.

Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by bluedevilzn on Friday May 20, 2022 @06:45PM (#31453472)
Leetcode is a proxy IQ test. Anyone who can do leetcode can learn how database indexes work (hint: it uses Data Structures and Algorithms) but not the other way around.
Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by switchbak on Saturday May 21, 2022 @01:48AM (#31455572)
I mean yes, it does filter for those that are willing to put up with some bullshit to get a job. But you haven't convinced me that the group that's unwilling to put up with this is unqualified.

There are many senior people or folks with families/etc that don't have the time or patience for this ridiculous cargo cult hazing ritual masquerading as a hiring technique.

I would say your assertion that "leetcode is a proxy for IQ" is a bold statement to make without some bold sources to back it up.

I've personally met a number of people that are great at these small scoped problems but suffer at broader systems engineering.

Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by RedGreenCode on Saturday May 21, 2022 @04:36AM (#31456274)
> the group that's unwilling to put up with this is unqualified

Companies that get a lot of applicants care more about false positives than false negatives. So they're fine not hiring a lot of qualified people, as long as there's a low chance of accidentally hiring an unqualified person. Apparently LeetCode-style problems work for that type of screening.

Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by b20000 on Saturday May 21, 2022 @04:53PM (#31461693)
companies can win by hiring exceptional people with deep experience. the cost of not hiring these people has been unquantified. i would never want to be in their position. imagine a startup hires that one person who will make a billion dollar difference?
Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by shagie on Saturday May 21, 2022 @05:47PM (#31462216)
The startup isn't likely to be getting resumes on the scale that the big tech companies do and can afford to spend the time to look at each resume and maybe even do an interview with each candidate.

However, if you are getting resumes on the scale that the larger, well known tech companies do, then the individual attention cannot be paid on each resume. At that point, one looks more at a quick filter to try to remove the risky hires.

If you've got 1000 resumes and 80% of them are bad hires, and after an online assessment that takes it down to 200 resumes of which only 50% would prove to be bad hires, that is a significantly improved pool to consider.

Yes, it is possible that a great candidate was removed in that filter, but its also possible that one still remains in that pool.

Startups may be cargo cutting big tech interview processes, but the process has value for big tech companies and any others that have more resumes than they can reasonably deal with.

Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by b20000 on Sunday May 22, 2022 @01:10AM (#31465051)
cost of living is driven by FAANG and startups use the same leetcode hiring process as FAANG, but pay less. the equity you get has a miniscule chance of becoming valuable.
Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by nnoitra on Saturday May 21, 2022 @05:49AM (#31456578)
No, that's not true, LC style problems are not bullshit. There's no rote-memorization required. Just basics of a language that you know and the very basic constructs.

95% of programming is data structures and algorithms because that's where all the performance gains are usually made. The other 5% is knowledge of the hardware and micro-optimisations like avoiding branch mispredicts and understanding the compiler.

Hashing in databases is very similar to how hash-tables work as is sharding.

Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by switchbak on Saturday May 21, 2022 @11:17AM (#31458619)
It is true, most of the leetcode problems use the same underlying collection of approaches. If you don't know them (by memorizing them), you probably won't solve the problem. There is some value in knowledge of those approaches (algo and DS stuff), but these toy problems are not a good way to evaluate how someone would use then in a real life situation.

"95% of programming is data structures and algorithms" - it's just not. 95 percent of programming is gluing together libraries, refactoring code and reorganising what you have to solve new business requirements.

Your focus on performance (albeit important) above all else makes me question how much real world experience you have building large scale systems. (Unless you're a systems/embedded developer).

But this is the crux of the issue: using metrics that don't map well to what we're trying to optimize for. Perhaps your trying to optimize for finding great performance focused, low level software devs? If so that's different that my goal.

Re:Ask HN: What to do about ‘Good at programming Bad at Leet... by charcircuit on Friday May 20, 2022 @06:54PM (#31453561)
>can you make that work at scale with a data store that you have no information about? How’s it going to get the data to operate on in the first place? Will your data retrieval query cripple a prod database? Read from replica? How far behind can that data be without making your fancy algorithm useless? How will you parallelize that work set? In-request or background job? Multi-threaded or single thread? What about changing state in multi threaded contexts? Database indexes? Schema design? How will you handle failures in your algorithm? How will you handle malformed data? And most importantly, does what you’re doing benefit the user, or just your epeen?

Some of these questions are perfectly valid during LC coding rounds. Others would be more appropriate in a system design round.