Minimum qualifications:
- Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or equivalent practical experience.
- 2 years of experience with software development in C++ programming language, or 1 year of experience with an advanced degree.
- 2 years of experience with data structures or algorithms.
Preferred qualifications:
- Masterβs degree or PhD in Engineering, Computer Science, or a related technical field.
- Experience in modern CPU/ML architecture and micro-architecture.
- Ability to learn coding languages as needed.
- Excellent object-oriented, database design, and SQL skills.
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.
In this role, you will work with system teams and the CPU Architecture team to develop an understanding of the CPU, System on a Chip (SoC), performance metrics, benchmarks/measuring tools, and available optimization knobs. You will define methods and technologies to model CPU performance at different accuracy levels by supporting architectural explorations and decision-making. You will correlate performance projections with measured post-silicon data.The ML, Systems, & Cloud AI (MSCA) organization at Google designs, implements, and manages the hardware, software, machine learning, and systems infrastructure for all Google services (Search, YouTube, etc.) and Google Cloud. Our end users are Googlers, Cloud customers and the billions of people who use Google services around the world.
We prioritize security, efficiency, and reliability across everything we do - from developing our latest TPUs to running a global network, while driving towards shaping the future of hyperscale computing. Our global impact spans software and hardware, including Google Cloudβs Vertex AI, the leading AI platform for bringing Gemini models to enterprise customers.
- Write product or system development code.
- Design, develop, test, deploy, maintain, and improve Central Processing Unit (CPU) software modeling and other software tools.
- Manage project priorities, deadlines, and deliverables.
- Collaborate with hardware and software CPU architecture teams, SOC performance modeling team, and other Google Software teams.