A recruiter initially reached out to me through LinkedIn.
After a few phone call interviews, I moved on to a few remote skills exercises. I didn't interview for a specific position, instead I was told that the position the company thinks you are best suited for is determined through your interview process (whether you're senior or staff level or whatever).
I had two screen-sharing interviews, which were coding exercises where two developers from LinkedIn would give you specific challenges or examples and ask you to solve them / work through them. Each one was about 45 minutes, with 30 minutes of coding and 15 minutes of just questions or introductions or whatnot. The first covered JavaScript, while the second covered HTML and CSS. Even though you're coding in a web interface, the code doesn't compile or actually show UI. I think it's so that you don't get distracted with minutia of making something actually work and instead talk about strategy and overall steps to achieving your goal.
After these first skill assessment interviews, I was flown out to Mountain View to interview at their campus. The on-campus interview was pretty much a full day process. I started off with a brief tour of the office and some discussion about the background of the company with one of the people I had exchanged emails with during the early phases of the process. Then I was taken to a meeting room where the rest of my interviews would take place.
There were six or seven groups of interviews. The first two were general information about the company and about the team. Then there were 4 technical interviews, each one with a pair of developers (one senior, one junior). Each one addressed different aspects of development - CSS, HTML, JS, etc. There was also a lunch interview, which is when you just grab lunch with another developer. Each of these interviews is about the same format as the phone interviews - about 45 minutes each with 30 minutes or so of coding and 15 minutes or so of general questions. Also, the technical challenges are all done on a whiteboard, without a computer.