I attended a Google interview coaching session yesterday (if you get in touch with a recruiter, they'll send you an link to RSVP for one in session, and I think they're all recorded). It was led by, if I remember correctly, a fairly senior manager whose team was working on machine learning for recruiting, so he had some fairly specific experience with this.<p>Two things he mentioned that stand out for your question: first, Google attempts to hire generalists, or at least "fungible specialists". Three of your five SE interviews will be general CS algorithms questions; the other two are likely to be specialized if you're interviewing for a specialized role. I don't think that it's likely to be different from the other "Software Engineer, Foo" interviews (e.g., "Software Engineer, Front End" or "Software Engineer, Mobile"), where at least one of the remaining two interviews will probably be specific to Foo.<p>Second, he specifically complained about people who show up and say "I want to do machine learning" and then say they have no machine learning experience / background. There are apparently a very small number of teams who will train a bright person how to do ML, but in general you're expected to have some background with it.<p>This seems like the sort of thing you should ask your recruiter (after getting in touch with one) and perhaps ask at a coaching session, if there's one in your city. I am a little genuinely confused that they seem to think their interviews need a coaching session, but hey, at least it's progress.
I interviewed at all the big bay companies (and the seattle one) for machine learning earlier this year and few of the questions were classical machine learning questions. Most of the questions were programming an computation.
Not an employee, but I'm pretty sure that the interview is the same for all engineering roles, unless you're very senior/specialized. I doubt that your interviewers will even know that you're up for a ML position specifically.
They put a bunch of machines in a room and ask you to stand in front of them and teach them something on the whiteboard.<p>So pretty much no difference from a standard Google interview.
I might be wrong but<p>3 General White board coding rounds by SWEs(with some emphasis on data processing appropriate data structures, computations etc)<p>1 or 2 rounds specific to machine learning with some one working in that research area ( 1 or 2 based on the level you are coming in probably)<p>But as someone in the comments thread pointed out recruiter would be the best source
You get one TopCoder problem and the automated DeepCoder robot with q=0 is your first opponent. Once you beat it, they increase q to 1. You have 6 rounds with 1 hour lunch break where they tweak DeepCoder to respond to your thinking better. Once you beat all DeepCoder levels, they hire you and your task is to improve DeepCoder so that it beats you every single time.
Given they've acquired Kaggle, I would imagine if you can solve Kaggle questions you're getting a solid preview of the ML-specific questions they might ask you in addition to the standard data structure/algo and unix questions they'll ask you.
Purely by inference based on ML/MV interactions with various bits of teh Googz, it will depend very much who is asking these questions - the closer you get to the tensor processing unit and its enclosing code, the more you're going to have to really know your stuff - further away in some of the ex-moon shots struggling to survive, I'd personally be surprised if the staff runs a reliable enough A* alg in their own heads to actually get to the room you're seated in - in short, googz is big - closer you get to the core the more hard core I would expect it to be, conversely as you move to the fringes, well that might be what you get :-)
The ideal scenario:<p>They give you an assignment to complete at your pace for a few days, and review your solutions and implementation with a group of your (future?) peers. This takes the form a small Q&A presentation and allows to assess your technical and communication skills.<p>Then, you spend another week as a paid 'freelancer' to do some actual work and interact with your team. At the end of the week you are assessed by your peers and are presented with an offer, in case all went 'well'.<p>The reality is certainly much grimmer (to me anyways).<p>Good luck!
We lost control(reliability of the Algo, understand-ability of the Algo, reproduce-ability of the Algo) on the P in Input Processing Output. Can you write Data filters and Automated Tests to Abstract that problem away?