Qualcomm Software Engineer Interview Experience (On Campus)
Qualcomm visited NITK during the COVID -19 pandemic, around 500 students appeared for the test.
The test Pattern is as follows:
Round 1: Written Test ( Aptitude Section (20 questions), C/C++/OOPS/Java Section (20 questions), Technical Section (including hardware-level questions)(20 questions) ) (+1 for correct answer and -0.25 for wrong answer)
Around 58 students shortlisted for Interviews. The interview was on Microsoft Teams and Hackerrank codepair.
Round 2: First Technical Interview Round (45 mins but for me, it went for 1 hour 10 mins) (Interviewer was from embedded systems)
Asked about my project. (Luckily he didn’t cross-question me on my projects since I was answering very briefly)
He asked me whether I am familiar with OS concepts and asked questions as follows:
- What is Paging?
- About Page Table entries and Page table size and what happens when CPU requests for a page, how page table is useful?
- Then he asked about spinlocks and process synchronization and some discussion on how semaphores work and deadlock and PCB attributes and all related stuff.
Then since I wrote Data Structures as my skill, he asked me to write a code on where and how volatile keyword in C is useful in both read and write Environment?
Answer: For Reading environment, I wrote code to take a file as an input in and stored in a volatile keyword to check for hardware interrupts and,
For Write Environment, I used mutex variables and threads to code and explain the change of behaviour during process synchronization. (he was impressed with my answers).
Then he asked how will you identify buffer overflow if I multiply two integers.
Then he asked about the little-endian and big-endian systems and write a code to identify whether it is big-endian or little-endian.
Initially, I proposed using shift operators, but he explained that it won’t work. So Luckily I could come up with storing numbers as hex values in strings and check from left and right and coded my solution.
Then we moved to structures and unions, he wrote a sample code and asked what will be the size of the structure and union and what is structure padding and how will you avoid structure padding?
Answer: arranging the variable declaration example (change declaration of variable 32 bits + 8 (padding 24) bits + 32 bits to 8 bits + 32 bits + 32 bits). He was impressed because this is an actual method instead of using __attribute__((packed)) this method is actually good.
In my opinion, it was okay to good and got the next round invitation within an hour.
Round 2: Second Technical Round: (1 hour but for me it completed in 45 mins) (Interviewer from embedded systems background)
Questions about other project and internship experience and what was your role and simple questions based on that.
He saw my last interview remarks and told since you are good with data structures write a code to reverse a linked list full functional code with all test cases covered and with the main function. He will just pass integer values as input and output must be in reversed order.
I was very happy and I completed the code in like 7-8 minutes (He was impressed).
Then he asked me for a puzzle. I was very happy since it was extremely easy for me. (Note: For others, puzzles were challenging and few got rejected just because of puzzles so don’t take it lightly)
After 6 hours
Final HR Round:(10 mins but for me, it completed in 4 mins)
- Introduce yourself.
He noted that I was applying for the position and software background and explained to me humbly you will join any team based on the needs so don’t hope too much and location will be Hyderabad/Bangalore and you must be flexible with everything. I agreed. He asked do you have any questions for me and I replied No.
Finally, 12 got offers for the FTE role.
Overall it was a good experience and it was day zero company so I was pretty much happy with my performance.
Suggestions: Know about your Interviewer. Be thorough with OS concepts and C programming. Just follow Ravindra Babu Videos for OS theory and use Geeksforgeeks platform to actually understand how things are implemented.
Just a short background about me:
In 2018, I was rejected by some company in 2019 I appeared for the gate and got into NITK, and 2020 I cracked Qualcomm that too day zero company. So always believe in yourself and do let your fears and disappointment overcome you.
I thank GeeksforGeeks for this success.
Please Login to comment...