Senior Software Engineer, Infrastructure, High Performance Networking
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+19 more
Job description
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 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 NIC. 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. Behind everything our users see online is the architecture built by the Technical Infrastructure team to keep it running. From developing and maintaining our data centers to building the next generation of Google platforms, we make Googleās product portfolio possible. Weāre proud to be our engineersā engineers and love voiding warranties by taking things apart so we can rebuild them. We keep our networks up and running, ensuring our users have the best and fastest experience possible., * 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.
Google is proud to be an equal opportunity workplace and is an affirmative action employer. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. See also Googleās EEO Policy and EEO is the Law. If you have a disability or special need that requires accommodation, please let us know by completing our Accommodations for Applicants form.
Requirements
Do you have experience in System design for system development?, Do you have a Masterās degree?, * 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., * 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.
Benefits & conditions
The US base salary range for this full-time position is $174,000-$252,000 + bonus + equity + benefits. Our salary ranges are determined by role, level, and location. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your preferred location during the hiring process.
Please note that the compensation details listed in US role postings reflect the base salary only, and do not include bonus, equity, or benefits. Learn more about benefits at Google.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on indeed.comGood distractions
Talks and stories from around this role ā technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Best Countries for Software Engineers
Is Software Engineering Over-Saturated?
How Much FAANG Companies Actually Pay Software Engineers in 2025
7 Important Tips That Every Software Developer Should Know