Software Engineer, Silicon Software Platform

5 Months ago • 5 Years +
Research Development

Job Description

This Software Engineer role at Google focuses on developing firmware for embedded microcontrollers within System on a Chip (SoC) projects. Responsibilities include firmware development in C, C++, or Rust, studying hardware designs, prototyping software simulations, and engaging in hardware/software co-design. The role also involves working with early hardware prototypes, emulation, and software simulation of SoCs to verify and enable functionality. Developing software-based hardware simulations for early exploration of software/hardware interfaces and supporting early architecture decisions is crucial. The engineer will write production-level firmware code and support it through product launch. The ideal candidate possesses strong embedded systems development experience, proficiency in C, C++, or Rust, and a deep understanding of power-aware engineering practices.
Good To Have:
  • Power-aware engineering
  • Experience with embedded OS (Linux, FreeRTOS etc.)
  • ARM processor experience
  • Hardware register interface knowledge
Must Have:
  • 5+ years C/C++/Rust development experience
  • 3+ years embedded systems experience
  • 3+ years embedded software testing and launch experience
  • Firmware development for microcontrollers
  • Hardware/Software co-design experience

Add these skills to join the top 1% applicants for this job

prototyping
rust
linux
product-launch
networking
user-interface

Minimum qualifications:

  • Bachelor's degree or equivalent practical experience
  • 5 years of experience developing in C, Rust, or C++
  • 3 years of experience in software development for Embedded Systems, kernel drivers, or device drivers.
  • 3 years of experience in testing and launching software products on embedded devices.

Preferred qualifications:

  • Experience in development with C, Rust or C++ for firmware applications.
  • Experience in power-aware engineering practices.
  • Experience with embedded operating systems (e.g., Linux, FreeRTOS, SafeRTOS, ZephyrOS, etc.).
  • Experience in working with hardware register interfaces and device specifications.
  • Experience with Embedded Software environments including constrained memory and code on ARM processors.

About the job

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.

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

  • Develop firmware in C, C++, or Rust for embedded microcontrollers in System on a Chip (SoC) projects.
  • Study hardware designs, prototype Software based simulation, and engage in Hardware/Software co-design efforts to design and implement platform power management.
  • Work with early hardware prototypes, emulation, software-simulation of SoC and subsystem designs to verify and enable functionality.
  • Develop Software based Hardware simulations to allow early explorations of Software/Hardware interfaces and support early architecture decisions.
  • Write production level firmware code, and support it through to product launch.

Set alerts for more jobs like Software Engineer, Silicon Software Platform
Set alerts for new jobs by Google
Set alerts for new Research Development jobs in India
Set alerts for new jobs in India
Set alerts for Research Development (Remote) jobs

Contact Us
hello@outscal.com
Made in INDIA 💛💙