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 High-level Synthesis Design 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.
At Google, you will have the opportunity to find the perfect blend of software design practices and hardware development complexity. Our diverse team develops cutting-edge digital hardware IP designs with C/C++ based high-level synthesis (HLS) for various chip projects. Whether your strength is in software coding, with a good understanding of hardware, or you are a hardware engineer with software proficiency, this balanced role will let you shine in both disciplines at the same time. In this role, you will use your software engineering expertise to help solve complex problems, design and optimize algorithms (for example in the domains of machine learning, computational photography, video, image and signal processing) and convert them into area and power efficient ASIC solutions.
Google's mission is to organize the world's information and make it universally accessible and useful. Only one thing consistently stands in the way between our users and the world's information - hardware. Our Hardware team researches, designs, and develops new technologies and hardware to make our user's interaction with computing faster, more powerful, and seamless. Whether finding new ways to capture and sense the world around us, advancing form factors, or improving interaction methods, our Hardware team is making people's lives better through technology.
- Work with multiple research and product teams at Google to plan and discover new opportunities for hardware acceleration.
- Design, implement and optimize algorithms turning them into low-power custom hardware using HLS.
- Develop, test, maintain and improve HLS based designs.
- Develop control and test software for the HLS accelerators.
- BS degree in computer science, electrical engineering, computer engineering, or equivalent experience
- Experience with high-level synthesis design methodologies and tools (e.g. Vivado, Catapult or Stratus)
- Experience with the digital design flow (design, verification, area/timing/power optimization)
- Experience in low-level C/C++ design suitable for hardware implementations
- MS/PhD degree in computer science, electrical engineering, computer engineering, or equivalent experience
- Experience in breaking down high-level signal processing algorithms and turning them into real-time capable and silicon area efficient adaptations while making the necessary trade-offs between cost and quality.
- Experience with FPGA prototyping
- Experience in hardware bring up, drivers and application software
- Experience with C/C++, Python, SystemVerilog, Verilog, Bash