Firmware Engineering Contractor

Tangent Design EngineeringCalgary, AB

About The Position

Tangent is expanding its bench of independent firmware engineering contractors for upcoming project-based work. This is not an employee role and it is not a full-time position. It is an opportunity for established independent contractors or consultants to partner with Tangent on defined projects as needs arise. Engagements may range from targeted firmware development or troubleshooting support to ownership of a complete embedded software workstream. We are looking for people who can step in quickly, understand unfamiliar hardware and technical requirements, work with a high degree of autonomy, and contribute meaningful technical value without extensive ramp-up.

Requirements

  • Strong experience developing embedded firmware in C or C++
  • Experience programming and debugging embedded systems
  • Confidence working directly with hardware, including reading schematics and supporting board-level troubleshooting
  • Experience working across both Windows and Linux environments
  • Familiarity with common embedded communication protocols
  • Experience in product development, product manufacturing, or the development of physical technology products
  • The ability to test systematically, analyze technical problems, and work through issues using data and evidence
  • Strong technical documentation and communication skills
  • Experience collaborating with electrical, mechanical, software, and project teams
  • Can work independently and manage your own technical deliverables
  • Are comfortable working on a project or scope basis rather than fixed ongoing hours
  • Can plug into an existing multidisciplinary team and add value quickly
  • Are comfortable moving between firmware, hardware, testing, and troubleshooting as the problem requires
  • Have examples of embedded products, shipped products, complex debugging, or difficult technical problems you have personally helped solve
  • Can explain what you owned, what went wrong, how you approached it, and what the final result was
  • Already provide services as an independent contractor or consultant

Nice To Haves

  • FPGA programming experience is considered an asset.

Responsibilities

  • Develop and debug embedded firmware in C and C++
  • Program and troubleshoot prototype electronics hardware
  • Develop scripts using languages such as Python or MATLAB
  • Work with communication protocols such as SPI, I2C, Bluetooth, cellular modems, CAN bus, and Modbus
  • Support hardware bring-up, testing, measurement, and troubleshooting
  • Review electrical schematics and work closely with electrical engineers to diagnose hardware and firmware issues
  • Support hardware component selection, including microcontrollers, sensors, and communication technologies
  • Participate in design reviews, code reviews, and technical problem solving
  • Develop or support FPGA implementations using VHDL, Verilog, or SystemVerilog where required
  • Create clear technical documentation and maintain code using GitHub or similar version-control tools
  • Take ownership of a defined firmware feature, subsystem, or technical scope

Benefits

  • Exposure to a wide variety of products, technologies, and industries
  • Clearly scoped project opportunities
  • The chance to work with a thoughtful, highly technical engineering team
  • Opportunities to solve complex firmware and embedded systems problems
  • The ability to contribute to real products that need to work reliably outside the lab
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service