Software Engineer Iii, Infrastructure, Persistent Disk Storage

Google Google · Big Tech · Sunnyvale, CA +1

Software Engineer III, Infrastructure, Persistent Disk Storage at Google. Develops next-generation technologies for massive-scale information handling, focusing on distributed computing, large-scale system design, networking, and data storage. Responsibilities include writing product/system development code, participating in design reviews, reviewing code, triaging issues, and debugging. Requires a Bachelor's degree, 2 years of experience in infrastructure/distributed systems/networks or compute/storage/hardware architecture, 2 years of software development experience (or 1 year with advanced degree), debugging experience, and C++ proficiency. Preferred qualifications include a Master's/PhD, data structures/algorithms experience, Linux/networking familiarity, and knowledge of storage technologies (file systems, SSDs, protocols) or networking technologies.

What you'd actually do

  1. Write 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

  • Bachelor's degree or equivalent practical experience
  • 2 years of experience with developing large-scale infrastructure, distributed systems or networks, or experience with compute technologies, storage or hardware architecture
  • 2 years of experience with software development or 1 year of experience with an advanced degree in an industry setting
  • Experience with debugging and troubleshooting software issues
  • Experience with C++ coding language

Nice to have

  • Master's degree or PhD in Computer Science or related technical fields
  • 2 years of experience with data structures and algorithms
  • Experience developing accessible technologies
  • Familiarity with Linux internals and networking
  • Knowledge related to storage technologies like file systems, I/O scheduling, caching
  • Understanding of storage systems along with experience with SSDs and storage protocols (NVMe, NVMeOF, SCSI) or networking technologies (RoCE, RDMA)