Software Developer, DSP, Embedded Systems, ML, Augmented Reality
Date: 11 hours ago
City: Kitchener, Ontario
Contract type: Full time

Note: By applying to this position you will have an opportunity to share your preferred working location from the following: Mountain View, CA, USA; Kitchener, ON, Canada.Minimum qualifications:
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.
In this role, you will strive to optimize both the deployment path for Machine Learning (ML) inference and the use of available hardware resources on Extended Reality (XR) Devices. You will be providing frameworks to enable our clients to make use of the resources, balance engaging priorities and performance concerns. Also, you will engage with our client teams to optimize their graphs for execution on the hardware platforms.
The Google Augmented Reality team is a diverse group of experts tasked with building the foundations for great immersive computing and building helpful, delightful user experiences. We're focused on making immersive computing accessible to billions of people through mobile devices, and our scope continues to grow and evolve.
For US Applicants:
The US base salary range for this full-time position is $141,000-$202,000 + bonus + equity + benefits. Our salary ranges are determined by role, level, and location. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your preferred location during the hiring process.
Please note that the compensation details listed in US role postings reflect the base salary only, and do not include bonus, equity, or benefits. Learn more about benefits at Google .
Responsibilities
- Bachelor’s degree or equivalent practical experience.
- 2 years of experience with software development in C++ and Python programming languages.
- 1 year of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
- 1 year of experience with Embedded Systems.
- Master's degree or PhD in Computer Science or a related technical field.
- 2 years of experience with data structures/algorithms.
- Experience in algorithmic optimization for embedded systems.
- Experience with profiling, benchmarking and presentation of complex data.
- Experience with perception and object detection.
- Knowledge of ML frameworks and familiarity with Android development.
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.
In this role, you will strive to optimize both the deployment path for Machine Learning (ML) inference and the use of available hardware resources on Extended Reality (XR) Devices. You will be providing frameworks to enable our clients to make use of the resources, balance engaging priorities and performance concerns. Also, you will engage with our client teams to optimize their graphs for execution on the hardware platforms.
The Google Augmented Reality team is a diverse group of experts tasked with building the foundations for great immersive computing and building helpful, delightful user experiences. We're focused on making immersive computing accessible to billions of people through mobile devices, and our scope continues to grow and evolve.
For US Applicants:
The US base salary range for this full-time position is $141,000-$202,000 + bonus + equity + benefits. Our salary ranges are determined by role, level, and location. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your preferred location during the hiring process.
Please note that the compensation details listed in US role postings reflect the base salary only, and do not include bonus, equity, or benefits. Learn more about benefits at Google .
Responsibilities
- Integrate ML frameworks on android and embedded systems.
- Work closely with other ML practitioners, software developers, and hardware teams to optimize performance across different platforms.
- Develop an efficient ML runtime system and optimized ML operator libraries for different hardware options.
- Analyze the performance of machine learning models, identifying bottlenecks in the software stack or hardware utilization.
- Improve machine learning models, applying techniques like model quantization, model pruning, Neural Architecture Search (NAS), and hardware optimization to improve runtime performance.
See more jobs in Kitchener, ON