Browse All Jobs
Job Description

Canonical is seeking a Software Engineer to join their team and contribute to the development of industrial IoT solutions. The engineer will focus on creating easy-to-deploy, secure, and customizable industrial edge solutions. The role involves designing and implementing applications for constrained IoT devices and gateways, with a strong emphasis on embedded systems and Linux.

The Software Engineer will work within a collaborative, distributed team, engaging in peer reviews and maintaining high code quality through integration and unit testing.

Responsibilities:

  • Collaborate with a distributed team
  • Develop and maintain open source IoT application packages
  • Debug issues and produce high-quality code
  • Review code from upstream and Canonical engineers
  • Experiment with Ubuntu Core and showcase IoT solutions
  • Contribute to the development of IoT platforms
  • Participate in IoT standardisation working groups

Requirements:

  • 3+ years of professional software development using Go or C++
  • Experience with RESTful APIs, MQTT, or other messaging protocols
  • Familiarity with wireless communication protocols (WiFi, BLE, Zigbee, Z-Wave, Thread)
  • Interest and experience with containers, Linux distributions, packaging, scripting and other frameworks
  • Bachelor’s degree in Computer Science, STEM, or equivalent

Canonical offers:

  • Work from home
  • Global travel for events (2-4 weeks)
Apply Manually