just finished a stripe backend loop, L5 level. sharing because i wish i'd had this before going in.
4 rounds total: recruiter screen, take-home, then two back-to-back technical rounds on the same day.
the take-home was a webhook handler. had to process events idempotently, handle retries, and write tests. they gave me 48 hours but honestly 4-5 hours of actual work.
technical rounds: round 1: live coding. a simplified version of their payments routing logic. you're given a list of transactions with metadata and have to group them and apply rules. they want you to think about edge cases out loud, not just pass the happy path. round 2: system design. design a rate limiter that works across multiple data centers. classic but they went deep on consistency tradeoffs and what happens when your redis cluster partitions.
behavioral was woven into both technical rounds, not a separate round. they asked "tell me about a time you debugged something that turned out to be an infrastructure problem, not a code problem." had a good story for that one.
the coding environment is their own tool. you can google, you can read docs. they actually told me to look things up if i needed to. the test is whether you get unstuck and keep moving.
didn't get an offer. the feedback was that my system design was solid but i didn't "zoom out enough" early enough in the rate limiter problem. i jumped to implementation before fully scoping the requirements. fair honestly.