At a Glance
- Tasks: Develop and optimise the TPU compiler for large-scale machine learning models.
- Company: Join Google, a leader in tech innovation and digital transformation.
- Benefits: Competitive salary, diverse culture, and opportunities for career growth.
- Why this job: Make an impact on cutting-edge technology that shapes the future.
- Qualifications: Experience in C++, machine learning, and strong problem-solving skills.
- Other info: Collaborative environment with a focus on diversity and inclusion.
The predicted salary is between 36000 - 60000 £ per year.
Experience driving progress, solving problems, and mentoring more junior team members; deeper expertise and applied knowledge within relevant area.
Bachelor’s degree or equivalent practical experience. 2 years of experience with software development in one or more programming languages, or 1 year of experience with an advanced degree. 1 year of experience with ML infrastructure (e.g., model deployment, model evaluation, data processing, debugging). Experience in C++. Experience with performance, systems data analysis, visualization tools, or debugging.
Preferred qualifications:
- Master's degree or PhD in Computer Science or related technical fields.
- 5 years of experience with data structures and algorithms.
- Experience in Machine Learning and High Performance Computing (HPC).
- Experience optimizing distributed programs at large-scale and experience with compilers and compiler construction.
- Excellent debugging and programming concurrent/parallel computations, while working on accelerators including but not limited to VLIW and vector machines, GPUs, or DSPs.
In this role, you will develop the Accelerated Linear Algebra (XLA) Tensor Processing Units (TPU) parallelizing compiler used to partition, optimize, and run large-scale machine learning models across multiple TPU accelerators for internal Google, Google DeepMind and external customers. You will work on the software stack that includes the partitioner to share work across multiple TPUs, scheduling optimizations, and code generation.
Responsibilities:
- Write product or system development code for the TPU compiler (in C++).
- Participate in, or lead design reviews with peers and stakeholders to decide amongst available technologies.
- Contribute to a compiler which scales-out machine learning models across accelerators like TPU/Graphics Processing Unit (GPU) at Google and Cloud.
- Conduct static and runtime performance analysis of important large-scale production models.
- Design and implement performance optimizations and critical features, which increase the velocity of important production teams.
Google is proud to be an equal opportunity and affirmative action employer. We are committed to building a workforce that is representative of the users we serve, creating a culture of belonging, and providing an equal employment opportunity regardless of race, creed, color, religion, gender, sexual orientation, gender identity/expression, national origin, disability, age, genetic information, veteran status, marital status, pregnancy or related condition (including breastfeeding), expecting or parents-to-be, criminal histories consistent with legal requirements, or any other basis protected by law.
Google is a global company and, in order to facilitate efficient collaboration and communication globally, English proficiency is a requirement for all roles unless stated otherwise in the job posting.
Software Engineer III, TPU Compiler employer: Google Inc.
Contact Detail:
Google Inc. Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Software Engineer III, TPU Compiler
✨Tip Number 1
Network like a pro! Reach out to current or former employees at Google, especially those in similar roles. A friendly chat can give you insider info and maybe even a referral, which can really boost your chances.
✨Tip Number 2
Prepare for technical interviews by brushing up on your coding skills and algorithms. Use platforms like LeetCode or HackerRank to practice. We all know that nailing the technical part is key to landing that software engineer gig!
✨Tip Number 3
Show off your projects! Whether it's on GitHub or your personal website, having a portfolio of your work can set you apart. Make sure to highlight any experience with ML infrastructure or compilers, as that's right up Google's alley.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen. Plus, it shows you're serious about joining the team. Let’s get you that dream job!
We think you need these skills to ace Software Engineer III, TPU Compiler
Some tips for your application 🫡
Show Off Your Skills: Make sure to highlight your experience with C++ and any relevant ML infrastructure work. We want to see how you've tackled problems in the past, so don’t hold back on those examples!
Tailor Your Application: Take a moment to customise your application for this role. Mention specific projects or experiences that align with the responsibilities of developing the TPU compiler. It shows us you’re genuinely interested!
Be Clear and Concise: When writing your application, keep it straightforward. Use clear language and avoid jargon unless it's necessary. We appreciate a well-structured application that’s easy to read.
Apply Through Our Website: Don’t forget to submit your application through our website! It’s the best way for us to receive your details and ensures you’re considered for the role. We can’t wait to hear from you!
How to prepare for a job interview at Google Inc.
✨Know Your Tech Inside Out
Make sure you brush up on your C++ skills and be ready to discuss your experience with machine learning infrastructure. Be prepared to dive deep into your understanding of data structures, algorithms, and compiler construction, as these are crucial for the role.
✨Showcase Your Problem-Solving Skills
Prepare examples from your past experiences where you've successfully solved complex problems or optimised processes. Highlight any mentoring you've done with junior team members, as this shows leadership qualities that Google values.
✨Familiarise Yourself with Google's Tech Stack
Research the technologies and tools used at Google, especially those related to TPU and GPU programming. Understanding how large-scale systems operate will give you an edge in discussions about performance analysis and optimisation.
✨Ask Insightful Questions
Prepare thoughtful questions about the team dynamics, ongoing projects, and future challenges. This not only shows your interest in the role but also demonstrates your enthusiasm for contributing to Google's mission of pushing technology forward.