Google is looking to hire a Software Engineering Manager to provide technical leadership to major projects, manage a team of engineers, optimize code, contribute to product strategy, and develop their team. The role involves working across various areas like information retrieval, AI, NLP, distributed computing, and large-scale system design to impact the future of communications with Google products.
Requirements
- 8 years of experience in software development.
- 5 years of experience with one or more of the following: speech/audio (e.g., technology duplicating and responding to the human voice), reinforcement learning (e.g., sequential decision making), or specialization in another ML field.
- 5 years of experience leading to ML design and optimizing ML infrastructure (e.g., model deployment, model evaluation, data processing, debugging, fine tuning).
- 3 years of experience in a technical leadership role.
- Experience in areas such as information retrieval, artificial intelligence, natural language processing, distributed computing, large-scale system design, networking, security, data compression, user interface design.
Responsibilities
- Design, guide and vet systems designs within the scope of the broader area, and write product or system development code to solve ambiguous problems.
- Lead the design and implementation of solutions in specialized ML areas, optimize ML infrastructure, and guide the development of model optimization and data processing strategies.
- You not only optimize your own code but make sure Engineers are able to optimize theirs.
- Develop the mid-term technical direction and roadmap within the scope of your team.
- Evolve the roadmap to meet anticipated future requirements and infrastructure needs.
- Guide the way for exceptional software engineers operating with scale and speed.
- Oversee the deployment of large-scale projects across multiple sites internationally.
Other
- Manage a team of Engineers.
- Manage your project goals, contribute to product strategy and help develop your team.
- Set and communicate team priorities that support the broader organization's goals.
- Align strategy, processes, and decision-making across teams.
- Set clear expectations with individuals based on their level and role and aligned to the broader organization's goals.
- Meet regularly with individuals to discuss performance and development and provide feedback and coaching.
- Manage engineers across multiple teams and locations, a large product budget.