Are you an embedded software developer that loves to make hardware work well? Would you enjoy seeing your work implemented in millions of consumer devices? Then you belong with CEVA!
We are looking for an Embedded Software Engineer to join our Sensors & Audio team in Rockville, Maryland. This engineer will support the development of state-of-the-art algorithms and software that will be used in a variety of consumer products such as Smart TVs and robotic appliances, 3D audio headsets, Augmented Reality glasses, and Personal Computers.
The Embedded Software Engineer will be a generalist, working on a variety of assignments with an interest and focus on the lower layers of software. Most projects are bare metal, but some use an RTOS. This engineer will develop software using an understanding of real-time embedded systems, concurrency, interrupt handling, and device drivers. The ideal candidate will be proficient in C and C++ programming, automated test development, have experience with microcontrollers, and be able to work independently. Successful candidates will demonstrate flexibility and the ability to “get things done.”
- Develop embedded software in C and C++ for CEVA’s sensor processing products through its full life cycle.
- Create APIs along with example code and documentation to facilitate integration by CEVA’s customers.
- Write unit tests that ensure correct operation.
- Optimize software on ARM Cortex M and CEVA DSP platforms.
- Operate in a structured, but agile software development methodology.
- Work closely with members for hardware/software system design.
- Clearly communicate technical ideas both orally and in writing.
Qualifications: (Must Have)
- B.S. in Computer Science, Computer Engineering, Electrical Engineering, or relevant degree program.
- 4+ years professional software development experience.
- Proficient developing software in C and C++.
- Ability to apply object-oriented design and programming concepts.
- Experience developing software that runs on embedded microcontrollers.
- Real-time embedded systems concepts including interrupts, tasking, and concurrency.
- Device driver design and implementation.
- Strong communication skills and ability to interact with other team members, working collaboratively within a multi-cultural, multi-disciplinary team.
- Self-motivated and capable of working independently.
- Residing within D.C. Metro area to accommodate a hybrid work schedule (WFH/remote & on-site in the office).
- Legal work authorization/EAD for U.S. employment; CEVA may be unable to sponsor a work visa for this position.
Preferred Qualifications: (Nice to Have)
- 8+ years professional software development experience.
- DSP experience.
- USB or Bluetooth HID driver experience.