Summary
I recently went through the GoDaddy interview process for a Software Engineer Level 1 role. After successfully clearing the Online Assessment, I was unfortunately rejected following the second technical interview round.
Full Experience
My interview journey for the SWE-1 position at GoDaddy began with an Online Assessment. The OA comprised a SQL question with a 5-minute timer, two coding problems of medium difficulty (one involving dynamic programming and another an array-based pattern recognition task), and 5 aptitude questions. I managed to complete the 1-hour assessment in about 30 minutes and was subsequently shortlisted.
The second stage was a Technical Interview. The interviewer immediately proceeded with questions, skipping introductions. I was given an easy linked list problem, which I solved quickly in just two minutes. Following this, the discussion shifted to broader topics including system design, Object-Oriented Programming (OOPs) concepts, Operating Systems (OS), Database Management Systems (DBMS), and Computer Networks. Specific conceptual questions covered what happens when you type 'google.com' into a search engine, various types of caching mechanisms, and the implications when a server fails to find an IP address locally. Regrettably, I was rejected after this round, which meant I did not proceed to the third technical interview.
Interview Questions (3)
Describe in detail the complete sequence of events and technologies involved from the moment you type 'google.com' into your browser and press Enter, until the Google homepage is displayed.
Explain what a cache is, why it's used, and discuss various types of caching mechanisms (e.g., web caching, database caching, CPU caching) along with their principles and trade-offs.
What actions or implications arise when a server attempts to resolve an IP address locally but is unable to find it within its local network or configuration?
Summary
I interviewed for an SDE 2 position at GoDaddy in Pune (Remote) in March 2025 and received an offer after 3 rounds covering behavioral, frontend (React), and backend (API Design).
Full Experience
Current Status
Company: Startup Position: SDE 2 Location: Remote Current YOE: 3.5 yrs
Interview Details
Company: GoDaddy Position: SDE 2 Rounds: 3 (Behavioral + 2 Technical) Location: Pune (my team will be wokring remote)
Round 1: Behavioral + Culture Fit (30-45 mins)
A discussion with the Hiring Manager about:
- Background & past experience
- Team culture & collaboration
- Challenges faced in previous roles
Round 2: Technical 1 (React + Frontend) (1 hour)
Problem: Build a Movie Search Page in React.
- Fetch paginated results from an API.
- Implement search, pagination, and IMDB links.
Topics Covered:
- API calls & pagination
- State management in React (useState, useEffect)
- Performance optimizations
Follow-ups:
- How would you handle large datasets efficiently?
- How would you improve the UX?
- How would you structure this for production?
Round 3: Technical 2 (Backend + API Design) (1 hour)
Problem: Find the fastest marathon runner
- API was paginated, so we needed an efficient way to fetch data.
- Consider rate limits & failure handling.
Topics Covered:
- Handling paginated API responses
- Optimizing for performance & rate limits
- Error handling & retries
Follow-ups:
- How would you optimize API calls for large data?
- How do you handle API failures in production?
- What if the API had strict rate limits?
Compensation Details - https://leetcode.com/discuss/post/6599578/godaddy-offer-sde2-pune-remote-by-priya_-m0to/
Interview Questions (3)
A discussion with the Hiring Manager about:
- Background & past experience
- Team culture & collaboration
- Challenges faced in previous roles
Problem: Build a Movie Search Page in React.
- Fetch paginated results from an API.
- Implement search, pagination, and IMDB links.
Topics Covered:
- API calls & pagination
- State management in React (useState, useEffect)
- Performance optimizations
Follow-ups:
- How would you handle large datasets efficiently?
- How would you improve the UX?
- How would you structure this for production?
Problem: Find the fastest marathon runner
- API was paginated, so we needed an efficient way to fetch data.
- Consider rate limits & failure handling.
Topics Covered:
- Handling paginated API responses
- Optimizing for performance & rate limits
- Error handling & retries
Follow-ups:
- How would you optimize API calls for large data?
- How do you handle API failures in production?
- What if the API had strict rate limits?
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.