After applying online, a Betterment recruiter reached out and scheduled an initial 30 minute phone call, where he described Betterment and the role in more detail and I went over my background. There was then a technical phone screen with a Betterment engineer, which was a combination of broad technical questions and adding functionality to an existing piece of code via a share coding editor. After I wrote my code, we then would discuss how I might have change things if operating at a very large scale, and it was a really enjoyable discussion.
I was then invited to an onsite interview, which consisted of two parts: two technical interviews, one focusing on more algorithmic and data structure coding and another focusing on data modeling. There was then a lunch with a Betterment engineer which was an "Ask Me Anything" session, where I had an hour to ask questions about working at Betterment both from a technical and non-technical perspective.
There were three interviews in part two: an interview with the hiring manager/engineering team lead, an interview with an engineering executive, and then an interview with a product manager. There was then a brief session with my recruiter after the interviews had concluded.
I really appreciated that this is not your standard "whiteboard" interview p. It definitely felt, and I really enjoyed getting the perspectives of all sorts of people in the organization--executives, product managers, team leads, as well as engineers-- rather than just engineers. Everyone was friendly and very open to answering my questions and genuinely interested in learning about my background and interests.
While I was making my decision, Betterment went above to answer my questions and invite me to accept the offer -- multiple phone calls with my recruiter, a call with two engineering executives, and even an email from the CEO! I also had a competing offer deadline that required Betterment to give me a decision within 24 hours, and I appreciated the effort they made to communicate the offer so quickly.
I interviewed with dozens of companies, and Betterment was far and away the best interview experience and the one where I felt most valued as a candidate. Betterment seems like a really great place to work in terms of technical problems, culture, and business domain. It was extremely difficult to turn down the offer (and I still wonder if I made the right choice!), and I've already recommended a friend to interview with them.