Applied online, then got a referral from a full time engineer. About two weeks later, got an email with a recruiter to work out a time for a 45 minute phone interview, which got scheduled for 2 weeks later. Phone interview was 2 easy/medium coding questions.
The week after the phone interview, I got an email from my recruiter telling me I got an on-site, which got scheduled about a week and a half after that. The on-site was fun -- one 45 minute interview, same format as phone interview. Plus a tour, lunch, and Oculus Rift demo. One day later I got a call from my recruiter offering me the internship!