5 ms·
There is a lot of cynicism in this thread, including this from the OP: > This is also what Software Engineering has become: you memorize, regurgitate and parti
by _skel 5y ago
There is a lot of cynicism in this thread, including this from the OP:
> This is also what Software Engineering has become: you memorize, regurgitate and participate in agile the masquerade. Creativity is shunned. Tried architectures/patterns are what is expected.
No, not really. Maybe some jobs are like that. Many are not. But even the jobs that are not like that will generally be gated by interviews that include Leetcode-style questions.
This happened in the software industry because credentials and experience often mean nothing, resume fraud is rampant, and the cost of hiring a bad engineer is very high.
How about a take-home assignment? Suggest that and many will respond, "I don't work for free" or "I don't have time to work after work, I have a family to take care of." How about just looking at prior experience, or credentials? Resume fraud prevents that, and a lot of companies prefer to hire generalists and find a team for them to work in, rather than hire specialists for a particular team. Outside of research-heavy fields like AI/ML, a university degree is no predictor of success.
So, we need to find a way to evaluate a candidate, in a short period of time, that gives a reasonable estimation of how they will do in the job. If there was a better way, and it was proved to be better, the industry would adopt it very quickly, and it would be a competitive advantage for the companies that realized it first. But that has not happened.
If you put aside the cheap cynicism that permeates threads about programming interviews, you'll realize it hasn't happened because none of the people who are hiring have figured out a more reliable way to hire, even though there are very smart people doing it and they have an enormous financial incentive to figure out how to do it better. A company that could find all the good programmers who can't Leetcode, and weed out the bad programmers who can't Leetcode, would get an enormous amount of talent that others overlooked.
This is just a hoop to jump through, and it's not nearly as difficult as getting a college degree or learning how to code in the first place. I'm not saying it's easy, I'm saying it's doable with time and practice. Most of your colleagues have done it at your current job and also at your future job. I can't do it at the drop of a hat either; I would need to practice like almost everyone else. You can do it too, if you approach it with the right mindset: you aren't supposed to enjoy it or find it intellectually interesting; it's just an obstacle to overcome and it's smaller than many other obstacles you've dealt with before.
- Kaze404 5y agoYour comment starts from the assumption that LeetCode-style interviews are common because they work or are, at least, the best we can come up with at the moment. There are many reasons why this could be the case, and it being the current best alternative is only one of them. Another that immediately comes to mind is survivorship bias.
- twblalock 5y agoHow does survivorship bias factor into this? What are some of the many other reasons you allude to? If there was a better way to do this at the scale of the software industry, the incredible incentives to find out how to do it better would have resulted in something by now.
- slt2021 5y agothere is no survivorship bias. Just compare random engineer from Big tech who knows leetcode to a random engineer from unknown company (like your local community bank IT guy) who never heard of leetcode and you will see the difference yourself. or better yet open your own high growth IT startup, raise few mills from VC and start hiring and see if you like leetcode interview or not.
- usrbinbash 5y ago> because credentials and experience often mean nothing, resume fraud is rampant Problem is, it's even easier to game the system by just memorizing LC questions. A metric that is known to be relevant beforehand and can be tackled by "learning for the test" is an almost surefire way of ensuring that a lot of people will do exactly that. There is an entire industry to prepare people for these tests, same as there is for standardized MC tests in eductional systems that rely on them. It's not easy to detect resume fraud. But it's even harder to determine whether someone actually knows his stuff, or just spend time (and sometimes money) on just memorizing a lot of questions. > If there was a better way There is: Talking to people. Actually doing interviews. https://www.linkedin.com/pulse/why-interview-coding-tests-moronic-brain-dead-stupid-asinine-briggs https://www.linkedin.com/pulse/why-interview-coding-tests-mo...