tl;dr: Challenging, educative, and fun
Step 1 - Initial Interview:
Had initial phone interview with one of the company's recruiters. Topic was my background mostly as well as the position itself. Interview was pleasant, brief (30mins) and on-topic. Had the opportunity to answer a lot of my questions through it.
Step 2 - Coding Test:
Was given a coding test without a time limit. Estimate was 4-8 hours; took me ~20 hours. Topic was to create a REST API client in Go. Overall level was average. Coding-wise I'd consider it an easy case. What I liked the most was the many different aspects you'd need to take into consideration; from infrastructure to documentation to implementation etc. Depending on experience and the assumptions I had to consider, the implementation time could have been ~10 hours. There were some things left up for interpretation on the assignment, but I found this part to actually be the challenging one and I enjoyed it a lot.
Step 3 - Final Interview:
Duration was 1.5 hours. Interview was split into 3 one-on-one 30min sessions, with 3 of the company's senior software engineers, respectively.
First part - Info about form3 tech and brief code assessment of my test: We had an interesting discussion around my code, going through decisions I had made while implementing it. All comments were valid, I agreed with almost all of them, and got the chance to explain why I did what I did.
Second part - Knowledge check: Basically many questions around specific topics of interest, where I was asked to expand on in some form of Q&A style. I hadn't expected the topics, but the interviewer was very collaborative and willing to have some sort of discussion going on around those.
Final part - Debugging case and Q&A: Went through an interactive debugging case, which I enjoyed A LOT! I had expected something completely different and that was definitely a pleasant surprise for me. Was challenging and fun at the same time. Afterwards there was time to discuss around some questions of general interest that I had and the interviewer was willing to prolong the session a bit, in order to answer to all my questions.
Overall:
I got a very nice vibes from all 3 members of the team and I could definitely imagine pair programming and in general collaborating with any of them. Each one had a different personality and seemed to have different experience level and area of expertise. It was a balanced mix of people and content and I really enjoyed it. Finally, the recruiter herself was very friendly, helpful, and easy to talk with throughout all steps of the process.