A non technical phone interview with hiring manager
One onsite technical interview with hiring manager which included 2 technical questions.
One online technical interview took 2 hours with hiring team lead which included 3 technical questions
Interview questions [1]
Question 1
One logical question and one leetcode style quesiton
I applied online. The process took 2 weeks. I interviewed at NVIDIA (Santa Clara, CA) in Mar 2016
Interview
They use a poll of applications, it is not about very specific positions with posts that are expiring, it is not dynamic like in the case of other companies. If you apply to several job openings and are called for an interview, they won't give you the specific number of the job opening.
Interview questions [1]
Question 1
In most cases you need to have some experience with CUDA. If you want to increase your chances of getting a job offer you need to know very well about linked lists. We used the collabedit.com for the interview. It is like a chat but for coding. I got the following question on the screen of collabedit:
// There is a chunk of memory in the kernel address space represented by kernelResource and an API exists to clear it. An IOCTL path exists to take a request from user-mode and using O/S services eventually dispatches to API_ZeroResource. From a security perspective what concerns do you have with this implementation? How would you fix them?
//
// KERNEL
//
BYTE kernelResource[10] = {0};
int API_ZeroResource( in_params *pParams )
{
if (pParams->offset + pParams->length > sizeof(kernelResource))
return ERR_INVALID_LIMIT;
memset(kernelResource + pParams->offset, 0, pParams->length);
return 0;
}
//
// USER
//
void ZeroResource()
{
in_params params = { ??? };
// an ioctl path exists to call API_ZeroResource
ioctl( CMD_ZeroResource, ¶ms );
}
Had a technical interview of 2 hours where they told me a little bit about the job, asked me to introduce myself, asked me about a project I did, and then there was a coding question.
Interview questions [1]
Question 1
Asked me to explain about a project I did in university.
A typical software engineering coding interview focuses on problem-solving under time pressure. Candidates are usually given one or more algorithmic problems similar to those found on LeetCode. The interviewer evaluates data structures, algorithm selection, code correctness, time and space complexity analysis, communication clarity, edge-case handling, and debugging ability. Interviews often begin with clarifying questions, followed by writing executable or near-executable code on a shared editor or whiteboard. Strong candidates explain trade-offs, optimize incrementally, test thoughtfully, and remain calm while reasoning through unfamiliar problems.