B

Blackberry

Enterprise software and cybersecurity solutions provider

QNX Principal Systems Software Developer

Systems Software EngineeringConfirmed live in the last 24 hours
Full-timeOttawa, ON, CanadaIn-person

About the Job

Requirements

  • Strong expertise in C programming, particularly in resource-constrained and embedded environments.
  • Deep understanding of operating system fundamentals, including process and thread lifecycles, memory management, system calls, inter-process communication, scheduling and concurrency, and resource management.
  • Experience working with POSIX-based operating systems.
  • Understanding of multicore, multithreaded, and real-time system architectures.
  • A bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent experience.

Responsibilities

  • Design, develop, and enhance core operating system technologies at the kernel and system level.
  • Drive innovation and provide technical leadership for QNX Kernel and Core OS research and development initiatives.
  • Influence the future direction of the operating system through architecture, design, and performance improvements.
  • Develop robust software specifications and designs that address complex customer and industry requirements.
  • Collaborate with fellow engineers through design and code reviews to maintain engineering standards.
  • Implement high-quality, performant, and reliable code across critical OS subsystems.
  • Develop and execute automated unit tests to ensure software quality and maintainability.
  • Troubleshoot, analyze, and resolve complex system-level issues across hardware and software layers.
  • Contribute to continuous improvements in system reliability, security, safety, scalability, and performance.
  • Help estimate and plan development efforts across requirements, design, implementation, and testing activities.

Desired Qualifications

  • Experience developing system-level software on QNX, including resource managers, system services, or development tools.
  • Expertise in performance tuning, memory analysis, profiling, and post-mortem debugging.
  • Experience with Git, SVN, and GNU development toolchains.
  • Low-level programming experience in Assembly and register-level hardware interaction.
  • Experience with ARM and/or x86 architectures.
  • Deep expertise in embedded and real-time operating systems.
  • Knowledge of compiler technologies and optimization techniques.
  • Strong understanding of software architecture, analysis, and design methodologies.

About the Company

Blackberry

Enterprise software and cybersecurity solutions provider

BlackBerry focuses on enterprise software and cybersecurity after transitioning from hardware. It provides secure software solutions for business communication, collaboration, and mobile device management, along with security analytics and threat detection. The product suite typically includes enterprise mobility management, secure messaging and data protection, and endpoint security services for organizations. BlackBerry’s approach centers on protecting corporate data and identities, with services that manage devices, apps, and networks while monitoring for cyber threats. The company differentiates itself by emphasizing security, governance, and risk management for enterprise customers, integrating threat intelligence and analytics. The goal is to help businesses stay secure, compliant, and productive in a mobile-first world.

Company size
1-10
Company stage
IPO
Headquarters
Waterloo, Canada
Founded
1984

Recently Posted Jobs

Explore more opportunities at Blackberry

See more jobs