Telesat (Nasdaq and TSX: TSAT) is a leading global satellite operator, providing reliable and secure satellite-delivered communications solutions worldwide to broadcast, telecommunications, corporate and government customers for over 55 years. Backed by a legacy of engineering excellence, reliability and industry-leading customer service, Telesat has grown to be one of the largest and most successful global satellite operators.
Telesat Lightspeed, our revolutionary Low Earth Orbit (LEO) satellite network, scheduled to begin service in 2027, will revolutionize global broadband connectivity for enterprise and Government users by delivering a combination of high capacity, security, resiliency and affordability with ultra-low latency and fiber-like speeds. Telesat is headquartered in Ottawa, Canada, and has offices and facilities around the world.
The company’s state-of-the-art Satellite fleet consists of 14 GEO satellites, the Canadian payload on ViaSat-1 and one LEO 3 demonstration satellite. For more information, follow Telesat on X and LinkedIn or visit www.telesat.com
Our Software Development team architects, develops, tests and maintains the Telesat Lightspeed System Model, a state-of-the-art suite of engineering software tools running on high performance computing (HPC) infrastructure for the modeling of resource allocation and end-to-end communication system performance analysis of the Telesat Lightspeed satellite constellation.
As a Software Developer in Test, you will ensure the quality and reliability of the System Model codebase, as well as the microservice ecosystem supporting it, through effective and automated software testing. The Senior Software Developer in Test will be responsible for writing software tools and scripts in addition to leveraging existing test frameworks and tools to perform integration, system, performance, and other tests to validate the functional and non-functional requirements of the product. They will also be responsible for integrating these tools and frameworks into the software development process by contributing to the continuous development and deployment pipelines.
Key Responsibilities
- Design, develop, and maintain Java (Java 17+) services within a distributed, event-driven architecture using Spring Boot.
- Implement asynchronous workflows and event processing using Azure Service Bus and Event Hub where appropriate.
- Package, deploy, and operate microservices on Kubernetes using Helm across multiple environments (dev/test/prod).
- Contribute to service decomposition, domain boundaries, and API design with a focus on latency, throughput, reliability, and backward compatibility.
- Design and implement reliable service-to-service communication using REST, gRPC, and messaging protocols.
- Support protocol-agnostic ingress suitable for long-lived or reconnect-sensitive traffic.
- Help optimize networking concerns (TCP behavior, connection pooling, backoff, circuit breaking) for high-scale traffic.
- Contribute to multi-region resiliency design, including regional failover/failback mechanics, validation steps, and automation guardrails.
- Embed production readiness into services: SLIs/SLOs, golden signals, standardized observability, failure-mode analysis, and post-incident architectural corrections.
- Participate in and improve end-to-end readiness drills: failure scenario walkthroughs, runbook execution, and post-drill improvements.
- Design for resilience via health checks, fault management, monitoring, rate limiting, bulkheads, and recovery-on-failure patterns.
Required Qualifications
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field
- 5-9 years of relevant experience in software development and testing
- Experience in Python and/or Java programming language
- Experience with one or more of the following technologies: gRPC, REST, Message Queues, Databases, SQL, Azure, etc.
- Experience working with multiple test automation tools and frameworks such as Selenium Web Driver, Katalon, Watir, Cucumber and others
- Extensive experience with GitLab for version control and CI/CD processes and Git Runners for test automation
- Solid understanding of Linux environments and command-line tools
- Experience with Linux clusters and cluster job managers
- Experience with agile development
- Experience with Matlab language and programming platform is considered an asset