4 ms·
> I’ve only ever seen it in the context of frustrated newbie candidates complaining that they have to put in some non-coding effort in order to get hired. This
by Rayhem 5y ago
> I’ve only ever seen it in the context of frustrated newbie candidates complaining that they have to put in some non-coding effort in order to get hired.
This surprises me because I've generally heard hiring is broken because of how it affects seasoned programmers. The argument, as I understand it, is that "broken" interviews largely consist of "grind leetcode and solve my ever-more-specific algorithmic challenges" that have very, very little to do with the actual nature of the work or a candidate's general aptitude.
- dahart 5y agoI know many many seasoned programmers, both in and out of the Bay Area, and I haven’t met any seasoned programmers who deserve to get a job but can’t. Even if companies are asking for leetcode grinding, what I’m asking about is the outcome - what hiring or unemployment numbers actually demonstrate that hiring is ineffective somehow? It is true that some companies do coding challenges as part of the interview process, one part of many. I’ve never heard of an interview process where leetcode style puzzles are the whole interview, or even a majority. I had one job in the recent past that had an interview coding challenge (actually it’s the only job I’ve ever had that asked for coding during the interview), and I totally enjoyed the coding challenge. It wasn’t leetcode, and I was allowed my choice of language, but it was on the spot puzzle solving unrelated to the eventual work, but definitely related to my general aptitude. It certainly might be unrelated to the work, but it’s a bad assumption, I think to claim that doing a little programming has nothing to do with a candidate’s general aptitude. I have seen & heard of a few seasoned programmers getting upset when they are asked to write code on the spot, and believing that their years of experience and heavy resumes should exempt them from demonstrating their ability to write code during the interview. I personally interviewed one guy who did that, and he was rejected specifically because of his attitude; companies don’t want bitter old-timers who refuse to do some dirty work, nobody is above being part of the team, sometimes doing boring tasks, and always learning new things. I don’t really identify with seasoned programmers who feel like they shouldn’t have to demonstrate their abilities, who don’t understand that people pad resumes all the time and that interviewers might not take your promises at face value. There are people interviewing who have experience and can’t code their way out of a paper bag, so these coding challenges are filtering for that. But people who want to write code full time should have no trouble attempting and even enjoying some code writing during the interview, no?
- sokoloff 5y agoOne of my fondest memories from interviewing was a take home exercise from Accolade (or may have been Acclaim) which was: given this framework (a working application with a TODO: write these two functions to implement the NPC strategy to fly an airplane across a map of open squares and mountain squares to navigate from the origin airport to the destination airport without crashing. On each turn, the airplane could turn 45° either way (or not) and then moved forward one square each turn.) Your two functions were “init/plan” and “give me the next move” (or maybe it was just "give me the next move" but you could decide to do the planning on the first move). The program then ran and kept track of how many successes and failures happened with your strategy. IIRC, the problem didn’t specify a fitness function, so I decided “success first, then shortest flight, then least turns, then longest straight-in approach” was what I’d use. I enjoyed doing it. Got called out for an interview where the senior engineer had clearly read my code and asked about it a bit. I was then offered a job that couldn’t pay for a comparable standard of living in CA as compared to Boston, so I declined, but the coding “challenge” was the best one I’ve seen: bounded, easy to understand, could use my tools, in my environment, take however long I cared to (I spent about 90 minutes on it and then ran it overnight just to make sure I didn’t have any (airplane) crashes that I didn’t predict as inevitable before takeoff), and was relevant in context and difficulty to the job.
- dahart 5y agoMy own story is somewhat similar - the coding problem was a Tetris style game that was bounded and easily achievable in an hour. No graphics, just console text. Even though the job would be JavaScript and my expertise was C++, I chose to use Python (and I have no idea why anyone would choose a language other than Python for a time-constrained interview, given the choice. ;)) Move or rotate a block, and drop it until it rests on the pile. The main requirement was to implement a scoring routine, and then “extra credit” was offered if someone wanted to implement an AI if they had any remaining free time. I was so excited to get the thing working and flex by writing a basic AI player that I completely forgot to write the required scoring routine (my AI heuristics maybe should have, but didn’t depend on score). The interviewer was kind and just asked me to explain how I would have written the scoring routine, and then later offered me the job. I took it. (It was lower pay than my previous job, but not egregious. No regrets though.) This interview is for me, like you, one of my favorite interviews ever. BTW I completely bombed the MVC database schema portion of the interview. Like really totally bombed it, I was terrible. But they were reasonable and everything else was fun. Six months later I was giving all the same interview questions and hiring people, trying as hard as I could to make the interviews as much fun as I’d had.