
Staff Software Engineer, Linux Kernel and Baseboard Management Controller Architecture
Required skills
- Linux Kernel
- Baseboard Management Controller
- Architecture
- embedded operating systems
- software design
- software architecture
- embedded systems
- Linux drivers
- C/C++
- device drivers
Nice to have
- embedded Linux platforms
- hardware diagnostic tools
- silicon-to-software bugs
- open compute project
Role summary
Google is seeking a Staff Software Engineer to lead the modernization of its next-generation Baseboard Management Controller (BMC) software architecture. This role involves designing and developing Linux kernel, networking stack, and installation systems for BMCs, optimizing device drivers, and ensuring seamless hardware/software integration across heterogeneous platforms. The engineer will also represent Google in industry bodies like the Open Compute Project, contributing to standardization efforts. This position requires extensive experience in embedded systems, Linux kernel development, software architecture, and hardware interfaces, with a focus on driving innovation in AI and Infrastructure at Google's massive scale.
Minimum qualifications:
- Bachelor's degree or equivalent practical experience.
- 8 years of experience in software development.
- 5 years of experience in working with embedded operating systems.
- 5 years of experience in testing, and launching software products.
- 3 years of experience with software design and architecture.
- Experience with embedded systems, Linux drivers, C/C++.
Preferred qualifications:
- Experience building, configuring, and modifying embedded Linux platforms. Track record in device driver development, device tree architectures, kernel memory management, and board bring-up.
- Experience driving internal standardization or contributing to industry-standard hardware management specifications (e.g., DMTF, Redfish, PLDM, MCTP).
- Experience interfacing with and debugging I2C, I3C, SPI, UART, USB, and CANbus.
- Proficiency in hardware diagnostic tools (logic analyzers, I2C, SPI protocol analyzers, oscilloscopes) to root-cause silicon-to-software bugs.
- Understanding of Linux networking stacks, network booting (PXE/DHCP), and secure installation pipelines.
- Track record of upstreaming code to Linux Kernel or contributing to industry standards bodies (e.g., DMTF, OCP, Redfish).
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.
The AI and Infrastructure team is redefining what’s possible. We empower Google customers with breakthrough capabilities and insights by delivering AI and Infrastructure at unparalleled scale, efficiency, reliability and velocity. Our customers include Googlers, Google Cloud customers, and billions of Google users worldwide.
We're the driving force behind Google's groundbreaking innovations, empowering the development of our cutting-edge AI models, delivering unparalleled computing power to global services, and providing the essential platforms that enable developers to build the future. From software to hardware our teams are shaping the future of world-leading hyperscale computing, with key teams working on the development of our TPUs, Vertex AI for Google Cloud, Google Global Networking, Data Center operations, systems research, and much more.
Individual pay is determined by factors including job-related skills, experience, and relevant education or training.US: $207000 - $300000 (USD) + 20% bonus target + equity + benefits
Learn more about benefits at Google.
Responsibilities:
- Design and lead the multi-year effort to modernize Google’s next-generation Baseboard Management Controller (BMC) software architecture, ensuring scalability across heterogeneous platforms (Compute, Storage, hardware accelerators like TPUs and GPUs).
- Own the Linux kernel, networking stack, and installation systems for the BMC. Develop, debug, and optimize device drivers and core kernel subsystems across multiple generations of ARM-based or custom SoCs.
- Partner directly with hardware engineering, accelerator (TPU/GPU) teams, and infrastructure groups to gather requirements, define architectural boundaries, and ensure seamless hardware/software integration.
- Architect software pipelines to interface with complex board-level topologies using I2C, I3C, SPI, UART, USB, and CANbus.
- Represent Google in the open compute project (OCP) and other industry bodies. Lead the definition, standardization, and internal adoption of the open boot management framework - infrastructure control protocol (OBMF-ICP).
Similar roles
Solution Product Manager, Google Distributed CloudGoogle · Sunnyvale, CA · Onsite
Global Process Manager, Compliance, Sanctions OperationsGoogle · Austin, TX · Onsite
Software Engineer IIPariveda · Dallas, TX · Hybrid- Senior Software Engineer, DatabaseInfluxData · Remote · Remote
- Software Engineering Intern, Frontend (Summer 2027)Notion · New York, NY · Hybrid
Lead Software Engineer - Enterprise AI Services & AgentsWellmark Blue Cross and Blue Shield · Des Moines, IA · Hybrid
