Usually for senior+ SWE onsites there is a mix of LC + System Design. What is the equivalent for System Design / Non-LC for Senior+ AR/VR Unity Engineer / Prototyper interviews? Is it still System Design with a 3D / XR theme? Or is there something else, such as OOD, 3D Math Algorithm, XR product design, Unity bug bash / share screen? In particular, would love to know for these companies: Snap Apple Niantic Microsoft Google Facebook Reality Labs Unity Thanks in advance to anyone who is willing to share their experience and knowledge! TC: 90K YOE: < 1 #Virtualreality #augmentedreality #AR #VR #apple #snap #niantic #unity #microsoft #google #facebook
I've worked in AR / VR / XR for 7 years doing Unity prototyping, between product design, user experience research, and software engineering. I've interviewed with Apple, Facebook, Snap, Niantic, Unity, and a few others. It really depends on the role, you should carefully read the job description and requirements then focus on those topics. It's tricky though, because Unity has a somewhat large surface area in terms of topics. So during a technical interview someone might ask you the standard "cracking the coding interview" types of questions about algorithms. Or they might ask you something extremely basic like how to loop through all children of a game object and disable some that have a certain script on them. Everyone has a different perspective on what's important information to know about Unity, and not everyone is a good interviewer. So my experience has been extremely diverse interviewing for jobs. Your best bet like I said is to focus on what the job description is asking for and make sure you're 100% confident in those areas. Then make a list of things you know you lack information on, and think someone might ask you, then study those. For a generalist role you might be asked questions like: What's a dot product, a cross product, how do you use them to determine relationships between objets in 3D space and manipulate them. You might be expected to know the underlying equations for more senior roles. How does the Unity rendering pipeline work, what are the differences between all of the available pipelines. How do objects go from world space to screen space, explain camera projection matrices. General C# stuff like what's the difference between classes, structs, and interfaces. Heap and Stack memory, memory leaks, and garbage collection. It's helpful if you know Big O notation and can solve the general programming quiz questions too. They might ask about your experience programming shaders, how to optimize them, whats the difference between vertex and fragment shaders. Also finally, you should find someone on social media or linkedin with more years of experience in the kind of job you're applying for to give you a mock interview. That kind of thing helps a lot if someone will spare the time for you TC: 400k YOE: 7
May I ask how you prepared for AR at Apple?