Embedded Firmware Engineer - Remote

Job description

Ienso is seeking an entrepreneurial and enthusiastic Embedded Firmware Engineer to join the team! Reporting to the VP of Engineering, our new Embedded Firmware Engineer will be responsible for developing unique software systems that are utilized in custom digital cameras and modules, integrating functions and features often not found in traditional cameras.


  • Keeping abreast of relevant technology while working in a fast-paced environment and keeping up to date on the changing programming and technology trends
  • Firmware design for embedded devices and systems
  • Working with code and drivers to enhance and build new systems and products including digital cameras, embedded video systems, wireless modules such as WiFi or Bluetooth, cellular modules, high-speed communication busses, general-purpose controllers with graphical LCD, etc.
  • Working with in a team environment with other software development engineers on tasks in real-time embedded communication and control environments.
  • Contributing to the design of next-generation imaging technologies, systems, and subcomponents.
  • Using software design techniques and procedures to complete a sequence of related engineering tasks, such as investigating and debugging, designing, developing, and testing in accordance with company guidelines.
  • Applying complex technical and analytical skills to existing software to make enhancements and add new features.
  • Participating in the review of documents, designs, code, and test cases of software.
  • Working with Instruments such as logic analyzer, oscilloscope, and multimeter during PCBA bring up and debugging.
  • Collaborating with HW engineers on a schematic review of digital-related circuits.
  • Performing functional testing of developed software to ensure correct operation and compatibility.

Job requirements


  • Minimum Bachelors or Masters Degree in a related field
  • Minimum 5+ years proven industry experience working with embedded firmware
  • Strong skills with low level Linux Kernel, RTOS Driver development (Open Embedded/Yocto)
  • Strong skills with Boot-loader development, U-Boot
  • Strong Embedded Programming Skills with C/C++, Linux Kernel, Android, Python, Ruby; familiarity with object-oriented design and analysis tools is also a plus
  • Experience with Git, Bugzilla, Gitlab, Agile development
  • Experience with video processing methods and with camera ISP coding (V4L, GStreamer, OpenCV)
  • Ability to work with various MCUs, DDR, eMMC, NAND Flash, I2C, GPIO, PLL, ADC, SPI Bus etc.
  • Ability to read electronic schematics
  • Ability to use basic electronic instruments (Scope, Multi-meter, etc.) for development & debugging
  • Strong problem solving, debugging skills and ability to think fundamentally
  • Comfortable with various Linux commands for SW development (dd, strace, etc.)

What can I expect when I submit my application? 

Although we would love to speak to every candidate, we regretfully inform you that only those selected will be contacted within 5 business days. 

About Ienso

Products are becoming smarter. Digital camera designs and Embedded vision systems are becoming integral to more and more products. Security devices, computers, cars, appliances, GPS devices, cellular telephones, and drones, to name a few, all use camera technologies. Ienso is launching a product strategy to service their host of customers in markets such as IoT, Automotive, Home Automation, Drones, Surveillance, Medical and Industrial/Machine Vision while maintaining their custom engineering expertise to support custom camera designs that don’t fit standard market categories.

Ienso is an equal opportunity employer. Should you require accommodation in any aspect of our selection process, please contact our recruitment team at careers (at) ienso (dot) com.