Senior Software Engineer - Backend
- Toronto, ON, Canada
Full-time
Applications open in a new tab.
Job details
- Job type
- Full-time
- Posting language
- English
- Posted
Original job description
Reports to: Director of Software
Type: Full-Time
Location: Ottawa or Toronto
Location
AuraNet is Dominion Dynamics' mesh networking platform for autonomous assets working in contested and disconnected environments. It has to move data securely and in real time over links that aren't conventional wired networks, where bandwidth is scarce, connections drop, and the cloud may not be reachable at all. Keeping that working is the job.
You'll design and build the backend systems behind AuraNet in Python and Rust, across distributed systems, networking and security. You'll own an area of AuraNet or a project built on it, and move to where the work matters most as priorities shift. We're a small team building sovereign Canadian capability for the people who use it in the field. We value engineers who make good decisions quickly, ship quality work, and set the bar for the engineers who join after them.
What You'll Do
Design and build backend services in Python and Rust for data ingestion, processing and real-time distribution across AuraNet.
Build and tune networking for low-latency, end-to-end encrypted communication over mesh, intermittent and non-cloud links.
Bring a security-first approach to the platform, including authentication, PKI and encrypted transport, and add depth to the team's security work.
Package and deploy services in containers that run reliably on edge hardware with limited connectivity.
Integrate backend systems with autonomous platforms, flight stacks and simulation environments as the work requires.
Shape platform architecture and engineering standards through design reviews, code reviews and mentoring.
Move across AuraNet and related projects as priorities change, picking up whatever needs to ship next.
What You Bring
Senior or Staff-level experience designing and shipping distributed systems in production.
Strong backend engineering in Python and/or Rust, and willingness to work in both.
Solid networking fundamentals: TCP/IP, UDP, and publish/subscribe architectures.
Working knowledge of security concepts, including end-to-end encryption, PKI, authentication and authorization.
Hands-on experience with containers and deploying services outside a standard cloud environment.
Sound judgment, and you move fast without cutting corners on quality.
Low ego and a get-it-done attitude. You're comfortable owning your work and changing focus when the team needs it.
Eligibility for Canadian security clearance.
Nice to Have
Experience with mesh networking, tactical or degraded networks, or radio and satellite communications.
Familiarity with Zenoh or similar messaging technologies.
Experience integrating with robotics, UAV or autonomous platforms (MAVLink, ArduPilot).
Exposure to simulation environments such as Gazebo or Unreal Engine.
Background in security engineering or a security-focused role.
Experience in defence or another regulated environment.
No defence background required.
We've hired people who didn't tick every box. If this is the work you want to do, please apply anyway.
Why Join Us
Building something meaningful starts with the right people.
At Dominion Dynamics, you’ll:
Shape Canada’s future by building real defence capability for the CAF and our allies.
Make decisions that ship in a high-trust environment with short feedback loops and rapid iteration.
Move fast, field faster, and work directly with the operator - our systems are in the field with the CAF now.
Have an impact from day one with equity, responsibility, and direct access to leadership.
If you’re curious, hands-on, and driven by the opportunity to make a difference, this is where you belong!
Compensation & Benefits
Competitive base salary and company equity*
Comprehensive health benefits
Additional equity granted based on impact*
We use AI tools to support parts of the hiring process, including screening and reviewing responses. Final hiring decisions are always made by people and follow all applicable privacy and employment laws in Canada.
*Equity awarded to full time employees only.
More about this job
Responsibilities
You will design and build backend services in Python and Rust for data ingestion, processing, and real-time distribution across the AuraNet platform. Additionally, you will manage networking for low-latency communication and integrate backend systems with autonomous platforms and simulation environments.
Requirements
The role requires senior or staff-level experience in designing and shipping distributed systems in production environments. Candidates must possess strong backend engineering skills in Python or Rust and have a solid understanding of networking fundamentals and security concepts.
Skills
- Python
- Rust
- Distributed systems
- Networking
- Security engineering
- TCP/IP
- UDP
- Publish/subscribe architectures
- End-to-end encryption
- PKI
- Authentication
- Authorization
- Containers
- Edge hardware
- Mesh networking
- Autonomous platforms
Benefits
- Competitive base salary
- Company equity
- Comprehensive health benefits
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
- Security & Safety
- Government & Public Sector
Keywords
- Backend
- Python
- Rust
- Distributed Systems
- Networking
- Security
- Mesh Networking
- TCP/IP
- UDP
- Publish/Subscribe
- Encryption
- PKI
- Authentication
- Authorization
- Containers
- Edge Computing
- Autonomous Platforms
- Flight Stacks
- Simulation
- Gazebo
- Unreal Engine
- Zenoh
- MAVLink
- ArduPilot
- Defence
- Sovereign Capability
- Software Engineering
- Real-time Distribution
- Data Ingestion
- Canadian Security Clearance