After 1-2 technical phone screens, we send applicants a coding challenge for which they have 48 hours to complete. The coding challenge is representative of some of the work we do (e.g. Given our API, create a D3 visualization of X) and should take applicants several hours to complete.
In submissions we look at everything from overall program structure and approach to applicants' attention to detail and usage of good industry practices.
This coding challenge quickly weeds out applicants that interview well but code poorly and is an efficient way for us to see the quality of work we can expect from them (and conversely, the type of work they can expect to do with us).
After a successful challenge, we bring applicants in to meet the team. At this point, it's largely just about culture fit.