The technical phone screen involved a couple of simple technical questions, followed by five interviews at the Stripe office: three coding, one design, and one with a manager.
The bug squash interview was derailed because the full test suite failed for reasons unrelated to the code containing the bug. We spent a good 20 minutes trying to figure out why the test suite crashed with one implementation of the bug fix, when it took less than 10 minutes to actually fix the bug. That time would have been better spent moving on to another bug.
My only other issue with the process is that I did not feel I received any real feedback about my performance throughout the interview. I encourage the interviewers at Stripe to give honest feedback at the end of each technical interview, or for HR to collect feedback from the technical interviews to give to the candidate during the evaluation. When a candidate produces solutions for all the coding questions, it's important to let them know where they could have improved so that they feel they've been given due consideration for their time.
Design an API for tracking events in different clients.
Fix a bug in Backbone.
Write the code to replay a list of HTTP requests from a file represented as JSON.
Write a map implementation with a get function that lets you retrieve the value of a key at a particular time.
What parts of the development process don't you like doing?
The following metrics were computed from 45 interview experiences for the Stripe Software Engineer role in San Francisco, California.
Stripe's interview process for their Software Engineer roles in San Francisco, California is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Stripe's Software Engineer interview process in San Francisco, California.