4 ms·
Become a Better Programmer by Taking a Shower
- skytbest 3y ago"I love reading the difficult interview questions that Facebook, Google, and other large technology companies are famous for." This is when I knew I would not be able to relate to this article.
- JohnFen 3y agoBut outside of the context of a job interview, those questions can be a lot of fun. I don't think that they should be part of an interview process, but they can be recreational.
- SillyUsername 3y agoIf your interview has traditional comp sci academic questions instead of practical then perhaps avoid that company (unless it is academia). What they should be asking you is to show the most optimal way to reverse the array, which is to find a popular highly optimised library and use that, one that is also likely to be far less buggy. Algorithmic implementation screams academic, practical implementation yells experience.
- JohnFen 3y ago> What they should be asking you is to show the most optimal way to reverse the array, which is to find a popular highly optimised library and use that While I don't think those questions should be part of the interviewing process, I disagree with this. Answering "use a library" is not giving an indication of your skillset. I would consider that failing answer. I'd prefer to see someone try to work the answer out and get it wrong instead, because it's the working-out process that gives you any insight into the candidate's skillset.
- SillyUsername 3y agoI was asked one of these questions at a publicly owned organisation about 10 years ago, I told them I could do it, but I'd use a specific Apache library, and answered on how the library is used, I also have a second choice of library and illustration. I failed to get the job. That company has a massive staff turnover, and as well as other high profile foul ups, has recently been responsible for updating the details of hundreds of benefits recipients with identical address values. I also had this same experience with another company 15 years ago that is what recruiters call evergreen (always hiring). This is because they have similar archaic practices and I've been told the turnover is because they have a huge mashup of custom code and implementations. Difference of experience Vs academic in my small circle :)
- ralferoo 3y ago> What they should be asking you is to show the most optimal way to reverse the array, which is to find a popular highly optimised library and use that, one that is also likely to be far less buggy. The most optimal way is not to reverse the array at all, but instead index it in reverse later in the code when it's used.
- loa_in_ 3y agoI believe the better answer is "give me more detailed, and better yet, real context".
- mathgladiator 3y agoSo, the challenge here is that these don't help be a better "programmer". However, they do stretch the mind which helps. Unlike others, I love whiteboard code challenges. However, they really are a proxy to IQ which does correlate to job success. This works for big tech as they need more fundamentals especially if you hope to have any success climbing towards principal engineer. Sadly, most jobs don't really need it and the reason is prices law. Applying the actual science in a real way is done by a handful of engineers in an org.
- JohnFen 3y ago> they really are a proxy to IQ Not if you're doing them standing in front of a bunch of people. That's an urgent, high-pressure activity and tests how well you perform in high-pressure, high-scrutiny situations more than they test IQ.
- mathgladiator 3y agoYes, and that's valuable signal as well.
- skytbest 3y agoValuable for what? If high-pressure, high-scrutiny situations are a normal occurrence that's a problem and a huge red flag.
- JohnFen 3y agoRight. If the job involves writing code with a critical crowd constantly watching you do it, then that seems like a valuable thing to include as part of the interview process. But, I suspect, that would also be a job few people would want.
- mathgladiator 3y agoLife? The steady state is a nice calm, but you really want to know the people you're with can deal when things go south. I've been in enough situations where production is having issues, and it's good to have engineers on point.