8 ms·
> Keeping those skills sharp even when you’re not job hunting. Can I just add "Leetcoder" as a part time job on my resume? It is amusing how in this industry,
by MattGaiser 6y ago
> Keeping those skills sharp even when you’re not job hunting.
Can I just add "Leetcoder" as a part time job on my resume? It is amusing how in this industry, your ability to interview will not at all be improved by spending time doing your job unless it is algo heavy. It is a separate job entirely.
- CobrastanJorji 6y agoI've had this discussion during interviews as a disarming technique. Candidates will sometimes express nervousness at the beginning and say stuff like "I'm terrible at interviews" or "it's been a while since I've had to do this kind of programming," and I try to respond by making it clear that I understand that the whiteboard coding has very little in common with the actual job and that I'm not judging them, so when I dutifully proceed to ask them to invert a linked list, they hopefully don't feel as judged when they approach the problem. Seems to help at least a bit. Mind you, I'd prefer NOT asking those questions, but I'm not empowered to make that change at my workplace and I'm honestly not sure what I'd replace it with if I were.
- a_wild_dandan 6y ago> I'm honestly not sure what I'd replace it with if I were. Just to theorize: how about having the interviewee write a narrowly scoped toy project that's relevant to the position? (Edit: On site, as a replacement for white boarding.) A JS to-do app for a front-end engineer, for instance. Just a short thing you and the candidate can attack together in a couple hours. The candidate can write "normal" code, google things, clarify requirements, use their own architecture/patterns/style to reach the solution, etc. You could even add/change a requirement midway through the session, too. That would be realistic, and test for brittleness (and maybe be mean). I don't interview people, so this might be hopelessly naive, or maybe untenable for some types of positions. But that interview process strikes me as a far more representative microcosm of an actual job than regurgitating LeetCode solutions or hardcore algo arcana.
- 908B64B197 6y ago> Just a short thing you and the candidate can attack together in a couple hours Unless your hiring pipeline is absolutely perfect (you pretty much get great candidates all the time and almost no bad ones) this doesn't scale at all.
- a_wild_dandan 6y agoCould you explain why it scales worse than current typical interview sessions?
- hnrodey 6y agoOn one hand, it would currently double the time commitment from me (and my interviewing peers) per candidate. That would be a tough pill to swallow. Interview processes are designed mostly for the employer, not the candidate. That's just the reality.
- decafninja 6y agoBecause a candidate can grind leetcode and prepare for a huge number of companies. On the other hand, something like a homework assignment is typically good for a single company, and if you fail, it's time and effort and emotional energy down the toilet.
- 908B64B197 6y agoHomework are great if you: Are extremely prestigious or have compensation clearly above market rates. Candidates only have so much time to dedicate to homework so they will sort companies and work on homework assignments from top to bottom. Homework are easy to grade (some of that can be automated!) and low commitment from the employer side. But that low commitment sends a signal that the candidate isn't really valued. Having an on-site with engineers sends a much better signal as it tells the candidate he's worthy of discussing with a real engineer on company time rather than some gradings software. Of course, if your recruiting pipeline is very poor (low signal to noise ratio, majority of applicants can't code) then sure, weed out with a homework assignment.
- chrisseaton 6y ago> I'm not judging them I don't understand - what is the point of you interviewing them if you aren't there to judge them? What are you doing it for then?
- hnrodey 6y agoTrying to understand their thought process, is the candidate coachable, can the candidate accept feedback, does the candidate at least understand the underlying ideas, etc. The more prestigious the employer then the less forgiving they are on your shortcomings.
- chrisseaton 6y ago> is the candidate coachable, can the candidate accept feedback, does the candidate at least understand the underlying ideas ...isn't that judging? Making a judgement on whether a candidate is coachable is judging isn't it?
- hnrodey 6y agoApologies are due, sir. Two things happened. First, I hastily read through the question and rushed my response. Second, just a few minutes prior I finished a workout and was quite exasperated. The use of the term "not judging" is a bit strange, without further context.
- jlokier 6y agoThe word "judging" has multiple variant meanings. It is being used to mean two different things in this subthread. Judging whether a candidate is coachable, their thought processes relevant to the job, understands the ideas etc is what the interview is for, you're right. But "I'm not judging" doesn't refer to that. It refers instead to the concept in the word "judgemental". Some definitions of that are "having or displaying an overly critical point of view" and "thinking, speaking, or behaving in a manner that reflects a critical and condemnatory point of view".
- closeparen 6y ago
- drchopchop 6y agoWe need to band together and stop rewarding companies who pull this shit in interviews. Leetcode problems are not applicable to 99% of the actual work in most software engineering roles. There are other, gentler ways to find out if someone knows what binary trees, dynamic programming, sorting, and big O notation are.
- st1x7 6y agoNot being directly relevant to the role also has its benefits. It means that you can interview for a job without necessarily having experience in the company's exact problem domain or with the framework that they happen to be using this quarter.
- speedgoose 6y agoTrue, but the algorithms challenges are not very representative of the actual work we do in our industry. They are a nice way to filter people who are not willing to spend a lot of time studying challenges to have job interviews though.
- st1x7 6y ago> They are a nice way to filter people who are not willing to spend a lot of time studying challenges to have job interviews though. They filter for general problem solving skills. Whether you acquired those skills through a degree, self-study, a week of leetcode or 3 months of leetcode will be up to your individual background and aptitude. It's a hiring process - filtering for something is the whole point. Personally, I prefer being tested on more general stuff (like algorithm problems) over most of the alternatives.
- deckard1 6y agoThey filter for memorization. Most leetcode problems you will not be able to solve in the allotted time without first being familiar with the problem or one very similar to it. Because most of those problems (and many CS algorithms) hinge on a certain "trick" to solving them. The way to pass a leetcode interview is to know exactly what the interviewer is asking and then pretend like you've never seen this problem before. Then you amaze them by pulling a rabbit out of a hat. We are all a bit dumber for putting up with this charade.
- dcolkitt 6y agoThe reality is that industrial psychology has consistently found that fluid intelligence is the best predictor of job performance. Even more so than experience.[0] Whiteboard interviews are used, not because they have a lot of relevance to the job, but because they're a hard-to-fake indicator of high intelligence. Somebody who shows a lot of mental fluidity with complex data structures, almost assuredly can quickly master any specific tech stack. Even more so than a less intelligent person with years of experience in that specific tech stack. It's the same reason that the military selects infantrymen based on word synonyms and fast mental arithmetic. What does that have to do with loading a rifle or marching in formation? Not a whole lot specifically, but whenever they've lower the intelligence standards, the results have been disastrous.[1] There are other important qualities for certain. Honesty, resilience, hard work, enthusiasm, being a team player, reliability, etc. But almost all of those qualities are easy to fake and hard to assess in a 30 minute conversation. People who are hired on these qualities, are usually tapped from a pre-existing network, not selected from the recruiter funnel. If you've only got a half hour to choose a candidate, then pretty much your only reliable option is test their intelligence. [0] https://psycnet.apa.org/doiLanding?doi=10.1037%2F0022-3514.86.1.162 https://psycnet.apa.org/doiLanding?doi=10.1037%2F0022-3514.8... [1]https://en.wikipedia.org/wiki/Project_100,000 https://en.wikipedia.org/wiki/Project_100,000
- TinyBig 6y agoIn what universe are whiteboard interviews used this way, as opposed to the interviewer expecting an exact answer regurgitated instantly?
- dodobirdlord 6y agoI'm sure many interviewers do cargo-cult whiteboard interviews, but the core intention of the archetypical whiteboard interview is to spring a complex question on the candidate that they have never seen before and observe how the candidate thinks. If the interviewer is asking questions that the candidate knows the answer to the interviewer is literally doing it wrong. It's not a trivia challenge, and the interviewer should only ask questions that they are confident the candidate hasn't ever seen before. That's not to say that Leetcode-style preparation doesn't work, but it works by tricking the interviewer into thinking that the candidate has solved the problem very quickly, when in fact the candidate actually already knew the solution.