Summary
I recently interviewed with Qualcomm for an Engineer position. The process included two technical rounds focusing on DSA, OS, and C++ concepts, followed by a hiring manager round covering resume and OOD. I was selected for the role.
Full Experience
Education:BE in ETCE from Tier 1 College
YOE:~1
Previous Company:Top EDA Company
Title:Engineer (C++)
Verdict:Selected
Hi LeetCode Family!
I recently interviewed with Qualcomm for the Engineer position. The process consisted of three elimination based rounds — two technical rounds followed by a hiring manager round.
Round 1 (Medium to Hard Level):
The interview began with a brief introduction, and then the interviewer directly moved into problem-solving. The first question was to find the maximum element in a binary tree. Once I solved that, she followed up with another dsa problem similar to Binary Tree Maximum Path Sum. I was able to solve both problems in about 30 minutes, so she gave me another question similar to Asteroid Collision .
Round 2 (Hard Level):
This round was conducted by a senior engineer and started off unexpectedly with questions from Operating System concepts. I was asked to explain topics like defragmentation, thrashing, and other memory management concepts, there were questions from virtual memory as well. The interviewer deep-dived into each concept. Then we moved into C++, where I was asked about the auto storage class, and to explain virtual functions with an example and describe their use case. After the theory part, I was given a dsa problem — a twisted version of the LRU Cache. I had to explain my logic and write pseudo-code.The interviewer went through it in detail and asked follow-up questions on each part of my implementation. Finally, I was given a problem similar to Reverse Nodes in K Group . We were short on time, so I explained my approach and wrote the pseudo-code.
Round 3 (Medium Level):
The hiring manager started by asking how the previous rounds went and then transitioned into a resume-based discussion. I was asked to explain the projects I had worked on at my previous organization, the role I played, and how I contributed to runtime improvements through my code changes. The conversation then shifted to object-oriented design. I was asked to explain the Singleton class, how to ensure thread safety in its implementation, and to write the code for it. This was followed by a deep-dive discussion on abstraction, virtual classes, vtable, and vptr.
Hope this helps with your preparation! If it did, an upvote would be really encouraging! 🚀💪
Interview Questions (10)
The first question was to find the maximum element in a binary tree.
I was asked to explain topics like defragmentation, thrashing, and other memory management concepts; there were questions from virtual memory as well. The interviewer deep-dived into each concept.
In C++, I was asked about the auto storage class, and to explain virtual functions with an example and describe their use case.
I was given a DSA problem — a twisted version of the LRU Cache. I had to explain my logic and write pseudo-code. The interviewer went through it in detail and asked follow-up questions on each part of my implementation.
I was asked to explain the projects I had worked on at my previous organization, the role I played, and how I contributed to runtime improvements through my code changes.
I was asked to explain the Singleton class, how to ensure thread safety in its implementation, and to write the code for it.
This was followed by a deep-dive discussion on abstraction, virtual classes, vtable, and vptr.
Summary
I recently completed a 6-round interview process, which tested various aspects of my problem-solving, system design, and behavioral skills, including coding challenges, frontend design, API processing, and graph-based problems.
Full Experience
I recently completed a 6-round interview process, and I wanted to share my experience with the LeetCode community!
Each round tested different aspects of my problem-solving, system design, and behavioral skills.
Round 1: Coding Challenge LeetCode Question: Number of Islands Discussed edge cases and optimized the solution.
Round 2: Coding Challenge Problem: Password Generator Implemented a secure password generator with constraints like length, character types, and randomness.
Round 3: Frontend System Design Task: Design a 5-star rating React component Implemented a reusable and accessible rating component with interactive states and animations.
Round 4: Algorithmic Challenge LeetCode Question: "Assume that we already have a function that checks if a sentence is valid. Generate all valid sentences with the given set of words." Used Backtracking + Dynamic Programming to generate valid sentence combinations efficiently.
Round 5: API + Data Processing Task: Given a public API that provides recent match details, generate: A simple match report summarizing the results Player statistics, including performance metrics
Round 6: Behavioral + Graph-Based Coding Question Behavioral Questions:
How do you deal with a strict manager?
How do you handle strict deadlines and unclear instructions?
LeetCode Question: "Given a failing job in a dependency graph, list all the jobs that will fail." Used Topological Sorting / DFS to determine all impacted jobs.
Interview Questions (7)
Implemented the solution for the LeetCode 'Number of Islands' problem.
Implemented a secure password generator with constraints like length, character types, and randomness.
Implemented a reusable and accessible rating component with interactive states and animations.
Assume that we already have a function that checks if a sentence is valid. Generate all valid sentences with the given set of words.
Given a public API that provides recent match details, generate: A simple match report summarizing the results Player statistics, including performance metrics
How do you deal with a strict manager?
How do you handle strict deadlines and unclear instructions?
Given a failing job in a dependency graph, list all the jobs that will fail.
Preparation Tips
Having strong DSA skills helped me in multiple rounds. System design and API handling were crucial for practical problem-solving. The behavioral round tested communication and problem-solving under ambiguity.
Summary
I interviewed with Qualcomm for a Senior Engineer position in Hyderabad in March 2024 and received an offer in early April. However, I ultimately declined the offer to accept a competing offer from Amazon.
Full Experience
Introduction
In March 2024, I had the opportunity to interview with Qualcomm for the position of Senior Engineer in their Display team. With 3.2 years of prior experience as an SDE 2 at a product-based MNC, I was excited to explore this new opportunity.
Application and Initial Contact
I applied through Qualcomm’s career page in late February. Within 10 days, I received a call from a recruiter. The interview process moved swiftly, with the first two rounds scheduled back-to-back on the same day. Surprisingly, there were no written or online assessments.
- Company: Qualcomm
- Position: Senior Engineer
- Team: Display
- Date: March 2024
- Offer Date: 1st week of April 2024
Round 1: Coding (1 hour 10 minutes)
We began with introductions and a discussion about my work and projects for about 10 minutes. For the next 45 minutes, we delved into fundamental C++ and C concepts, including processes, threads, dangling pointers, etc. We covered polymorphism in detail, including types, examples, and code samples. Virtual and friend keywords were also discussed. The technical discussion involved MCQ-style questions on code output, compilation, and run-time errors.
For the coding challenge, I was asked to solve Merge k sorted lists. I wrote the entire solution on a shared whiteboard, followed by a time complexity analysis and code walkthrough.
Round 2: Design (2 hours 5 minutes)
This round started with introductions and a detailed discussion of my current work and projects for about 20 minutes.
Question 1: Low-Level Algorithmic Discussion (1 hour)
I was presented with a scenario involving a CRT display panel and an SoC chipset. Both share a single memory buffer: the SoC writes the next frame (producer), and the panel reads from it (consumer). Assume 120 FPS and a 1ms turnaround time (TAT). In CRT technology, the panel displays frames line by line. Imagine the previous frame showed an "A" and the new frame needs a "V." During line-by-line display, if someone takes a screenshot, it might capture parts of both frames (like "> < "), causing screen tearing. My task was to design an algorithm to address this screen tearing. I presented three distinct solutions, each with its advantages and disadvantages. We had a thorough discussion about synchronization, similar to the reader-writer problem.
Question 2: Low-Level Design (30 minutes)
I was asked to design a text editor that supports up to 10 undo/redo operations.
Initial Assumption: Users cannot edit previously written letters. A follow-up question asked how I would modify the design to allow editing and deleting.
The final five minutes were reserved for any questions I had.
Intermediate Feedback
Within two hours, HR contacted me to inform me of positive feedback and schedule a third round. I requested it to be held the next day.
Round 3 (Hiring Manager) (25 minutes)
The interview began with introductions. While I anticipated a technical round, the hiring manager posed two distinct questions:
Question 1: Door Flip Puzzle
I was given a scenario with N doors, all initially closed. There are also N people numbered from 1 to N.
- Person 1 flips all doors that are multiples of 1.
- Person 2 flips all doors that are multiples of 2.
- ...
- Person
Nflips all doors that are multiples ofN.
Task: Which doors will remain open after all N steps?
I solved this quickly, identifying perfect squares as the answer, providing an example for N = 10, and proving it generally by stating that doors with an odd number of factors will be open.
Question 2: Divisibility Rule of 11
I was asked to explain the divisibility rule of 11. I presented a clear explanation.
The interview was scheduled for 45 minutes but concluded within 25 minutes. The hiring manager provided verbal positive feedback.
Overall Feedback and Result
The next business day, I received a hire via email, and compensation details were finalized within 3-4 days. I humbly declined the offer from Qualcomm, as I had also received a competing offer from Amazon around the same time, which I ultimately accepted.
Interview Questions (5)
Consider a CRT display panel and an SoC chipset. Both share a single memory buffer: the SoC writes the next frame (producer), and the panel reads from it (consumer). Assume 120 FPS and a 1ms turnaround time (TAT). In CRT technology, the panel displays frames line by line. Imagine the previous frame showed an "A" and the new frame needs a "V." During line-by-line display, if someone takes a screenshot, it might capture parts of both frames (like "> < "), causing screen tearing. Design an algorithm to address screen tearing.
Design a text editor that supports up to 10 undo/redo operations.
Initial Assumption: Users cannot edit previously written letters. Follow-Up Question: How would you modify the design to allow editing and deleting?
You are given N doors, all initially closed. There are also N people numbered from 1 to N.
- Person 1 flips all doors that are multiples of 1.
- Person 2 flips all doors that are multiples of 2.
- ...
- Person
Nflips all doors that are multiples ofN.
Task: Which doors will remain open after all N steps?
Explain the divisibility rule of 11.