ST Engineering iDirect

Senior Software Engineer

Job Locations CA-ON-Ottawa
ID
2026-2846
Department Name
Intuition
Type
Employee - Full Time

Overview

We are seeking a talented Senior Software Engineer with a strong background in software design and development to work in a team that will implement next generation features for iDirect satellite communication products. This engineer will work with an outstanding team of engineers with the goal of delivering a premier IP-based satellite communication product making it possible to deliver voice, video and data connectivity anywhere in the world.

Our teams use Scrum for Agile software development, and as such we work in diverse teams where thoughts and ideas are shared and collaboration is actively encouraged. This gives team members the opportunity to work across products, getting to understand exactly how products operates, and how it fits within the larger iDirect communication solution.

Qualifications

EDUCATION:

Bachelor’s or Master’s Degree in Computer Science or a related engineering discipline is preferred.

PROFESSIONAL QUALITIES:

  • Strong problem solving and communications skills.
  • Must be a self-motivated individual with technical leadership potential and proven success in a structured development environment.
  • Possess the ability to proactively drive technical solutions in a collaborative environment.
  • Good software design skills using proven and best practice design methodologies & related principles; Strong command of Object Oriented Design and Object Oriented Programming techniques.
  • Demonstrated experience in developing quality and maintainable software.
  • Hands-on experience developing, designing and testing multi-threaded and multi-process applications on Linux, with strong working knowledge of C++.
  • Good understanding of networking and network protocols (TCP/IP)
  • Strong documentation and writing skills.

POSITION SPECIFIC REQUIREMENTS:

  • 5+ years of experience designing and developing C++ software applications.
  • 5+ years of experience programming in Linux
  • Strong knowledge with Real-Time Operating Systems (e.g., FreeRTOS) for multitasking, or Embedded Linux for complex systems.
  • Strong knowledge of C, C++, OOD/OOP
  • Knowledge of TCP/IP, and sockets programming
  • Knowledge of networking protocols
  • Microcontrollers & Microprocessors: Familiarity with ARM Cortex-M, PIC, or AVR architectures.
  • Communication Protocols: Understanding I2C, SPI, UART, CAN, USB, or Ethernet protocols.
  • Memory Management: Optimizing code for constrained RAM, ROM, and flash resources.
  • Drivers & Hardware Integration: Writing peripheral drivers and navigating data sheets to interface with hardware

 

ADDITIONAL SKILLS:

 

  • Excellent presentation skills required
  • A solid working knowledge of UML is strongly desirable.
  • Must be able to work in a fast paced development environment
  • Experience in satellite communications systems is strongly desired
  • Working experience with tools such as GDB and Valgrind.
  • Git experience is strongly desired.
  • Scripting using shell scripting or Python.
  • Hardware Debugging: Using tools like debuggers (JTAG, SWD) and oscilloscopes to troubleshoot systems.
  • Understanding 5G NR (New Radio), 5G Core (5GC), SA/NSA models, and 3GPP protocols.

Options

Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
Share on your newsfeed

Need help finding the right job?

We can recommend jobs specifically for you! Click here to get started.