Description
Synaptics is leading the charge in AI at the Edge, bringing AI closer to end users and transforming how we engage with intelligent connected devices, whether at home, at work, or on the move. As the go-to partner for the world's most forward-thinking product innovators, Synaptics powers the future with its cutting-edge Synaptics Astra AI-Native embedded compute, Veros wireless connectivity, and multimodal sensing solutions.
We're making the digital experience smarter, faster, more intuitive, secure, and seamless. From touch, display, and biometrics to AI-driven wireless connectivity, video, vision, audio, speech, and security processing, Synaptics is the force behind the next generation of technology enhancing how we live, work, and play.
Overview
Synaptics is looking for a Sr. Staff Firmware Engineer to join our dynamic and growing organization. The role will be responsible for Bluetooth Controller firmware. This position reports to the Director of Development Engineering.
Responsibilities & Competencies
Job Duties
* Drive collaboration with system architects, hardware and software engineers, and other stakeholders to understand technical features and system requirements and translate these into actionable firmware designs that meet performance, reliability, and scalability criteria
* Develop innovative design solutions for new and existing features by evaluating different approaches based on performance, power consumption, memory footprint, scalability, and other constraints to ensure optimal firmware implementation
* Write and maintain efficient, scalable, and robust firmware code ensuring alignment with technical and project requirements
* Develop and test code in Python or MATLAB to validate firmware functionality and performance
* Collaborate with cross-functional teams across different geographical locations, to ensure feature development and implementation meet functional and performance standards
* Diagnose, troubleshoot, and resolve complex issues related to firmware and hardware integration using debugging tools such as JTAG, oscilloscopes, logic analyzers, and other diagnostic instruments
* Provide onsite support for customer issues as necessary
Competencies
* Strong C/C++ programming skills and knowledge of scripting languages like Perl and Python; understanding of assembly code a plus
* Excellent debugging and analytical skills
* Proactive, self-starter, able to work independently in a fast-paced environment to complete projects on time with minimal guidance
* 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
* Resourceful and able to solve complex problems through adaptation of existing technology and investigation of new technology to resolve complex problems
* Analytical and able to make informed decisions based on experience and data to improve processes and evaluate design options
* Excellent written and verbal communications skills, in English
* Strong team player with the ability to work within a geographically diverse team and willingness to mentor developing team members
Qualifications (Requirements)
* Bachelor's degree (or higher) in Computer Science or Electrical Engineering or related field or equivalent
* 12 years working on real-time embedded software development
* Strong programming experience in C/C++
* Experience with I2C, I3C, SPI, UART or other inter-processor communications
* Experience with digital signal processing
* Familiarity with analog and digital systems, ADCs, DACs, PWM, DMA.
* Familiarity with Logic Analyzers, ICE, DVM, Oscilloscope and similar tools
* Prior experience with USB or bootloader is beneficial
* Knowledge of capacitive sensing, OS signal processing, Matlab, actuator driving (ERM, LRA, Piezo), and digital circuit verification on FPGA or RTL are plusses
* Minimal travel up to 10%
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.