In April 2023 I had two onsite loops eight days apart: a Series B fintech in NYC (about 90 engineers when I joined) and Meta E5 backend. I prepped for both with the same LeetCode set and the same behavioral story bank, and I walked into them thinking they were two flavors of the same thing. They were not. Here is what was actually different, round by round, and what each loop was grading underneath the visible questions.
How the loops were shaped
The Meta loop was 5 rounds in one day: 2 coding (45 min each), 1 system design (45 min), 1 behavioral (45 min, called Jedi), 1 hiring-manager-ish round. Each round was a different interviewer I had never met. The recruiter sent me a prep doc that named the rounds and listed the rubric dimensions. My loop had a debrief 4 business days later.
The startup loop was 4 rounds across 6 calendar days: 1 take-home (8 hours of my time, sent on a Friday, due Monday), 1 take-home review (60 min with the engineer who would be my tech lead), 1 systems round (60 min, mostly about the take-home extended), 1 founder round (45 min with the CTO who was also a co-founder). No debrief; the CTO told me at the end of the founder round whether the offer was coming.
What the coding rounds were actually grading
Meta coding rounds were calibrated. The interviewer had a problem, an expected approach, a set of follow-ups, and a grid in their head. I solved both problems, but I could feel the rubric ticking: stated assumptions, walked through edge cases before coding, named the time complexity unprompted, pushed for the optimal version when the brute force came out, kept talking through silent moments. The interviewer barely spoke. The calibration is what made it portable across 50 thousand engineers.
The startup take-home review was uncalibrated in the same way that a code review is uncalibrated. The tech lead opened my submission, scrolled to a specific function, and said "why this and not the other thing?" I had built a transaction reconciliation service with a queue and an idempotency key. He pushed on the key choice for 20 minutes. He was not grading my CS knowledge; he was grading whether I would lose to him in the same argument inside the actual codebase six months later. There was no rubric on the other side of the screen, just one engineer who was about to inherit my code.
What the system design rounds were actually grading
Meta system design was a textbook "design the news feed ranking pipeline" prompt. The interviewer cared about: framing the problem, surfacing the dimensions (read-heavy vs write-heavy, fanout-on-write vs fanout-on-read, hot-cold storage), naming a concrete data store at each layer, and back-of-envelope numbers (QPS, storage, hot set ratio). I drew the diagram, hit each of those marks, got pushed on caching strategy at the last 10 minutes, recovered. Standard.
The startup systems round was about the fintech's actual production problem. The CTO opened by describing their reconciliation pipeline (which I had partially rebuilt in the take-home), then asked how I would scale it to 10x the current volume, knowing what their team looked like (4 backend engineers, 2 of them junior). The right answer was not "introduce Kafka". The right answer was "the smallest change that gets us to 5x first, deferring the Kafka conversation to after we hire two more people". The signal was do you understand that infrastructure decisions are also hiring decisions.
What the behavioral rounds were actually grading
Meta Jedi was scored on 4 dimensions explicitly listed in the prep doc: drive, ownership, collaboration, conflict. I told 4 prepared stories, hit each dimension once, made sure each story had a number and an outcome. The interviewer mostly listened.
The startup founder round had no dimensions. The CTO asked me "what is the worst thing about your current job" and listened to which thing I picked. He asked "what do you not want to work on for the next two years" and listened to whether I had the self-awareness to answer truthfully. Then he asked one calibration question: "the last engineer in this seat left because she felt the team was moving too fast and skipping reviews. How would you handle that?" I told him the truth, which was that I would also feel that, and what I would do about it. He told me 20 minutes later they were sending an offer.
What I changed for the next loop
I got both offers. I took the startup. The lesson I would write down for myself is that the two loops were grading different things, and the prep that makes you good at one does not transfer cleanly to the other. The FAANG loop was grading whether I could perform inside a calibrated rubric at scale. The startup loop was grading whether the four people who would work with me wanted me there. If I had walked into the startup loop with the Meta-style prepared answers, the CTO would have heard the script and skipped the offer. The thing I now do differently before a startup loop is read every public engineering post the team has written, then walk in with my own opinions about the things they have already decided, ready to be wrong about them in the conversation.
