I applied online. The process took 4 weeks. I interviewed at General Atomics (San Diego, CA) in Dec 2016
Interview
One phone interview then one onsite that lasted about 4-5 hours including a 1 hour technical assessment. Great planning/organization on HR's part and all expenses are paid for the interview process.
The technical assessment consisted of some very easy multiple choice questions and a problem that requires coding in Linux. The problem was incredibly confusing at first but is actually quite easy if you take the time to understand what it is asking.
Study common coding questions and structs in C.
Side note: even if you don't get chosen for a particular role, they can refer you to another department or group that may choose to interview you as well, and it will be a much faster process since your assessment is already on file.
Interview questions [1]
Question 1
Easy stuff like how many bits in a byte, what's missing from this code, etc.
For the actual coding part, study structs if being tested in C!! Memory management important as well.
Initial phone call with HR. Second interview was with one engineer. This interview consisted of reviewing my experience as well as technical questions. Third interview was panel style with a coding assessment provided to me prior to the interview. They asked to explain my code and how I would modify it given various scenarios.
Interview questions [1]
Question 1
General docker and k8s questions.
Time complexity of various data structures.
Initial 30 minute phone screening. Second interview was an hour going over my previous work experience and technical questions that consisted of OOP fundamentals, pointers & references, mutex locks, TCP vs UDP, virtual funcitons
Interview questions [1]
Question 1
How would you troubleshoot HW & SW network communication?
Straight forward - 30 minutes phone screen with behavioral and technical questions on C++.
Followed by 5 hour in-person or virtual interview which included both technical and behavioral questions. Each hour was a different interview with different people.