Senior Smart Nic Software Engineer, Linux Networking

Google Google · Big Tech · Raleigh, NC +2

Senior Software Engineer focused on Smart NICs and Linux Networking for Google Cloud infrastructure. The role involves developing next-generation security protocols, implementing and validating system solutions, and contributing to Linux kernel network development. Requires significant experience in C/C++, Linux kernel development, and large-scale infrastructure.

What you'd actually do

  1. Develop a next-generation PSP security protocol solution for Google networks with smart NICs.
  2. Implement and execute testable system solutions; conduct validation of behavior and suitability of prospective hardware units, prototypes, emulations, or simulations for use in the Google infrastructure.
  3. Help with upstreaming and Linux kernel network development.
  4. Triage product or system issues and debug/track/resolve by analyzing the sources of issues and the impact on hardware, network, or service operations and quality.
  5. Participate in, or lead, design reviews with peers and stakeholders to decide amongst available technologies.

Skills

Required

  • software development in C or C++
  • Linux kernel development
  • Linux kernel subsystems maintenance
  • resolving kernel rebase issues
  • developing large-scale infrastructure
  • distributed systems
  • networks
  • compute technologies
  • storage
  • hardware architecture
  • Unix/Linux operating systems internals and administration
  • networking
  • debugging/troubleshooting

Nice to have

  • data structures and algorithms
  • building network software solutions
  • hardware network pipelines
  • technical leadership role
  • Linux kernel (building and configuring Linux kernels for embedded systems)
  • kernel internals: virtual memory, interrupt handling, device drivers
  • networking protocols
  • network virtualization
  • kernel programming

What the JD emphasized

  • 5 years of experience with software development in C or C++
  • 5 years of experience with Linux kernel development, and linux kernel subsystems maintenance, including experience resolving kernel rebase issues.
  • 3 years of experience with developing large-scale infrastructure, distributed systems or networks, or experience with compute technologies, storage or hardware architecture.