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. Expect to learn best practices for code health, testability and maintainability - critical skills for early career software engineers.
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.
Google is and always will be an engineering company. We hire people with a broad set of technical skills who are ready to take on some of technology's greatest challenges and make an impact on millions, if not billions, of users. At Google, engineers not only revolutionize search, they routinely work on massive scalability and storage solutions, large-scale applications and entirely new platforms for developers around the world. From AdWords to Chrome, Android to YouTube, Social to Local, Google engineers are changing the world one technological achievement after another.
Responsibilities
- Collaborate with engineers through the entire software development lifecycle to solve complex engineering problems in tools and testing.
- Develop advanced automated testing frameworks.
- Develop tooling and infrastructure to help engineering teams measure and increase their velocity.
- Conduct research on emerging technologies.
Qualifications
Minimum qualifications:
- BA/BS degree in Computer Science or related technical field, or equivalent practical experience.
- Experience in writing code fixes and tools to solve problems in C, C++, C#, Java, JavaScript, Go or Python (e.g., removing duplicate elements from a list) and experience in optimizing code for stability, functionality and scalability (e.g., crawling, search, troubleshooting).
- Experience or previous project assignments with Data Structures and Algorithms (i.e. selecting and implementing an algorithm, using data structures to solve a problem.) Experience with algorithms that improve a product’s capabilities, speed, efficiency, or reliability.
- Experience with data structures, branching, function-calls, and conditionals as well as debugging code and submitting the appropriate fix.
Preferred qualifications:
- Previous tech internships or relevant work experience programming in C, C++, C#, Java, JavaScript, Go or Python.
- Experience developing thorough testing solutions across testing layers (e.g., unit, functional, integration, stress testing) for your code, using one or more of the following: C, C++, C#, Java, JavaScript, Go, or Python.
- Demonstrated experience programming in 2 or more of the above languages: C, C++, C#, Java, JavaScript, Go or Python.
- Experience manipulating code to improve system availability and latency; Experience with improving inventing or proving the value of new algorithms that improve a product's capabilities, speed, efficiency and reliability.
- Skill in isolating problems to a database subsystem.
by via developer jobs - Stack Overflow
No comments:
Post a Comment