5 ms·
I've done my share of interviews, and I don't believe there is one. Yes, 80% of the recent grads we interview are unhirable. By unhirable I mean can't answer t
by Gunax 6y ago
I've done my share of interviews, and I don't believe there is one.
Yes, 80% of the recent grads we interview are unhirable. By unhirable I mean can't answer things like:
-how to reverse a string
-how to remove an element from a linked list
-time complexity of hashsets vs linear searching.
But we do have applicants who do those things (the other 20%). And we have plenty of them. So many that we end up filtering many out for other reasons.
These prestigious companies try to put out an aura that they only hire the top 1%, but then claim there's a skill gap... Seems contradictory to me.
Google has a culture that reportedly claims that they would rather not hire 10 good candidates than hire 1 bad one... So how can you claim there is a skill gap when you're rejecting so many qualified people who almost passed your test?
- avgDev 6y agoI am a full-stack dev, I write enterprise applications. Using SQL, DB2, .Net MVC5/Core. Reversing a string is trivial but honestly I have not used linked list in a while, and I probably would have a hard time answering that question. I can do the job, I can quickly debug and find errors. This is what sucks about software, you can have many years of experience and fail a question about a linked list, if you have not utilized it in a while. I solve business problems, read documentation that is my age to work with legacy systems, etc. I keep up to date with the web dev area I'm working in but this is much different than college data structure and algo knowledge.
- amf12 6y ago> I have not used linked list in a while, I think the point of these questions for entry level devs is that they should be able to figure out how to remove an element from a linked list even if they have never used one. It's pretty trivial if you think about it and have some basic understanding of objects and references. Also these types of questions are not usually asked for experienced devs.
- salamander014 6y agoThe solution to removing an element from a linked list is so simple I Googled it because I thought I was missing something. Anyone who cannot remove an element from a linked list simply does not understand what a linked list is. And that's OK, but in order for companies to make progress, they use questions like these to make sure they are hiring people that are knowledgeable and capable of solving certain kinds of problems. The other thing is, people that can answer these simpler kinds of programming problems correct are more likely to write clean code, make better decisions, and be an asset to a team. It is just an easy way to weed out bad candidates. That doesn't mean all candidates who can't answer the question are bad, but likely that all bad candidates cannot answer the question; there's a big distinction there. Unfortunately a lot of people with good experience get left behind. But the other problem is just because somebody has good experience doesn't mean they are the right fit for the position. And that's just life.
- stickyricky 6y ago> time complexity of hashsets vs linear searching Not disagreeing with you but I see the opposite problem. People who trust hashsets way more than they reasonably should. You need to reach economies of scale[1] before they make sense. A lot of performance is lost building these expensive structures. 1. https://gist.github.com/cmanallen/f40fe3b75d567057c98e5b31267ebbae https://gist.github.com/cmanallen/f40fe3b75d567057c98e5b3126...
- strikelaserclaw 6y agoin general software engineering has no barriers to entry officially, and it pays well, so you get an influx of people who are all about the $$$ but without any of the requisite skill. I've done my fair share of interviews on the interviewer side to know that there are definitely qualified applicants out there but you have to wade through many not so qualified applicants. People complain about leetcode style interviews but when you get a lot of applicants for a position who are unqualified, you have to filter them out some how.
- qes 6y agoIn my experience, albeit limited, you don't need anything approaching leetcode challenges to weed out the unqualified, even the good talkers. FizzBuzz became a thing for a reason. Would you consider FizzBuzz leetcode? Would you consider a 5 minute discussion about how a linked list works leetcode, or whiteboarding pseudocode for a node structure and Add/Remove methods? (and for what it's worth, I almost never find a need to go even that far) Parlay that 5 min theoretical discussion into 10 minutes of conversational discussion on application in practice and for anything less than a lead position I already know if you're "qualified" to be a potential hire or not. I work at a small company with very low turnover so it's not like I've hired bunches of people, but in 10 years I've never hired a bad developer. Doubt I've passed on many good ones, either, though they might get passed on for other reasons.
- _qulr 6y ago> Doubt I've passed on many good ones, either How would you even know? Do you do any follow up with candidates you rejected?