I applied through a recruiter. The process took 4 weeks. I interviewed at Google in Oct 2014
Interview
I had two back to back phone interviews with different engineers for one hour each. They both asked fairly straightforward questions, which had moderately more difficult follow up questions. I applied for a program for freshman and sophomores in high school, so the questions were tailored to that experience level. Both of the interviewers were nice and personable, even over the phone.
Interview questions [1]
Question 1
I don't recall the exact question, but there was one about binary trees and one about recursion.
I applied for the position online. A recruiter reached out and scheduled two back to back phone interviews. The first one was behavioral and included a code reading portion, and the second one was a technical coding question.
Short essay responses included with resume and then 2 back to back 45 minute interviews, both technical questions. Nothing very complicated (certainly not the level you get for the real software engineering internship) but they're still looking for smart people who absolutely know their stuff. It's important to review your computer science courses and understand fundamentals, but don't expect some crazy question from Leetcode to pop up.
I applied online. The process took 6 weeks. I interviewed at Google
Interview
Applied online and heard back about two weeks later. There were two technical phone interviews, 45 minutes each. Interviewers were super friendly. The interviews were mostly technical, and the second interviewer asked a few questions about my resume.