I’m a seasoned software engineer. I led the most difficult team in a Boston startup that had the best engineers in the city. I made dozens of products for multi-billion dollar companies and startups that led to their success. I now work for one of the biggest tech companies in the world. That’s just the last few years. And I still despise interviews.
I think the main problem is there is something very specific the interviewer is looking for, but doesn’t share. At best it’s like a paradox. They say do this exercise and be creative! But when you follow the instructions to a T, they are like nahhh. Don’t you want someone who can build what you ask for? Why would I write something overly complicated? It’s just bad code. Their hidden qualifications are completely subjective, not based in reality, and encourage you to do a poor job.
The same goes for softer skills. I recently had a good round of interviews and when I asked for the results, they said they are looking for something very specific that I don’t have. Okay, what is it? How could you possibly know I can’t handle some mysterious responsibility that wasn’t shared?
It’s this impossible dance, but a blessing at the same time. If interviewers cannot communicate what they are looking for, how would I ever be successful in that role? And if they are actively trying to make me write bad code to satisfy their delusions of what makes good code, I would never want to work with them. It would drive me crazy.
A lot of this comes down to fear, yes fear. Most of these “engineers” aren’t that, but are programmers. They are not qualified to pick a library and forget about picking a framework, so they go to the experts You know how they learn? They read blog posts and watch talks from evangelists and they are too stupid to realize they aren’t experts, but evangelists. They are trying to sell you something… it’s their job. Ever wonder why they tell you they wrote a book 5 minutes later?
In the front-end world there are two clear examples of this.
The first being the original angular. OMGGGG Google made a framework, they said. No they didn’t, they bought it. And everyone was too busy being enamored by WElL GooGLE IS SmARt, that all critical thinking was thrown out the window. The digest cycle was a clearly awful idea that could not possibly scale. What are most of those companies using now? I know one that is so scared of making a new choice that they have gone agnostic. They real make web components and then wrap them with angular ones. Sounds fun. But most moved to the new versions of angular that fundamentally works nothing like the old versions. TL;DR: They still lack critical thinking.
The other is redux. Pushed by the author who is a clown, who eventually went on Facebook. It’s. Awful. It was sold so hard everyone started using it, despite not needing it for 99% of what they are using it for. I think a big part of it is also that there are so many developers desperate to use functional programming and immutable state is part of that. Spoiler: ~80% of the time imperial programming is objectively better in every quantitative and qualitative context. It’s been on a steady decline since. I do not know one new project that uses it. It only took people 5 years to realize it’s trash.
Maybe that was a bit of a tangent, but it’s to illustrate my point. The same people who are put in power (usually because they are shitty political people or have the biggest mouths) are the people interviewing. If they aren’t qualified to make critical decisions, they shouldn’t even be interviewing junior devs. But alas, here we are. We are in a place where an interviewer asks you to follow instructions, but tells you that you aren’t qualified because you didn’t use some library they have a hard on for. That’s some objectivity. I’m glad you said no, because I have no desire to work with a guy with a constant boner, pointing it around trying force me into being as brainwashed and irrational as him.