The first live coding session started with general questions about my experience and then moved on to a LeetCode-style exercise: given strings A and B, find the starting index of an anagram of string B within string A. I also had to discuss Big O notation and, after coming up with a brute-force solution, find a more optimal one. The total time was about 1.5 hours.
The second live coding session began with more generic questions about software development and then progressed to another LeetCode-style exercise: given an array of positive integers A and a target T, find a continuous subarray of A that adds up to the target T. After devising a brute-force solution and explaining its complexity, I was asked to improve the solution and consider how to solve it for both positive and negative integers. The total time was about 1.5 hours.
The third interview was a system design session. It started with more general software development questions, and then I was asked to design a rate limiter for two REST endpoints that were authenticated by an API key and ran on a single server. I had to come up with an API key format, discuss different versions for coding the rate limiter, and explain how I would change my approach for multiple server instances. The total time was about 1.5 hours.
After the third interview, I withdrew from the process as it had already taken too much time, and there were a few more interviews in the pipeline.
See the interview process description.
The following metrics were computed from 1 interview experience for the Bolt Senior Software Engineer role in Tartu, Estonia.
Bolt's interview process for their Senior Software Engineer roles in Tartu, Estonia is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Bolt's Senior Software Engineer interview process in Tartu, Estonia.