×
Register Here to Apply for Jobs or Post Jobs. X

Software Developer, Backend Developer, DevOps

Job in Ottawa, Ontario, Canada
Listing for: Talentlab
Contract position
Listed on 2026-06-03
Job specializations:
  • Software Development
    Backend Developer, DevOps, Software Engineer, Cloud Engineer - Software
Job Description & How to Apply Below
Position: Software Developer (Contract)
Embedded Software Developer

Location:

Ottawa
Contract Duration: 6 months

We have partnered with an Ottawa based avionics company that is one of the leading providers of tracking, monitoring, and messaging services, as well as airtime and billing services, primarily catering to the aviation industry's mission-critical operations. The company is growing and is looking to add an Software Developer to help with some upcoming project based work. This is an excellent opporunity to join a small, collaborative team in a role that would offer lots of exposure and impact.

The Role:
  • Design, build, and maintain backend services and distributed system components written in Go.
  • Develop APIs, workers, daemons, event-driven services, and internal tools.
  • Write clean, idiomatic, maintainable Go code with clear package boundaries and explicit error handling.
  • Participate in code reviews, technical design discussions, and ongoing improvement of engineering practices.
  • Work with databases, queues, caches, object stores, and other infrastructure components safely and efficiently.
  • Design service architectures that support growing traffic, data volume, and operational complexity.
  • Apply sound distributed systems practices, including retries, timeouts, backoff, idempotency, and failure isolation.
  • Work with REST, messages queues, event streams, and other service communication patterns.
  • Optimize system performance, resource usage, startup behaviour, latency, throughput, and cost.
  • Identify and remove bottlenecks in application code, infrastructure usage, and service interactions.
  • Develop containerized applications using Docker and related container technologies.
  • Configure health checks, readiness checks, graceful shutdown, resource limits, and deployment behaviour.
  • Collaborate with Dev Ops team to ensure services are reliable, repeatable, and easy to operate.
  • Design systems for high availability, fault tolerance, graceful degradation, and recovery from failure.
  • Build observability into services through structured logging, metrics, tracing, dashboards, and alerting.
  • Participate in production operations, incident response, debugging, root cause analysis, and system hardening.
  • Apply security best practices for secrets, authentication, authorization, service communication, dependencies, and sensitive data.
  • Support secure container images, dependency management, access controls, and auditability.
  • Produce and maintain technical documentation for internal and external stakeholders.
  • Write and update Application Programming Interface (API) documentation, change logs, and technical reference guides.
  • Document software architecture, module behavior, service interactions, configuration procedures, and development workflows.
  • Ensure technical documentation is clear, accurate, version-aligned, and suitable for engineering, support, and integration use.
  • Participate in unit, integration, regression, and system-level testing for embedded software releases.
  • Support internal teams by triaging and responding to technical issues related to backend Linux applications and services.
  • Contribute to continuous improvement of software quality, maintainability, and development practices.
The Requirements:
  • Professional experience in software development, preferably in backend Go systems on Linux-based platforms
  • Strong understanding of backend service design, distributed systems, and production reliability.
  • Experience writing Linux applications and services
  • Experience building, deploying, and operating containerized applications using Docker or similar technologies.
  • Solid understanding of networking fundamentals, including HTTP, DNS, TLS, load balancing, and inter-service communication. Strong programming proficiency in Go, Bash, and SQL
  • Strong knowledge of Go concurrency patterns, including goroutines, channels, context cancellation, and safe shared-state management.
  • Experience working with relational databases, caches, queues, and object stores.
  • Experience working with Rabbit

    MQ, AMQP, MQTT or similar message broker technology.

    Strong debugging and investigative skills
How to Apply?
You can apply directly to  or on our website at  We want to thank all applicants for their interest, but only those in consideration will be contacted
Note that applications are not being accepted from your jurisdiction for this job currently via this jobsite. Candidate preferences are the decision of the Employer or Recruiting Agent, and are controlled by them alone.
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search:
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)
0
200
Filters
Education Level
Experience Level (years)
Posted in last:
Salary