Embedded Firmware Engineer

Job description

About iENSO

iENSO makes Embedded Vision and Edge AI platforms for companies that need to include AI, image processing, and data connectivity capabilities in intelligent IoT Products that can output actionable data so that humankind can make better decisions and be more efficient. Our global network of expertise in Vision, Edge AI, design, development, and manufacturing produce optimized and scalable embedded vision systems that help everything from Home Automation, Robotics, Precision Farming & Agriculture, Remote Security, Medical, After Market Automotive, and Conservation. By delivering scalable platforms that include both Hardware and Software, we have created an ecosystem that is enabling some of the world’s leading brands to easily implement Vision and AI in their application. www.iENSO.com

Scope of the position

iENSO is seeking an entrepreneurial and enthusiastic Embedded Firmware Engineer to join the team! Reporting to the SW Manager, 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 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 Wi-Fi or Bluetooth, cellular modules, high-speed communication buses, general-purpose controllers with graphical LCD, etc.
  • Working within 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.
  • Collaborating with HW engineers on a schematic review to ensure SW resources are aligned with HW.
  • Performing functional testing of developed software to ensure correct operation and compatibility.

Job requirements

Key Qualifications:

  • Minimum Bachelors or Master’s degree in a related field.
  • Minimum 5+ years of proven industry experience working with embedded firmware.
  • Strong skills with low-level Linux Kernel and embedded Linux distribution tools such as Yocto, Buildroot, or OpenWRT.
  • Strong skills with Boot-loader development, U-Boot.
  • Strong Embedded Programming Skills with C/C++, Python, and Shell scripting.
  • Experience with image and video processing methods and with camera ISP coding (V4L2, GStreamer, OpenCV).
  • Ability to work with various MCUs, DDR, eMMC, NAND Flash, I2C, GPIO, PLL, ADC, SPI Bus, etc.
  • Experience with Agile development methodology.
  • Jira/Confluence and Git experience is a MUST.
  • Strong problem solving, debugging skills, and ability to think fundamentally.
  • Ability to understand, follow and participate in designing software architecture policies.
  • Understanding and experience with object-oriented analysis and design.
  • The ability to read electronic schematics to help with bringing up new board designs is an asset.
  • The ability to use basic electronic instruments (Scope, Multi-meter, etc.) for assisting during SW-HW integration & debugging is an asset.
  • Experience with the Ambarella platform is a big advantage.
  • Familiarity with AI/ML frameworks and libraries is an asset.


  • Very strong Team member skills.
  • Excellent written and verbal communication skills.
  • Ability to work independently.

Other Details:

  • Full-time position.
  • Start date immediate.

If you would like to join our talent network and stay informed of all things iENSO join here!

iENSO appreciates the interest of all candidates in the role and will be in touch directly with those who best fit the hiring criteria. If you require any accommodation during the interview process, please advise us when we arrange for interviews.