Senior Software Engineer, Linux Kernel
Google welcomes people with disabilities.
Note: By applying to this position you will have an opportunity to share your preferred working location from the following: Banqiao District, New Taipei City, Taiwan; Xindian District, New Taipei City, Taiwan.
- Bachelor’s degree in Computer Science, Electrical Engineering, related technical field, or equivalent practical experience.
- 5 years of work experience in Linux Kernel driver development, or Linux network stack.
- Experience with software development in C/C++.
- 5 years of experience in software design and development for typical software layers found in ASIC: boot, drivers, embedded firmware, libraries, and API for applications.
- Experience in one or more of the following: peripherals such as USB and PCIe drivers, linux network stack, SoC software design, and kernel power management.
- Comprehensive knowledge of interaction types between hardware and software for different types of standard hardware blocks, CPU, and accelerators.
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.
- Collaborate with stakeholders such as product management, architecture, silicon architecture, silicon implementation, silicon software, and product software engineering to identify user experiences characteristics and how they can be mapped onto hardware.
- Understand interactions between hardware components and work towards the definition of architecture and block’s interactions design, providing options or trade-offs, identifying issues, and driving them to resolution.
- Design architecture and software interfaces that enable a software programming model that can delight application developers, and allow them to use hardware accelerators seamlessly.
- Design architecture that assures security and privacy of the data for applications that are sensitive to it.
- Adopt and develop the software architecture modeling platform to model features requests and support inclusion in the hardware using a data-driven approach about benefits.
To all recruitment agencies: Google does not accept agency resumes. Please do not forward resumes to our jobs alias, Google employees or any other organization location. Google is not responsible for any fees related to unsolicited resumes.
At Google, we’re committed to building a workforce that is more representative of the users we serve and creating a culture where everyone feels like they belong. To learn more about our diversity, equity, inclusion commitments and how we’re building belonging, please visit our Belonging page for more information.
We welcome and encourage people who are expecting and/or parents-to-be to apply to this or any other role at Google.
Google is a global company and, in order to facilitate efficient collaboration and communication globally, English proficiency is a requirement for all roles.
Something looks off?