Bloomberg - Pune (India) | SSE | Interview R1 | Techincal Screening | 24th Dec 2025
Salesforce | MTS | Selected
LinkedIn SWE Infra Interview experience
Google L4 Interview Experience & Timeline
TCS Digital Interview Experience (TCS NQT Priority Hiring)
goDaddy | SDE2 | Feb 2022 [Reject]
Summary
I interviewed for an SDE2 role at GoDaddy in February 2022. The process involved multiple rounds covering data structures, algorithms, and system design, ultimately resulting in a rejection.
Full Experience
My interview journey at GoDaddy for an SDE2 role in February 2022, while I was pursuing a Master's in Software Engineering from ASU, involved several challenging rounds. I brought 5 years of experience from India and Abu Dhabi, along with solid experience in distributed services, Kafka, and Zookeeper. I felt confident in discussing leadership principles and my experience with both SQL and NoSQL databases. The interview location was CA.
The process began with Round 1, a standard HR interview covering my resume, salary expectations, background, location preferences, sponsorship needs, and my tech stack knowledge.
Round 2 was a 1-hour session with a Director of Engineering. We discussed my projects, and then I tackled a coding challenge. I was asked to implement a stack data structure from scratch, without using any built-in collections. It needed to support push, pop operations, and have an unlimited size. I successfully completed this task.
Later, in another technical round (possibly Round 3 given the numbering), I faced a problem where I needed to find the number of occurrences of string s2 as a subsequence in string s1, where the letters in s1 didn't need to be consecutive. I solved this problem using a backtracking approach.
A subsequent Round 3 focused on implementing a HashMap completely from scratch. The requirements included implementing get, put, delete methods, a hash function, and handling collision resolution when multiple keys hash to the same bucket. I completed this by utilizing a LinkedList for collision resolution.
Round 4 was a combined coding and system design round within an hour. For the coding part, I was asked to construct a comparator capable of sorting an array of version number strings in ascending order, providing an example of how ["4.5.1","10","0.99","4.5","1.0.0.1"] should be sorted to ["0.99","1.0.0.1","4.5","4.5.1","10"]. The system design challenge involved designing a system to receive and re-distribute transaction events at a high rate (3000 messages/minute, 2KB each), with strict requirements for reliability, 7-year auditability, multi-distribution (push/pull), and security for producers and consumers. I was encouraged to use a whiteboard and consider any available tools.
Finally, Round 5 was another coding round. The problem required me to construct a method to find all possible unique permutations of a given string, showing examples like permute("abc") resulting in ["abc", "acb", "bac", "bca", "cab", "cba"] and permute("aba") giving ["aba", "aab", "baa"]. Despite clearing most of the rounds, I was ultimately rejected.
Interview Questions (6)
Implement a stack data structure from scratch without using any built-in collections classes. The implementation should support push, pop operations, and have an unlimited size.
Given two strings, s1 and s2, find the number of occurrences of s2 as a subsequence in s1. The letters of s1 do not need to be consecutive to form s2. Implement the getSubsequenceCount function that returns a LONG_INTEGER. Parameters are s1 (STRING) and s2 (STRING).
Implement a hash map data structure from scratch. The implementation should support get, put, and delete operations. It also requires implementing a hash function and handling collision resolution when two values yield the same hash code.
Construct a comparator that can be used to sort an array of version number strings in ascending order. For example, sorting ["4.5.1","10","0.99","4.5","1.0.0.1"] should result in ["0.99","1.0.0.1","4.5","4.5.1","10"].
Design a system to receive and re-distribute transaction events at a rate of approximately 3000 messages per minute, with each message being about 2KB in size. The system must meet the following requirements:
- Reliability: No event that is successfully received can be lost.
- Auditability: Maintain a historical record of every event for 7 years for regulatory purposes.
- Multi-Distribution: Be able to forward events to multiple consumers via both push and pull mechanisms.
- Security: Only authorized producers can insert events, and only authorized consumers can receive events.
Construct a method that, given a string, finds all possible unique permutations of that string. For example:
permute("abc")should return["abc", "acb", "bac", "bca", "cab", "cba"]permute("aba")should return["aba", "aab", "baa"]
Preparation Tips
My preparation involved leveraging my existing 5 years of experience, which included significant work with distributed services, Kafka, and Zookeeper. I also felt confident in my ability to discuss leadership principles (LPs) and had solid experience with both SQL and NoSQL databases, which formed a strong foundation for the technical and behavioral aspects of the interview.