As above; it starts with a massive take home coding challenge. Basically you're given a very vague problem statement and a small amount of example data (carefully chosen to NOT cover any interesting edge cases), and must come up with an entire solution (design, implementation, API, test cases, code coverage, documentation, everything), all finished to the level you'd expect in production code (ie, full test coverage, edge cases thought about, errors handled, consistent method names, use a logging framework, everything).
Don't be surprised if you fail due to something like "we told you we wanted logs, but we didn't tell you what would be consuming the logs, and you guessed wrong, so the formatting of the log messages isn't quite what we expected". Yes, it's THAT nit picky. And no, you can't ask questions during the process.