A line of code can be many things – an amazing feature, a beautiful UI, a transformative algorithm. The faster this line of code reaches millions of users, the sooner it impacts their lives. As a Software Engineer, Tools and Infrastructure, you will be at the heart of Google’s engineering process building software that empowers engineering teams to develop and deliver high quality products quickly. We are focused on solving the hardest, most interesting challenges of developing software at scale without sacrificing stability, quality, velocity or code health.
We ensure Google’s success by partnering with engineering teams and developing scalable tools and infrastructure that help engineers develop, test, debug and release software quickly. We impact thousands of Googlers and billions of users by increasing the pace of product development and ensuring our products are thoroughly tested. We are champions for code health, testability, maintainability and best practices for development and testing.
Having access to all of Google’s platforms and vast compute resources provides a unique opportunity to grow as an engineer. We typically work in small, nimble teams that collaborate on common problems across products and focus areas. As a result, the exposure to this broad set of problems provides diverse technical challenges as well as accelerated career growth.
As a Software Engineer you’ll build tooling around development frameworks, stream video evaluation and monitoring, backend test infrastructure, and performance measurement and optimization. You will work on complex projects with software and technology stacks – a great opportunity to craft and shape novel systems from the ground up.
Google’s mission is to organize the world’s information and make it universally accessible and useful. Our Hardware team researches, designs, and develops new technologies and hardware to make our user’s interaction with computing faster, more powerful, and seamless. Whether finding new ways to capture and sense the world around us, advancing form factors, or improving interaction methods, our Hardware team is making people’s lives better through technology.
- Lead/contribute to Engineering efforts from planning and organization, to execution and delivery to overcome complex Engineering challenges in tools and testing.
- Design and build advanced automated testing frameworks, and infrastructure to help Engineering teams measure and increase their velocity.
- Manage adoption of best practices in code health, testing and maintainability.
- Analyze and decompose complex software systems and collaborate with and influence others to improve the overall design.
- BS degree in Computer Science or related technical field, or equivalent practical experience.
- Relevant experience, including development and/or test automation experience.
- Master’s or PhD degree in Computer Science or related technical field.
- Knowledge of Unix/Linux environments.
- Knowledge of internet technologies.
- Excellent scripting skills with C, C++, Java, Python, Perl, Shell and/or another common language.