BitGo Interview Experience (SDE-1 / Backend) - Rejected :(

bitgo logo
bitgo
sde-1 backend2.4 yearsRejected
November 23, 202574 reads

Summary

I recently interviewed at BitGo for an SDE-1 Backend role. The process involved a telephonic screening, an online assessment with two coding questions, and a challenging Low-Level Design (LLD) round. Ultimately, I received a rejection for the position.

Full Experience

My interview journey at BitGo for an SDE-1 Backend position, after 2.4 years of experience in investment banking, began with a 30-minute telephonic screening. This initial round was quite light, focusing on my professional background and fundamental backend concepts. We discussed my daily responsibilities, general backend architecture, basic Java principles, and several Spring Boot topics such as beans, autowiring, exception handling flows, and the distinctions between filters and interceptors, along with REST controller basics. I found this round to be quite easy.

Next, I moved on to an online assessment, which combined Data Structures and Algorithms with a code explanation component. I was given two coding questions to solve and then had to walk through my logic. The first question involved finding the shortest path in a graph; I had to parse string-formatted edge inputs, build the graph, and then apply BFS to find the path between a source and target. The second question was a Fibonacci variant: given an array, I needed to find the first Fibonacci number greater than or equal to the sum of all array elements. After simply computing the sum, I generated Fibonacci numbers until the condition was met. There was also a follow-up to explain the complexity and discuss alternative approaches. I'd categorize this round as Easy to Moderate in difficulty.

The final and most challenging round was an hour-long Low-Level Design (LLD) session. My task was to design a simplified version of MySQL, with the expectation of delivering working code. This required implementing functionalities like creating databases, tables, inserting and querying rows, and demonstrating basic relational behavior. I also needed to handle commands through parsing, maintain all data using in-memory data structures, and strictly adhere to OOP and SOLID principles throughout my design. While I managed to implement most of the features, I couldn't quite finish one minor part within the given time.

Following these rounds, I unfortunately received a rejection email.

Interview Questions (3)

Q1
Shortest Path in Graph via BFS
Data Structures & AlgorithmsEasy - Moderate

Given input in string format representing edges, I had to parse the input, build a graph, and then run BFS to find the shortest path between a given source and target.

Q2
Fibonacci Number Greater Than Array Sum
Data Structures & AlgorithmsEasy - Moderate

Given an array, find the first Fibonacci number that is greater than or equal to the sum of all array elements. A follow-up asked me to explain the complexity and discuss alternative approaches.

Q3
Design a Simplified MySQL
System Design

I was tasked with designing a simplified version of MySQL, with the expectation of delivering working code. The design needed to support core functionalities such as creating databases, creating tables, inserting rows, querying rows, and exhibiting basic relational behavior. I also had to handle commands with parsing, maintain data in in-memory data structures, and adhere to OOP and SOLID principles.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!