Phone screening:
HR sent an environment setup prep ahead of time, asking me to set up my GitHub account beforehand and install Docker / PyCharm etc. locally. The interviewer was very patient and walked through the whole flow end to end — I needed to implement three API calls. The actual question matched a report I'd already seen in another thread on the forum.
Onsite, live and in person:
I drove to San Mateo, and only found out afterward that there was apparently a $75 Uber reimbursement I could have used instead.
First round was coding. I wrote LRU, ran it through the tests, then wrote LFU, and didn't quite finish that one.
Lunch — the hiring manager showed up with three other guys, and that lineup startled me for a second.
Second round was pair programming, again in a local IDE. We did a simple DB design. I don't remember the exact prompt anymore, but I remember we talked through the DB schema, the data access layer, and request/response parsing.
Third round was system design, on a whiteboard, two questions. Both were questions I'd already seen as forum interview reports.
The first was managing a door access system:
- Given a person, list all the doors that person can open
- Given a door, list all the people who can open that door
- (As an admin) grant a person permission to open a door
Basically a many-to-many DB design.
The second was: 10 million devices, design it so each device sends a heartbeat every minute, keep it as simple as possible, and also build a dashboard.
Fourth round was behavioral, with the hiring manager — pretty normal. One question stuck with me: they asked me to evaluate my previous company. I honestly hadn't prepped for that one, so I gritted my teeth, praised it to the hilt, and slipped in a light dig.
Then an HR check-in.
Two weeks later, still no feedback. I couldn't be bothered to chase it.
Discussion
Loading comments…