A recruiter reached out to me on LinkedIn and set up a phone interview with the hiring manager. The phone interview was easy, mostly covering my background and previous projects. The main open-ended question was: if you received a uC board and it was not working, walk through all the steps to debug, both hardware and software, and how you would debug UART.
They then invited me for a 4-hour onsite interview with five people, including one person from HR.
The interviews were intense and all technical. All interviewers were polite and professional. Since I signed a paper, I cannot provide exact questions.
First interview: Lots of C programming questions, mostly pointers and structs.
Second interview: I was given the datasheet of an I2C device and questioned on how the device works and how to use it, including writing an API.
Third interview: Lots and lots of C programming, covering strings and memory management. You should be proficient in C to answer all the questions, and some basic networking questions, like router vs. switch and VLAN.
Fourth interview (with the manager): Create a specific malloc function.
Fifth interview: Doubly linked list operations (insertion, deletion, search), implemented in C. The interviewer did not know what a double pointer was or where to use it. Some questions were about Linux, the kernel, mutexes, and semaphores.
Finally, I met with an HR person.
The reason I am giving a negative rating to this interview experience is that they never contacted me after the onsite interview.
Mutex and Semaphores
The following metrics were computed from 1 interview experience for the Palo Alto Networks Staff Software Engineer role in Sunnyvale, California.
Palo Alto Networks's interview process for their Staff Software Engineer roles in Sunnyvale, California is extremely selective, failing the vast majority of engineers.
Candidates reported having very negative feelings for Palo Alto Networks's Staff Software Engineer interview process in Sunnyvale, California.