Most active commenters
  • FartyMcFarter(3)

←back to thread

Please stop the coding challenges

(blackentropy.bearblog.dev)
261 points CrazyEmi | 13 comments | | HN request time: 0s | source | bottom
Show context
CharlieDigital ◴[] No.42148313[source]
A small anecdote.

A partner of a friend quit their job earlier this year. They then took 4-6 weeks to prepare for each interview with Big Tech companies (4-6 weeks for Meta, 4-6 weeks for Stripe, etc.). Along the way, they also took random interviews just to practice and build muscle memory. They would grind leetcode several hours a day after researching which questions were likely to be encountered at each Big Tech.

This paid off and they accepted an offer for L6/staff at a MAANG.

Talked to them this week (haven't even started the new role) and they've already forgotten the details of most of what was practiced. They said that the hardest part was studying for the system design portion because they did not have experience with system design...but now made staff eng. at a MAANG. IRL, this individual is a good but not exceptional engineer having worked with them on a small project.

Wild; absolutely wild and I feel like explains a lot of the boom and bust hiring cycles. When I watch some of the system design interview prep videos, it's just a script. You'll go into the call and all you need to do is largely follow the script. It doesn't matter if you've actually designed similar or more complex systems; the point of the system design interview is apparently "do you know the script"?

Watch these two back to back at 2x speed and marvel at how much of this is executed like a script:

- https://www.youtube.com/watch?v=4_qu1F9BXow

- https://www.youtube.com/watch?v=_K-eupuDVEc

replies(14): >>42148339 #>>42148377 #>>42148639 #>>42149124 #>>42149251 #>>42149406 #>>42149518 #>>42149554 #>>42149705 #>>42149979 #>>42150271 #>>42150314 #>>42151333 #>>42151610 #
paxys ◴[] No.42148339[source]
Sounds like the system worked exactly as intended then. A seemingly smart person got a good job. What's the problem with this story exactly?
replies(7): >>42148421 #>>42148466 #>>42148494 #>>42149125 #>>42149358 #>>42149519 #>>42151724 #
pmg101 ◴[] No.42148421[source]
A moderately smart person was selected for a good job perhaps over many many better possible hires simply because that person had the leisure to learn the game. Inefficient. But nice for that individual, naturally.
replies(5): >>42148965 #>>42149145 #>>42149365 #>>42149704 #>>42150297 #
1. FartyMcFarter ◴[] No.42148965[source]
But is there a good way to find the "better possible hires" which doesn't have other significant disadvantages? If you have a convincing method of doing that, many companies would be interested in your ideas.
replies(3): >>42149053 #>>42149068 #>>42149274 #
2. pydry ◴[] No.42149053[source]
Yes, ask give interview tasks which are realistic depictions of the actual job tasks.

No, the hiring managers that are into cargoogle culting are not actually that interested in how to do interviewing properly. Not unless, say, google does it and they can copy it.

For them the important thing is that leetcode is a safe, defensible choice because "everyone else does it that way".

replies(3): >>42149175 #>>42149630 #>>42151518 #
3. Apocryphon ◴[] No.42149068[source]
Starfighter doesn’t seem to have gotten anywhere

https://news.ycombinator.com/item?id=37985450

4. FartyMcFarter ◴[] No.42149175[source]
> Yes, ask give interview tasks which are realistic depictions of the actual job tasks.

I think this is exactly what a lot of companies try to do when interviewing. Depending on how much time they want candidates and interviewers to spend on the task, this ranges from leetcode-style problems to bigger coding challenges (possibly with some debugging or collaboration involved).

What would you suggest concretely?

replies(1): >>42171681 #
5. exe34 ◴[] No.42149274[source]
interview followed by paid internship/probation. watch them work on your real system. Keep them if they're good.
replies(4): >>42149331 #>>42149659 #>>42149948 #>>42150173 #
6. FartyMcFarter ◴[] No.42149331[source]
That's what companies already do.

Are you suggesting that any coding interviews and challenges are simply removed from the existing processes? That just means you end up with more candidates to choose from, which doesn't sound helpful at all if your goal is to end up with better hires as the comment above was suggesting.

replies(1): >>42150153 #
7. SatvikBeri ◴[] No.42149630[source]
One of the main questions I ask in interviews is basically "we have a data pipeline with goal X and constraints A, B, and C. How would you design it?" Depending on how they do, we'll discuss various tradeoffs, other possible goals/constraints, and so on.

This is based on a real system I designed and have been maintaining for ~5 years, and is also very similar to other systems I've run at previous jobs.

About half the candidates complain that it's not a realistic question.

8. pkaye ◴[] No.42149659[source]
In the US this doesn't work well outside of college internships. Most tech workers don't want to shift to a new employer with a probation period. We already live under an "at will" employment relationship so employers can let you go anytime and workers can leave anytime. To have real value to a probation period for workers, we have to guarantee its harder to fire you past the probation period.
9. theamk ◴[] No.42149948[source]
This will strongly favor people who believe that that they cannot get a good job, because if a candidate has multiple offers, why would they choose probation vs regular job?

(Note I am saying people who "believe" they cannot get a good job. This would be people who worry a lot, people with unusual experiences that other companies avoid, and under-performers who got fired. I am sure there will be some great hires in those groups, but likely less than during regular hiring)

10. exe34 ◴[] No.42150153{3}[source]
leetcode doesn't help either. it's just cargo culting at this point.
11. IshKebab ◴[] No.42150173[source]
Even with probation the cost difference between saying no at interview and firing them during their probation is enormous.
12. ball_of_lint ◴[] No.42151518[source]
As you climb the engineering IC ladder your responsibilities involve larger and larger tasks and timescales. It's not possible to measure whether someone can make the right decisions about the architecture of a service as requirements change over years in a 1-day interview. Anything that isn't "be the engineer maintaining this service for 1 year" is going to be a proxy for that, which can be learned and gamed.

What would be a "proper" interview in your opinion?

13. pydry ◴[] No.42171681{3}[source]
A lot of companies do do it this way but the ones that set leetcode problems are deliberately avoiding setting realistic interview tasks.

If you think leetcode is representative of real life programming you're probably a college student.