Software Engineer, Backend – Edge Systems
Save this job and keep your search organized
Create a free account to save jobs, create alerts and return to this listing from your dashboard.
By continuing, you agree to our Terms & Privacy Policy.
Location: Toronto (Hybrid. In office most of the time, with flexibility when work does not require hardware access.)
About Micromart
Micromart is building the platform for unattended retail. We empower entrepreneurs to turn any location into a retail opportunity, from offices and condos to gyms, hotels, and other shared spaces. Our focus is on giving entrepreneurs powerful tools that are simple to use, while delivering a fast, intuitive shopping experience for shoppers.
Often described as Shopify for physical commerce, Micromart provides the infrastructure that powers unattended retail in the real world.
Our Team
Micromart launched just over a year ago and is now used in thousands of locations across North America. We’re a small and growing team working closely across product, platform, and smart store systems, from design through production.
Work here is end to end. That means thinking through problems, making pragmatic tradeoffs, shipping code, and improving systems over time. As we scale, there’s real ownership, real impact, and room to grow.
How you can help
As a Software Engineer, Backend – Edge & IoT Systems, you will help build and operate the software systems that run inside Micromart smart stores.
You will design and maintain software that runs close to the hardware, integrating with cameras, payment terminals, locks, routers, sensors, and other components. Your focus will be on building systems that are reliable, observable, and resilient while operating continuously.
Most development and testing happens in a virtual smart store environment that simulates devices and system behaviour, allowing you to build, test, and debug workflows without being blocked by physical hardware. Physical devices are used when validation, investigation, or performance testing requires it.
The system is built primarily in Node.js and TypeScript, with Express-based services running in Docker on Linux-based edge devices and managed through IoT device‑management platforms. Engineers deploy code remotely, access devices, inspect logs, proxy requests, and debug systems running in production. Strong software fundamentals and sound architectural judgment are essential.
This role is open to experienced intermediate and senior engineers, with scope and ownership scaled based on experience.
At Micromart, you will
Design, build, and maintain Node.js and TypeScript services running on edge devices
Build and operate Express‑based services deployed in Docker on Linux
Work on real‑time systems using sockets and event‑driven architectures
Integrate with cameras, payment devices, locks, routers, sensors, and other hardware
Work with USB and other device protocols, networking, IP addressing, and connectivity constraints
Build systems that handle real‑time events, intermittent connectivity, and offline scenarios
Investigate and resolve issues across application code, operating systems, networking, and hardware
Debug camera recording pipelines and other performance‑sensitive workloads
Improve observability, logging, and monitoring for systems running in production
Collaborate closely with platform, frontend, and hardware teams
Make pragmatic tradeoffs that prioritize stability, simplicity, and long‑term maintainability
Take ownership beyond writing code, including code reviews, release follow‑through, and raising the quality bar across the team
What you bring to the team
Strong experience building and owning production software systems
Solid fundamentals in systems design, debugging, and software architecture
Experience with Node.js, TypeScript, and service‑based architectures
Experience building real‑time systems using sockets or event‑driven patterns
Comfort working with Linux‑based systems, containers, and device‑level software
Experience integrating with hardware or external devices using USB, network protocols, or similar interfaces
Strong understanding of networking fundamentals, including IP addressing and local networks
Ability to reason about performance, reliability, and observability in long‑running systems
Comfort working close to hardware and physical constraints
A strong sense of ownership and initiative, with a desire to improve systems and team quality over time
Nice to have
Experience with edge computing, IoT, or connected device platforms
Experience working with Linux or Android‑based devices
Experience with cameras, vision systems, or video recording pipelines
Experie