Minimum qualifications:
- Bachelor’s degree in Electrical, Electronics or Computer streams or equivalent practical experience
- Experience with programming in C, C++, or Python
- Experience with embedded systems
- Experience using data structures to solve a problem, interpreting algorithms, and contributing ideas to their development
Preferred qualifications:
- Bachelor’s or advanced degree in Computer Science or Computer Engineering
About the job
Be part of a diverse team that pushes boundaries, developing custom silicon solutions that power the future of Google’s direct-to-consumer products. You’ll contribute to the innovation behind products loved by millions worldwide. Your expertise will shape the next generation of hardware experiences, delivering unparalleled performance, efficiency, and integration.
As an Embedded Software Engineer, you’ll be part of a dynamic team working at the intersection of hardware and software. You’ll design, develop, and optimize software that runs directly on hardware, powering everything from mobile phones to other smart devices. You’ll work closely with hardware engineers to ensure seamless integration and optimal performance. We have different types of roles across OS and Bare-metal, Device drivers, Firmware, Security Software, Performance and Power optimization, ML compilers, Development tools, and Machine learning applications on embedded systems. As a key member of a small and versatile team, you will design, develop, test, deploy, and maintain Embedded software solutions.
Google’s mission is to organize the world’s information and make it universally accessible and useful. Our team combines the best of Google AI, Software, and Hardware to create radically helpful experiences. We research, design, and develop new technologies and hardware to make computing faster, seamless, and more powerful. We aim to make people’s lives better through technology.
Responsibilities
- Design and develop embedded software solutions for a variety of hardware platforms.
- Fine-tune software for performance, power efficiency, and reliability.
- Develop and implement security features to protect embedded systems from threats.
- Contribute to areas such as device drivers, firmware, performance optimization, compiler development, tooling, or machine learning on embedded devices.
- Manage complex challenges related to real-time systems, resource constraints, and hardware interactions.