NVIDIA interview experience Real time questions & tips from candidates to crack your interview
SDE - 1
NVIDIA
3 rounds | 7 Coding problems
Interview preparation journey
Preparation
Duration: 5 months
Topics: Data Structures, Algorithms, Operating System, Aptitude, OOPS
Tip

Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.

Application process
Where: Campus
Eligibility: Above 7 CGPA
Resume tip

Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.

Interview rounds
01
Round
Medium
Coding Test - Pen and paper
Duration60 minutes
Interview date2 Jun 2015
Coding problem0

There were 4 sections with no negative marking but they had sectional cut-off.
Questions on C/C++, Operating Systems, Data Structures and aptitude were asked.

02
Round
Medium
Coding Test - Pen and paper
Duration30 minutes
Interview date2 Jun 2015
Coding problem2

20 people were shortlisted after the first round. 2 coding questions out of 3 were to be solved in this round.

1. First non repeating character
Easy
15m average time
80% success
0/40
View more
Problem approach

This problem can be solved using the hashing concept. The objective is to run over the string and record how many times each character appears in it in a hash map. Then we run over the string again, this time using the hash map as a reference to see if any of the characters are unique. If the character is unique, return the index.
Time Complexity: O(N)
The above approach requires tw...

View more
2. Total area of overlapping rectangles
Easy
10m average time
90% success
0/40

#### You are given two arbitrary rectangles on a 2-D coordinate plane, which may have an intersecting area. You have to find the net area covered by both the rectangles on the cartesian plane.

View more
Problem approach

As two given points are diagonals of a rectangle. so, x1 < x2, y1 < y2. similarly x3 < x4, y3 < y4.
so, bottom-left and top-right points of intersection rectangle can be found by using formula.
x5 = max(x1, x3);
y5 = max(y1, y3);
x6 = min(x2, x4);
y6 = min(y2, y4);
In case of no intersection, x5 and y5 will always exceed x6 and y5 respectively. The othe...

View more
03
Round
Easy
Face to Face
Duration60 minutes
Interview date2 Jun 2015
Coding problem5

Technical Interview round with questions on OOPS and OS.

1. OOPS Question

What is Polymorphism in C++?

Problem approach

Polymorphism is defined as the ability to take more than one form. It is a feature that provides a function or an operator with more than one definition. It can be implemented using function overloading, operator overload, function overriding, virtual function.

2. OOPS Question

What is malloc and calloc function?

Problem approach

The functions malloc() and calloc() are library functions that allocate memory dynamically. Dynamic means the memory is allocated during runtime (execution of the program) from the heap segment.

Initialization
malloc() allocates a memory block of given size (in bytes) and returns a pointer to the beginning of the block. malloc() doesnâ€™t initialize the allocated memory. If you try to r...

View more
3. OOPS Question

What is a virtual function?

Problem approach

A C++ virtual function is a member function in the base class that you redefine in a derived class. It is declared using the virtual keyword. It is used to tell the compiler to perform dynamic linkage or late binding on the function. A 'virtual' is a keyword preceding the normal declaration of a function. When the function is made virtual, C++ determines which function is to be invoked at the r...

View more
4. OS Question

Problem approach

. Process means any program is in execution. Thread means segment of a process.
2. Process takes more time to terminate. Thread takes less time to terminate.
3. Process takes more time for creation. Thread takes less time for creation.
4. Process also takes more time for context switching. Thread takes less time for context switching.
5. Process is less efficient in term of communic...

View more
5. OS Question

Problem approach

Multithreading is a process of executing multiple threads simultaneously. A thread is a lightweight sub-process, the smallest unit of processing. Multiprocessing and multithreading, both are used to achieve multitasking.
However, we use multithreading than multiprocessing because threads use a shared memory area. They don't allocate separate memory area so saves memory, and context-switching...

View more
Start a Discussion
Similar interview experiences
SDE - 1
2 rounds | 8 problems
Interviewed by NVIDIA
1600 views
Processing Executive
2 rounds | 6 problems
Interviewed by NVIDIA
999 views
Software Engineer
2 rounds | 2 problems
Interviewed by NVIDIA
2918 views
SDE - 1
2 rounds | 2 problems
Interviewed by NVIDIA
1812 views
Companies with similar interview experiences
SDE - 1
1 rounds | 2 problems
Interviewed by Tata Consultancy Services (TCS)
0 views