Is hybrid: No
Is remote: No
Employer: Google
Minimum qualifications:
- Bachelor’s degree or equivalent practical experience.
- 5 years of experience with software development in C++ or Rust.
- 3 years of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
- 1 year of experience using or developing AI tooling for software development.
Preferred qualifications:
- Master's degree or PhD in Computer Science or related technical field.
- 5 years of experience with data structures and algorithms.
- 1 year of experience in a technical leadership role.
- Experience developing accessible technologies.
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.
Rust is a modern programming language for building memory safe software that can match C++ in performance and resource efficiency. It's a critical component of Google's long-term vision to increase adoption of memory safe languages across the company.
This is an ambitious initiative, now supported by the Core Innovation Fund. RustShift accelerates Google’s migration to Rust by leveraging AI to automate the translation of C/C++ codebases. As a member of RustShift, you will be contributing to a critical foundation for Google’s future, ensuring that we can scale memory safety rapidly and efficiently while maintaining the performance, reliability, and usability our products demand.
We empower Googlers to be productive by providing developer tools, services, and support for the languages that underpin Google's core products and services.
Responsibilities
- Develop and refine agentic workflows that automate the large-scale migration of C/C++ codebases to idiomatic, memory-safe Rust.
- Collaborate with the wider Rust team on C++/Rust interop, developer tooling, and AI benchmarks. Design multi-agent harnesses for automated code translation, self-review, verification, and performance analysis.
- Design strategies for evaluating the output quality of agentic code generation, automatically distilling eval examples where the tooling fails today, and fixing quality problems. Implement advanced verification workflows, including differential fuzzing and formal verification, to guarantee bit-identical behavior with legacy 3P C/C++ libraries.
- Optimize AI-generated Rust code for performance and resource efficiency, leveraging benchmarks to guide translation, then level-up these optimizations into the tooling.
- Collaborate with key teams and individuals in the AI and programming language spaces to evolve our translation tooling, and incorporate the latest techniques.
Google is proud to be an equal opportunity workplace and is an affirmative action employer. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. See also
Google's EEO Policy and
EEO is the Law. If you have a disability or special need that requires accommodation, please let us know by completing our
Accommodations for Applicants form.