Jobs · Engineering · California

Senior Software Engineer, Infrastructure, High Performance Networking

Google · Sunnyvale, CA · 2 mo ago
On-siteEngineeringFull-time

About the role

The High Performance Networking (HPN) team maintains end-to-end (E2E) ownership of the RDMA (Driver + guest) stack. We deliver scalable, high-performance networking solutions to support a wide range of workloads on Google Cloud. Our team is focused on enhancing the performance of HPC and ML workloads utilizing TCP, and enabling and optimizing HPC/ML workloads to leverage the RDMA capabilities of next-generation Smart NICs.

We Perform comprehensive full-stack optimizations to maximize HPC and ML performance across Google Cloud infrastructure. This spans a wide range, from RDMA/Device driver, kernel optimization, userspace communication libraries (e.g., MPI library, libfabric, NCCL, UCX), all the way to customer's HPC and ML applications. Additionally, we develop advanced solutions that leverage Google Cloud's forthcoming RDMA capabilities, specifically those enabled by Diorite and next-generation Smart NICs.

Responsibilities

  • Learn more about benefits at Google
  • Write and test product or system development code.
  • Participate in, or lead design reviews with peers and stakeholders to decide amongst available technologies.
  • Review code developed by other developers and provide feedback to ensure best practices (e.g., style guidelines, checking code in, accuracy, testability, and efficiency).
  • Contribute to existing documentation or educational content and adapt content based on product/program updates and user feedback.
  • 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.

Requirements

  • Bachelor’s degree or equivalent practical experience.
  • 5 years of experience with software development in one or more programming languages.
  • 3 years of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
  • 3 years of experience with developing large-scale infrastructure, distributed systems or networks, or experience with compute technologies, storage or hardware architecture.

Qualifications

  • Master's degree or PhD in Computer Science or a related technical field.
  • 5 years of experience with data structures and algorithms.
  • 4 years of experience with UNIX/Linux open source developments and communities for kernel/device drivers.
  • 4 years of experience in networking, storage, systems architecture, compilers, operating systems or modeling and analysis.
  • Experience in kernel device drivers.
  • Passion for the following areas: performance debugging and optimization of complex workloads, design of performance tools, compiler design and code optimization, high-performance software development techniques, concurrent programming, or multi-core computer architectures.

Skills

  • Strong understanding of networking protocols, particularly RDMA and TCP/IP.
  • Experience with Linux kernel development and device drivers.
  • Knowledge of MPI, libfabric, NCCL, UCX, and similar communication libraries.
  • Experience with HPC and ML workload optimization.
  • Ability to analyze and optimize complex systems.
  • Strong problem-solving and debugging skills.

Benefits

US: $174000 - $253000 (USD) + 15% bonus target + equity + benefits

Similar jobs