Senior Software Engineer, Infrastructure

Google Google · Big Tech · Sunnyvale, CA +1

Google is seeking a Senior Software Engineer, Infrastructure to work on next-generation technologies that manage information at a massive scale. The role involves developing, testing, and reviewing product or system development code, contributing to design reviews, triaging issues, and debugging. The position requires experience in software development, testing, system design, large-scale infrastructure, distributed systems, and C++ programming, with a focus on Linux kernel experience.

What you'd actually do

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

Skills

Required

  • software development
  • C++
  • object-oriented programming
  • templates
  • Standard Template Library (STL)
  • Linux kernel
  • large-scale infrastructure
  • distributed systems
  • networks
  • compute technologies
  • storage
  • hardware architecture
  • software design
  • software architecture
  • testing
  • system design

Nice to have

  • Master's degree
  • PhD
  • Computer Science
  • data structures
  • algorithms
  • technical leadership
  • accessible technologies

What the JD emphasized

  • 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
  • Experience developing software applications using the C++ programming language and with object-oriented programming, templates, and the Standard Template Library (STL)
  • Experience working on the Linux kernel