b: all of them
c: at least 2.
d: see below.
d#2: 2 so far.
e: poorly.
I haven't interviewed properly in 10 years so this experience been a bit of a shock.
1. FAANG: Leetcode hard; failed hard.
2. Another FAANG: everything went ok; eventually rejected. Found through back channels that fudged the system design. Didn't go low enough in the stack .
3. Medium sized company: took a take home. Never heard from them again after 2-3 follows up.
4. Small company: talked to the CTO. Discussed compensation, CTO said I was too expensive (medium salary for Canada)
5. Medium sized company: automated test 3 hours, Java/DynamoDB that I've never done. Why?
6. Small company: conversation with CTO, and dev, no test. Interesting product, pay is not great. Got an offer.
7. Small body shop: 90 minute take home (while recording your screen). Got an offer, way less than discussed.
8. Medium company: zoom tech interview, reasonable questions. moving to "virtual onsite"
9: Medium company: zoom tech interview. failed.
This is over the course of the last 3 weeks.
Some take aways:
- market is hot
- there's absolutely no consistency in the interview process.
- it's hella stressful, impostor syndrome full steam.
- I'm a generalist, so I don't really have a preferred language. Some interviews do pseudocode which is fine, but for interviews where you run code you _MUST_ be fluent in one language. Looking stuff up seems to make a bad impression.
- I spent a few weeks doing leetcode before xmas, and it's certainly been helpful. I'd say most interviews use some sort of algorithmic test as a gatekeeper. You should be able to do easy before you start.