
Senior Systems and Software Architect
- Ontario
- Permanent
- Full-time
- Take a lead in the design, development, and implementation of very advanced embedded and satellite ground segment software systems.
- Lead the architecture and design of the management plane, spanning scalable and modular Element Management System (EMS) and Network Management System (NMS) components.
- Definition and architecture of software solutions across the full stack (embedded modules and board support packages to OS-level integration and system-wide services).
- Drive and implement advanced testing methodologies, including Test-Driven Development (TDD) and software simulation frameworks.
- Be a technical leader and mentor to the software teams, supporting with design and code reviews, and ensuring adherence to coding standards and best practices.
- Support the wider team in the identification, troubleshooting, and resolving of complex software issues.
- Design and implement scalable networking features (e.g., MPLS).
- Use modern software tools and practices, including virtualization, containerization, and cloud technologies.
- A degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field.
- 15+ years of experience in software development and testing, with a strong focus on embedded systems and real-time applications.
- Proven experience as a technical lead, or architect.
- Proven experience in the design of software with consideration for hardware resource constraints and system-level integration.
- Strong experience architecting complex systems, including management planes with Element Management System (EMS) and Network Management System (NMS) components.
- Strong understanding of system-level concepts, including fault management, performance monitoring, configuration management, networking, storage, operating systems, and cybersecurity considerations.
- Proficiency in modern C++ (C++14/17/20).
- Experience with Linux operating systems.