Software Engineer, Kernel and Firmware, Silicon Engineering
Summary
Google is hiring a kernel and firmware engineer for its Silicon Engineering team in Bengaluru. Day to day you design, implement, and validate firmware and Linux device drivers for next-generation smart devices, optimizing power and performance on Google's custom hardware using C, embedded/RTOS systems, and SoC architectures.
We are a vertically integrated team spanning from hardware through applications.
As a Software Engineer, Kernel and Firmware, Silicon, you will work on hardware and software.
- Design a software that can ultimately delight our application developers, and that can let them make use of hardware accelerators seamlessly and in a timely manner.
- Implement and validate firmware and Linux drivers for optimal power consumption and performance.
- Design, development, and test embedded software drivers for the next generation of smart devices.
Minimum qualifications:
- Bachelor’s degree or equivalent practical experience.
- 1 year of experience in development, testing and deployment of consumer electronics/embedded systems.
- 1 year experience with embedded programming in C.
- Experience with embedded systems, kernel, Linux, Real-Time Operating System (RTOS) or firmware, device driver.
Preferred qualifications:
- Master's degree or PhD in Computer Science or a related technical field.
- Foundation/experience in Electrical, Electronics or Computer streams with competencies in Embedded domain, data structures and algorithms, and software design.
- Experience working closely with hardware designers and reading schematics.
- Experience with ARM or other low-power System on a Chip (SoC) architectures, memory system, fabric, Linux kernel, device drivers etc.
- Experience with interface protocols (e.g., USB, SPI, I2C, UART, UFS, Peripheral Component Interconnect Express (PCIe)), power management, system integration, software stacks, drivers.