Staff Software Engineer, Linux Kernel and Baseboard Management Controller Architecture

Google Google · Big Tech · Sunnyvale, CA +1

Staff Software Engineer role focused on modernizing Google's Baseboard Management Controller (BMC) software architecture, involving Linux kernel, networking stack, and device drivers for heterogeneous platforms including AI accelerators like TPUs and GPUs. The role requires designing robust software pipelines, ensuring hardware/software integration, and representing Google in industry bodies like the Open Compute Project.

What you'd actually do

  1. 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).
  2. 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.
  3. Partner directly with hardware engineering, accelerator (TPU/GPU) teams, and infrastructure groups to gather requirements, define architectural boundaries, and ensure seamless hardware/software integration.
  4. Architect robust software pipelines to interface with complex board-level topologies using I2C, I3C, SPI, UART, USB, and CANbus.
  5. 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).

Skills

Required

  • software development
  • embedded operating systems
  • testing, and launching software products
  • software design and architecture
  • embedded systems
  • Linux drivers
  • C/C++

Nice to have

  • building, configuring, and modifying embedded Linux platforms
  • device driver development
  • device tree architectures
  • kernel memory management
  • board bring-up
  • driving internal standardization or contributing to industry-standard hardware management specifications (e.g., DMTF, Redfish, PLDM, MCTP)
  • interfacing with and debugging I2C, I3C, SPI, UART, USB, and CANbus
  • 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
  • upstreaming code to Linux Kernel or contributing to industry standards bodies (e.g., DMTF, OCP, Redfish)

What the JD emphasized

  • multi-year effort
  • heterogeneous platforms
  • hardware accelerators like TPUs and GPUs
  • Linux kernel
  • device drivers
  • SoCs
  • hardware engineering
  • accelerator (TPU/GPU) teams
  • hardware/software integration
  • complex board-level topologies
  • open compute project (OCP)
  • industry bodies
  • open boot management framework - infrastructure control protocol (OBMF-ICP)
  • embedded operating systems
  • embedded systems
  • Linux drivers
  • embedded Linux platforms
  • device driver development
  • device tree architectures
  • kernel memory management
  • board bring-up
  • hardware management specifications
  • logic analyzers
  • I2C, I3C, SPI, UART, USB, and CANbus
  • Linux networking stacks
  • network booting (PXE/DHCP)
  • secure installation pipelines
  • upstreaming code to Linux Kernel
  • industry standards bodies