F

Fortinet

Delivers integrated cybersecurity via security fabric

Senior Software Developer - Embedded VOIP

Embedded Engineering +1Confirmed live in the last 24 hours
Full-timeOttawa, ON, CanadaIn-person

About the Job

Requirements

  • Strong experience in embedded software development using C and C++.
  • Hands-on experience developing software in an embedded Linux environment.
  • Working knowledge of Linux kernel architecture and kernel-level development.
  • Experience working with and debugging Linux device drivers.
  • Experience working with bootloaders and the embedded Linux boot process.
  • Hands-on experience with cross-compilation, embedded toolchains, and target-platform builds.
  • Good understanding of inter-process communication, multithreading, synchronization, and process management.
  • Strong debugging and problem-solving skills, including the ability to troubleshoot issues across multiple layers of an embedded system.
  • Understanding of memory and performance constraints common to embedded systems.

Responsibilities

  • Develop and maintain software for embedded Linux-based platforms.
  • Work with bootloaders, the Linux kernel, and device drivers, including modifying and debugging existing code when required.
  • Configure, build, and troubleshoot the Linux kernel and bootloader for target hardware.
  • Use embedded toolchains and cross-compilation environments to build system and application software for target platforms.
  • Work with real-time and performance-sensitive Linux environments.
  • Debug issues across the software stack, from bootloader and kernel-level problems to user-space applications.
  • Work with inter-process communication, multithreading, synchronization, and related system-level concepts.
  • Analyze and optimize CPU usage, memory usage, startup time, and overall system performance.
  • Develop and maintain embedded software for VoIP telephone products.
  • Work with SIP and related VoIP and telephony technologies.
  • Investigate and resolve signaling, media, networking, and system integration issues.
  • Develop efficient software suitable for embedded systems with limited CPU and memory resources.
  • Design, implement, test, and maintain software primarily in C and C++.
  • Apply object-oriented design principles where appropriate.
  • Diagnose complex software problems using effective debugging techniques and tools.
  • Work with static and dynamic libraries, including library linking and dependency management.
  • Use development environments and tools such as Eclipse, Visual Studio, GDB, and related embedded development and debugging tools.
  • Participate in code reviews and contribute to software design and architecture discussions.

Desired Qualifications

  • Experience with telephony systems and technologies.
  • Experience with VoIP protocols, particularly SIP.
  • Experience with real-time Linux and performance-sensitive applications.
  • Experience with networking protocols and network programming.

About the Company

Fortinet

Delivers integrated cybersecurity via security fabric

Fortinet provides cybersecurity solutions for organizations with an integrated security approach. Its core offering, the Fortinet Security Fabric, connects firewalls, endpoint protection, intrusion detection, and secure SD-WAN so these tools share threat intelligence and policy controls. The company differentiates itself with a wide, interoperable security stack that spans network, endpoint, cloud, and threat intelligence, enabling centralized management and consistent security across environments. Fortinet aims to help organizations protect digital assets across on-premises, remote, and cloud settings through scalable security and ongoing subscription services.

Company size
10,001+
Company stage
IPO
Headquarters
Sunnyvale, CA
Founded
2000

Recently Posted Jobs

Explore more opportunities at Fortinet

See more jobs