Minimum qualifications:
- Bachelor's degree in Computer Science, Computer Engineering, a relevant technical field, or equivalent practical experience.
- 10 years of experience with software development in one or more programming languages (C/C++)
- Experience working with networking like: RDMA or packet processing and system design principles.
- Experience with embedded systems/firmware design.
- Experience with hardware design (e.g., computer architecture or chip design).
- Experience with SoC cycles.
- Experience in Technical leadership.
- Ability to work with device level hardware and software, especially in a lab environment.
Want more jobs like this?
Get jobs in Tel Aviv, Israel delivered to your inbox every week.
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.
In this role, you will contribute to the innovation behind products. Your expertise will shape the next generation of hardware experiences, delivering unparalleled performance, efficiency, and integration.
Behind everything our users see online is the architecture built by the Technical Infrastructure team to keep it running. From developing and maintaining our data centers to building the next generation of Google platforms, we make Google's product portfolio possible. We're proud to be our engineers' engineers and love voiding warranties by taking things apart so we can rebuild them. We keep our networks up and running, ensuring our users have the best and fastest experience possible.
Responsibilities
- Build C++ firmware running on embedded processors with limited memory footprints on the SoCs.
- Develop tools to update and debug the firmware, enable emulation, chip bringup, and hardware debugging.
- Build Linux kernel device drivers to attach the SoCs to data center systems and associated C++ user space drivers, tools and libraries, and write code to handle multiple IPs within the design.
- Play roles in emulation, chip bring-up, and SoC deployment, contributing to all layers of the data center software stack to deploy SoCs to production.
- Create code generators to generate C++ code based on hardware specifications.