I applied online. The process took 3 weeks. I interviewed at SpaceX (Hawthorne, CA) in Jun 2013
Interview
I applied via their website. One of their recruiters responded within a couple of days. Next was a 60-minute online multiple-choice quiz covering the basics of C++, C#, and SQL. It had 14 questions, and these could easily be answered in a small fraction of the total time given. I had plenty of time to double- and triple-check my work. Then was a phone interview with their recruiter, in which he asked about some things on my resume and asked me some more technical questions centering on data structures and algorithms. He wasn't a developer himself, but it seemed like their developers had provided these questions. Then were two more phone interviews, each with a different developer on their staff. These were done with a live collabedit.com session where they asked me to develop various algorithms live while on the phone with them.
Interview questions [1]
Question 1
"Write a function implementing the _________ data structure" (various kinds including Stack and Binary Tree). Followed by, "Now rewrite your work without using loops", e.g. recursively.
Phone call with a recruiter discussing SpaceX, its goals, my resume, professional experience, interest in the role, availability to work overtime, and ability to handle additional responsibilities when needed for the position.
Interview questions [1]
Question 1
They asked me to tell them about my professional experience.
Recruiting Call -> Several rounds of technical interview: very fundamental questions that probe your conceptual understanding. Make sure to study / review first principles as it gets theorectical. Quick 30 minute phone calls
Interview questions [1]
Question 1
Tell me about one project to showcase engineering skills
I applied for Software Engineer Data position. It was fine. 1 hour leetcode style interview on codility. The difficulty was medium. I had an alright experience. Was able to get brute force but not optimized solution.