Resume Score

Check how well your resume matches this job before you apply.

Sign in to check score

About the role

  • Embedded Software Engineer developing C/C++ software for spacecraft and ground systems. Building reliable satellite connectivity, FPGA platforms, Linux networking, and automated validation tools.

Responsibilities

  • Design, develop, and maintain reliable, high-quality embedded software for spacecraft and ground-based systems supporting a growing fleet of satellites
  • Work on Linux networking infrastructure, including routing, control-plane, and dataplane integration
  • Develop software for FPGA-based platforms, including bring-up, driver integration, and optimization of memory-mapped interfaces between processing cores and custom IP
  • Develop automated tests, validation tools, and technical documentation to support robust software delivery and long-term maintainability
  • Participate in software architecture discussions, design reviews, and code reviews
  • Collaborate with cross-functional teams to define system requirements, debug complex issues, and evolve system architecture
  • Identify performance gaps, reliability risks, and architectural shortcomings and drive improvements across the software stack
  • Provide technical leadership, mentorship, and guidance to junior engineers while contributing to engineering best practices and development standards

Requirements

  • 8+ years of embedded software development experience
  • Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent experience
  • Strong proficiency in C and modern C++
  • Experience developing software for embedded Linux environments
  • Experience working close to operating system internals, including concurrency, IPC, synchronization, memory management, and hardware/software interfaces
  • Experience integrating and debugging complex software systems across multiple abstraction layers
  • Experience with embedded build systems and toolchains such as Yocto/OpenEmbedded, Buildroot, CMake, or similar
  • Ability to debug and optimize software in resource-constrained or performance-sensitive environments
  • Strong communication and collaboration skills in cross-functional engineering environments
  • Ability to work effectively across distributed teams and time zones
  • Master's degree in Computer Science, Computer Engineering, or related field
  • Experience developing software for aerospace applications
  • Experience implementing embedded security solutions such as secure boot, hardware security modules (HSMs), certificate/key management, authentication, or encrypted communications
  • Familiarity with Linux networking concepts and infrastructure, including routing, interfaces, netlink, or packet-processing pipelines
  • Experience developing multi-stage bootloaders
  • Strong knowledge of computer networking and modern networking protocols
  • Experience with RTL (Verilog and/or VHDL) and embedded SoCs

Benefits

  • Competitive compensation with a robust equity plan to share in our success
  • Comprehensive coverage for health, dental, and vision insurance—including dependents
  • Unlimited vacation
  • Supportive parental leave policy
  • Company-wide holiday shutdown
  • Semi-annual company-wide parties
  • Frequent in-office team events
  • Relocation packages available for approved roles
  • $1,500 annual professional development fund
  • Fully stocked Toronto office kitchen with snacks, drinks, games and top-notch kitchen appliances
  • Town Halls, Celebration Calls, and Company-wide events
  • Certified Great Place to Work®, seven years in a row

Job title

Job type

Full Time

Experience level

Lead

Salary

Not specified

Degree requirement

Bachelor's Degree

Tech skills

LinuxC++

Location requirements

RemoteCanada

Report this job

Found something wrong with the page? Please let us know by submitting a report below.