Software Engineer III, Infrastructure, Infra Spanner
About the role
MINIMUM QUALIFICATIONS:
- Bachelor’s degree or equivalent practical experience.
- 2 years of experience programming in C++, or 1 year of experience with an
advanced degree in an industry setting.
- 2 years of experience designing and developing distributed databases or
storage systems.
- Experience in performance analysis, debugging, and optimization for
distributed or low-level systems.
- Experience with concurrency, multithreading and synchronization.
PREFERRED QUALIFICATIONS:
- Master's degree or PhD in Computer Science or a related technical field.
- Experience with database internals and diagnosing of issues such as memory
leaks, data corruption, database performance and tuning.
- Experience with transactional database systems.
- Understanding of distributed computing concepts, consensus algorithms (e.g.,
Paxos).
ABOUT THE JOB:
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.
Spanner Batch Team empowers customers to perform large-scale data processing
against their Spanner databases efficiently, reliably, and without impacting
live transactional workloads. Key initiatives include enhancing efficiency of
writes by developing improved mechanisms for read-modify-write operations,
creating more performant bulk data loading pathways(essential for emerging AI/ML
workloads), introducing advanced mutation semantics and data life-cycle
management features. These efforts collectively aim to strenthen Spanner as a
comprehensive platform for both online transactional systems and offline
large-scale data processing.
We are looking for Software Engineers with an interest and significant systems
experience to solve critical problems related to Spanner availability and
scale.Google Cloud accelerates every organization’s ability to digitally
transform its business and industry. We deliver enterprise-grade solutions that
leverage Google’s cutting-edge technology, and tools that help developers build
more sustainably. Customers in more than 200 countries and territories turn to
Google Cloud as their trusted partner to enable growth and solve their most
critical business problems.Individual pay is determined by factors including
job-related skills, experience, and relevant education or training.
US: $147000 - $210000 (USD) + 15% bonus target + equity + benefits
Learn more about benefits at Google
[https://www.google.com/about/careers/applications/benefits/].
RESPONSIBILITIES:
- 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.
Responsibilities
- 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.
- 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.
Qualifications
- Bachelor’s degree or equivalent practical experience.
- 2 years of experience programming in C++, or 1 year of experience with an advanced degree in an industry setting.
- 2 years of experience designing and developing distributed databases or storage systems.
- Experience in performance analysis, debugging, and optimization for distributed or low-level systems.
- Experience with concurrency, multithreading and synchronization.
- Master's degree or PhD in Computer Science or a related technical field (preferred).
- Experience with database internals and diagnosing of issues such as memory leaks, data corruption, database performance and tuning (preferred).
- Experience with transactional database systems (preferred).
Benefits
- 15% bonus target
- equity
- health benefits
Skills mentioned
About Google
A problem isn't truly solved until it's solved for all. Googlers build products that help create opportunities for everyone, whether down the street or across the globe. Bring your insight, imagination and a healthy disregard for the impossible. Bring everything that makes you unique. Together, we can build for everyone. Check out our career opportunities at goo.gle/3DLEokh