Description
Millions of people experience Synaptics every day. Our technology impacts how people see, hear, touch, and engage with a wide range of IoT applications – at home, at work, in the car or on the go.
We solve complex challenges alongside the most influential companies in the industry, using the most advanced algorithms in areas such as machine learning, biometrics and video processing, combined with world class software and silicon development.
Overview
Synaptics is looking for talented Staff Software Engineer to join our dynamic and growing organization. You will be responsible for the customer design-in activities from the design review phase through to mass production, for Synaptics Astra® SL Series of Embedded processors. The Astra® SL Series is a family of highly integrated AI-native Linux SoCs optimized for multi-modal Consumer and Industrial IoT workloads with high-performance hardware accelerators for edge-based inferencing, security, graphics, vision and audio. This position reports to the Sr. Manager, Software Engineering.
Responsibilities & Competencies
Job Duties
Actively lead and participate in customer design-in activities from the design review phase through to mass production, ensuring smooth execution and timely delivery
Customize and optimize Board Support Packages (BSPs) to meet hardware and application-specific requirements
Develop, enhance, integrate, and maintain device drivers for Display, GPU, Camera, HDMI/MIPI as well as the Media/Camera/Graphics framework for our Astra processor series
This is an exciting opportunity to be a part of a global team working to create revolutionary products
Competencies
Solid understanding of software system architecture
Excellent skills in C/C++ programming
Excellent knowledge of Linux BSP, system programming and kernel drivers
Proactive, self-starter, able to work independently in a fast-paced environment
Well organized with strong attention to detail; proactively ensures work is accurate
Positive attitude and work ethic; unafraid to ask questions and explore new ideas
Good design, programming, and problem-solving skills
Resourceful and able to solve complex problems through adapting technology and a solid understanding of product architecture
Good verbal and written communication skills, in English
Strong team player with the ability to work collaboratively within a diverse cross-functional team
Qualifications (Requirements)
Bachelor’s degree in Electrical Engineering, Software Engineering, Computer Science or related field or equivalent
8+ years’ experience in embedded software development
Expertise with systems analysis, profiling, and low-level debugging
Experience working with firmware/hardware
Hands on experience in one or more of the areas below:
DACs, ADCs, and hardware audio accelerators
Display pipeline, MIPI DSI, and HDMI interfaces
Drivers and frameworks for OpenGL, Vulkan, and QT
MIPI CSI, ISP integration, and sensor tuning
H.264, H.265, and VP9 video encoders/decoders
MMI, RGMII, and RMII for high-speed data transfer
USB, SPI, I2C, SD/MMC, UART, and GPIO interfaces
Wi-Fi and Bluetooth Controllers
No travel required
Belief in Diversity
Synaptics is an Equal Opportunity Employer committed to workforce diversity. Qualified applicants will receive consideration without regard to race, sex, sexual orientation, gender identity, national origin, color, age, religion, protected veteran or disability status, or genetic information.