The interview process was quick and straightforward. After I submitted my application, a recruiter gave me a call the next day to schedule an initial phone conversation. This call (~15 min) was to give me an overview of the company and the position, and see if we both thought I'd be a good fit.
After that call, he followed up again a couple days later to schedule a technical interview on Google Hangouts. This interview was conducted by two devs and lasted an hour. During the first 10-15 minutes they asked general questions about JavaScript and CSS. Then they asked me to re-create a basic page layout from an image, using HTML, CSS, and JS, using CodePen as a shared coding environment. They gave me about 10-15 minutes to do this. After that, they gave me a sample JSON response from an API (nested arrays and objects) and asked me to write code that matched the keys in one object with the values in another. They also gave about 15 minutes to perform this task. Both devs were cool to talk to and helpful in the process. I didn't know the answers to some of the questions they asked, but they explained if I asked for clarification.
After that interview, I received a call back to schedule an on-site interview later that week. This process lasted about 4 hours, and consisted of several interviews. The first was with two front end engineers, who asked me some more general questions about JavaScript and CSS (how to use vanilla JS to add event listeners to DOM elements, event delegation, AJAX/fetch) and gave me two code samples and asked me what the written code would output. These included calls to console.log nested in setTimeout calls, as well as code with conflicting local and global variable definitions.
After that initial technical interview, the remaining interviews were non-technical and with members of different teams (product, QA, design).
I received a call a few days later (it was a holiday weekend) with a job offer, which I accepted.