Machine Learning Compiler Software Engineer, TPU Horizontal Scaling in London

Machine Learning Compiler Software Engineer, TPU Horizontal Scaling in London

London Full-Time 60000 - 80000 £ / year (est.) No working from home possible
Google

At a Glance

  • Tasks: Develop and optimise software for large-scale machine learning models using cutting-edge technology.
  • Company: Join Google, a leader in tech innovation and digital transformation.
  • Benefits: Competitive salary, flexible work options, and opportunities for professional growth.
  • Other info: Dynamic team environment with opportunities to switch projects and grow your career.
  • Why this job: Make a real impact on the future of technology and machine learning.
  • Qualifications: Experience in software development, data structures, and algorithms; C++ knowledge preferred.

The predicted salary is between 60000 - 80000 £ per year.

Minimum qualifications:

  • Bachelor’s degree or equivalent practical experience.
  • Typically 2 years of experience with software development in one or more programming languages, or 1 year of experience with an advanced degree.
  • Typically 2 years of experience with data structures or algorithms.

Preferred qualifications:

  • Master's degree or PhD in Computer Science, or a related technical field.
  • Experience in Machine Learning and High Performance Computing (HPC).
  • Experience optimizing programs at distributed scale.
  • Experience in C++.
  • Experience in compilers.
  • Ability to debug and program concurrent/parallel computations.

About the job:

Google's software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. Our products need to handle information at massive scale, and extend well beyond web search. We're looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile; the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google’s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward. With your technical expertise you will manage project priorities, deadlines, and deliverables. You will design, develop, test, deploy, maintain, and enhance software solutions.

Our team develops the Accelerated Linear Algebra (XLA) TPU/GPU parallelizing compiler used to partition, optimize, and run large-scale machine learning models across multiple TPU/GPU accelerators for internal and external customers. The XLA Horizontal Scaling team’s software stack includes the XLA Single Program Multiple Data (SPMD) partitioner, collective and scheduling optimizations, and code generation. Google Cloud accelerates every organization’s ability to digitally transform its business and industry. We deliver enterprise-grade solutions that leverage Google’s cutting-edge technology, and tools that help developers build more sustainably. Customers in more than 200 countries and territories turn to Google Cloud as their trusted partner to enable growth and solve their most critical business problems.

Responsibilities:

  • Write product or system development code.
  • 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 such as Tensor Processing Unit (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.

Machine Learning Compiler Software Engineer, TPU Horizontal Scaling in London employer: Google

At Google, we pride ourselves on being an exceptional employer, offering a dynamic work culture that fosters innovation and collaboration. Our employees benefit from unparalleled growth opportunities, working on cutting-edge technologies in a supportive environment that encourages creativity and problem-solving. Located in a vibrant tech hub, our team enjoys access to world-class resources and the chance to make a significant impact on the future of technology.

Google

Contact Details:

Google Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Machine Learning Compiler Software Engineer, TPU Horizontal Scaling in London

Tip Number 1

Network like a pro! Reach out to folks in the industry, attend meetups, and connect with people on LinkedIn. You never know who might have the inside scoop on job openings or can refer you directly.

Tip Number 2

Show off your skills! Create a portfolio showcasing your projects, especially those related to machine learning and compilers. This gives potential employers a taste of what you can do and sets you apart from the crowd.

Tip Number 3

Prepare for technical interviews by practicing coding challenges and system design problems. Use platforms like LeetCode or HackerRank to sharpen your skills, and don’t forget to brush up on algorithms and data structures!

Tip Number 4

Apply through our website! We love seeing applications come directly from passionate candidates. Tailor your application to highlight your experience with C++, HPC, and any relevant projects to catch our eye.

We think you need these skills to ace Machine Learning Compiler Software Engineer, TPU Horizontal Scaling in London

Software Development
Data Structures
Algorithms
Machine Learning
High Performance Computing (HPC)
C++
Compilers

Some tips for your application 🫡

Show Off Your Skills:Make sure to highlight your programming experience, especially in C++ and any work with machine learning or HPC. We want to see how your skills align with the role, so don’t hold back!

Tailor Your Application:Customise your CV and cover letter to reflect the job description. Use keywords from the listing to show that you understand what we’re looking for. It helps us see you as a great fit right away!

Be Clear and Concise:When writing your application, keep it straightforward. We appreciate clarity, so avoid jargon unless it’s relevant. Make it easy for us to see your qualifications and experiences.

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

Know Your Tech Inside Out

Make sure you brush up on your programming languages, especially C++. Be ready to discuss data structures and algorithms in detail, as these are crucial for the role. Practising coding problems related to concurrent and parallel computations can really help you stand out.

Showcase Your Machine Learning Knowledge

Since the job involves machine learning and high-performance computing, be prepared to talk about your experience in these areas. Bring examples of projects where you've optimised programs at scale, and be ready to discuss the challenges you faced and how you overcame them.

Prepare for Design Reviews

The interview may include discussions around design reviews. Familiarise yourself with common design patterns and be ready to articulate your thought process when it comes to choosing technologies for specific problems. Think about how you would approach scaling machine learning models across TPUs and GPUs.

Demonstrate Your Problem-Solving Skills

Google loves engineers who can tackle new problems head-on. Prepare to discuss how you've managed project priorities and deadlines in the past. Use the STAR method (Situation, Task, Action, Result) to structure your answers and highlight your leadership qualities.