18 comments

[ 3.1 ms ] story [ 48.3 ms ] thread
I feel like one of the things that school has taught me that is most valuable to me is that there are some things you really hate at the start because you're "bad" at them. With consistent effort (and letting go of the initial, instinctual, desire to dismiss "unfamiliar" and "hard" as "useless") these things get easier and one can see some value in them.

Consider using notepad; it takes away alot of the interactive features that can make programming smoother. Because of this one has to think harder about the program, what it does, and the semantics of the language. Obviously the IDE is a tremendous productivity improvement, and therefore you'll see most programmers using one, but in an interview it is interesting to see if a person does know of these techniques.

People claim that these are "not useful in the real world" which I guess is sort of true, in the same way that eigenvectors are not useful in the real world until you want to build a leaderboard system that works and avoid a whole bunch of bugs, or in the same way that statistics is not that useful until you want to reliably profile programs, or queueing theory is not that useful until your server is crashing because a million requests just arrived in the last second.

It's also a good test to check "can this person do things they don't find interesting or don't see the value in" because it turns out this is quite important in organisations. You might say "oh this is a clear example of a disfunctional organisation." The problem is that this isn't a simple case of "we messed up" it's that everybody being free to do exactly what they want to is physically impossible. If you want to run an organisation you generally have to produce something. This involves working together because cooperation is so effective that it's impossible to do most things without it. Now when people get together, of course they will disagree over intractable things. "Do we use Go or Ruby", "Kubernetes" or "Docker Compose", etc. If you love VSCode, but also recongise that at whatever organisation you're interviewing (lets call it Z) people enjoy using Notepad, the fact that you're willing to compromise is an important factor to demonstrating that you're not completely obstinate about technology choices.

(comment deleted)
These might be great philosophical considerations, but no one is interviewing you for Programmer Heaven.

These shitty interviewing tactics make interviewers feel good about themselves and perpetuate a culture of elitism without actually doing anything at all to find people who will actually be good at the job they're supposedly hiring for.

"Write a tool to find and sort anagrams in a random paragraph, using BrainFuck. You have 20 minutes." is just about self-pleasure for the interviewer.

There's a schism obviously; some practices are obviously abusive and should be stamped out. Interviewing is a two-way process though; I would much rather someone employed such a tactic in the interview because then I could not accept the job instead of showing up and realising how bad it is.

At some point it turns out that you have to do things you don't want to no matter what you do. That's the nature of our interconnected reality.

> Fuck you all FAANG companies for your shitty and broken coding interview process. During six years of my career, I never wrote a piece of shit outside my favorite IDE and now you expect me to use notepad to solve your shitty coding problems.

Oh wait, he meant Notepad the application! That with a screenshare might not be so bad. When I interviewed with one of the A's, the interviewer tried to make me use a notepad, as in pencil and paper, and then read the code back to him over the phone. I said goodbye to him at that point.

I totally agree with his sentiments, I would never work for any of the FAANGs, not even for those ridiculous telephone number salaries. I like my life just how it is, being a code monkey working on VB.net applications for a low salary because it's less stressful that way. It does means I can't have nice things but one can't have everything.
TLDR; the author doesn't like coding interviews.
TLDR; the author doesn't like dumb coding interview process.
Here's the thing. They are telling you they value these things as a signal. You as a candidate can be as frustrated as you want, but throwing a tantrum doesn't actually do anything.

I agree with you that writing in a non IDE and with no REPL is ridiculous. But... That's what they want. Clearly you aren't a fit for each other, why not leave it at that?

I just interviewed with 3 of the FAANGs, and they all had web-based code editors I could use.
Can you compare them with your IDE?