Software Developer (Contract)

Talentlab


Job Location:

Ottawa - Canada

Monthly Salary: Not Disclosed
Posted on: 30+ days ago
Vacancies: 1 Vacancy

Job Summary

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 industrys 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 DevOps 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 RabbitMQ AMQP MQTT or similar message broker 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

Required Experience:

IC

Embedded Software DeveloperLocation: OttawaContract Duration: 6 monthsWe 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 industrys missio...