About The Position

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. The Machine Learning Compiler (MPACT) team in Google Research is developing open-source, retargetable compiler infrastructure in the Low Level Virtual Machines (LLVM) and MLIR frameworks to streamline iterative processor and system co-design for the Google Tensor Processing Unit (TPU) family of processors, and to enable C/C++/Cuda High Performance Computing (HPC) codes to run efficiently on TPUs. Google Research is building the next generation of intelligent systems for all Google products. To achieve this, we’re working on projects that utilize the latest computer science techniques developed by skilled software developers and research scientists. Google Research teams collaborate closely with other teams across Google, maintaining the flexibility and versatility required to adapt new projects and foci that meet the demands of the world's fast-paced business needs.

Requirements

  • Bachelor's degree in Computer Science or equivalent practical experience.
  • 8 years of experience with software development in one or more programming languages (e.g., Python, C, C++, Java, JavaScript).
  • 5 years of experience with compiler development.
  • Experience with LLVM development, modifying LLVM as a contributor.

Nice To Haves

  • Master's degree in Computer Science or equivalent practical experience.
  • Experience with software package management, building packages from RedHat and Debian for deployment, into artifact registries.
  • Experience developing Machine Learning (ML) models in JAX, TensorFlow frameworks or equivalent.
  • Experience with large-scale systems (e.g., HPC) design/management.
  • Experience with MLIR, design and implementation of MLIR based compiler.

Responsibilities

  • Help design and develop a continuous integration and continuous delivery system that manages the building and testing of the software across open source and Google infrastructures.
  • Help build LLVM/(MLIR)-based C/C++/Cuda compiler and simulation tools for Google TPU family of ML accelerators, enabling conventional HPC development for TPUs.

Benefits

  • Health, dental, vision, life, disability insurance
  • Retirement Benefits: 401(k) with company match
  • Paid Time Off: 20 days of vacation per year, accruing at a rate of 6.15 hours per pay period for the first five years of employment
  • Sick Time: 40 hours/year (statutory, where applicable); 5 days/event (discretionary)
  • Maternity Leave (Short-Term Disability + Baby Bonding): 28-30 weeks
  • Baby Bonding Leave: 18 weeks
  • Holidays: 13 paid days per year
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service