Worker Sub-Type:
Regular
Job Description:
QNX, a division of BlackBerry Limited (NYSE: BB; TSX: BB), provides the trusted foundation that software-defined and physical AI systems depend on to operate safely and predictably in the real world. For nearly half a century, QNX has powered safety-critical applications where failure is not an option. The business leads the way in delivering safe and secure operating systems, hypervisors, middleware, solutions, and development tools, along with the support and services delivered by trusted embedded software experts. Today, QNX technology underpins hundreds of millions of vehicles on the road and a wide range of mission-critical systems across industrial controls, robotics, medical devices, commercial transportation, rail, and aerospace and defense.
Are you the person we are looking for?
The Product Engineering unit is focused on product opportunities as they relate to our markets and the growth of our product portfolio considering the future technology. In this role, you will be responsible for maintaining and augmenting the graphics subsystem (Window system, Display controllers and GPU drivers) on both native and virtualized systems. You must be someone with ideas and real passion for software delivered to maximize reuse, efficiency, and simplicity. Our customers count on us to convert awesome ideas into great products and services.
We thrive in a culture of innovation, technical depth and breadth, exploration and experimentation and provide great career growth opportunities. In return for your skills, expertise, and passion, we will provide you with an attractive compensation & bonus package with excellent benefits. Join us and you will become part of a team that is already leading the way and has even bigger plans for the future. What we are working on is truly ground-breaking!
You will:
Develop 2D and 3D graphics drivers for a wide range of GPU’s and maintain QNX Graphics subsystem (Display, GPU, Window system, font engine).
Read technical register documentation and schematics
Create and document software specifications and designs that address the needs of QNX customers.
Unit test and debug implementations on all relevant target architectures for the project (ex. ARM and X86).
Identify, analyze, and resolve potentially complex problems and inadequacies in software.
Integrate QNX Hypervisor and Android onto embedded hardware platforms.
Provide project estimates for requirement, design, implementation, and test efforts.
Maintain an in-depth understanding of current software department approaches and standards through communication with development team members, technical leads, and management.
You will have:
Bachelor’s degree in Computer Science, Computer Engineering or Engineering related field, or equivalent practical experience with a proven track record in technical roles
Proven and significant driver development experience in C, C++ and assembly language.
Proven experience in 2D and 3D graphics
Expertise in embedded systems on major processor architectures (ARM, x86, PPC, etc.)
A thorough understanding of Operating System concepts (virtual memory, multithreading etc.)
Expertise in troubleshooting and debugging (by instrumentation, trace logging, core-analysis, applying various tools to extract information, code-reviews, JTAG, etc.)
Strong analytical skills, software debugging skills and troubleshooting skills, hands-on experience with the tools and techniques necessary to perform root cause analysis, and ability to come up with win-win solutions in complex business situations.
Excellent communication, interpersonal and collaboration skills to work with a diverse, global set of internal and external stakeholders.
If you have any of these then that would be great:
Familiarity with OpenGL/OpenGL ES/Vulkan
Linux graphics subsystem (x11/Wayland)
Programming experience in a POSIX environment
Familiarity with the QNX Neutrino RTOS
Work closely with QNX customers and 3rd party HW 2D/3D vendors.
Graphics application development (e.g. video games)
Graphics debugging
Graphics optimization
Graphics virtualization
Familiarity with display controllers.
Familiarity with Android and WebGL implementations
#LI-KH1
Scheduled Weekly Hours:
40
Compensation Hiring Base Salary Range:
$90,000.00 - $132,000.00
Please be advised that the compensation hiring range indicated herein is provided solely as a good-faith estimate of expected base compensation for the position. The actual compensation offered will be determined at the time of hire and is contingent upon multiple factors, including but not limited to the candidate’s qualifications, relevant experience, demonstrated skills, and results of assessments conducted during the hiring process.
Bonus:
The BlackBerry Variable Incentive Pay (VIP) program is an organization-wide bonus incentive program which aims to reward full-time eligible employees for their contribution to BlackBerry’s success. VIP payments are made in addition to base salary and factor in company’s performance as a way for employees to share in BlackBerry’s achievements.
Benefits:
The BlackBerry Employee Benefits programs offer a wide range of benefits that support your physical, financial and personal well-being. BlackBerry remains committed to offering affordable benefits including coverage for medical, dental, vision, life, disability insurance, retirement, employee share purchase program and paid-time-off to those that meet the eligibility requirements.
Disclosure of Position Status:
This is an active opening. We are seeking to fill this position immediately
Disclosure of Artificial Intelligence:
We do not use artificial intelligence (AI) to screen, assess, or select applicants at any stage of our recruitment process. All applications are reviewed and evaluated by our hiring team.
Skills Required
- Bachelor's degree in Computer Science, Computer Engineering or related field
- Proven driver development experience in C, C++ and assembly language
- Proven experience in 2D and 3D graphics
- Expertise in embedded systems on ARM, x86, PPC architectures
- Understanding of Operating System concepts (virtual memory, multithreading)
- Expertise in troubleshooting and debugging software
What We Do
BlackBerry (NYSE: BB; TSX: BB) provides intelligent security software and services to enterprises and governments around the world. The company secures more than 500M endpoints including 195M+ cars on the road today. Based in Waterloo, Ontario, the company leverages AI and machine learning to deliver innovative solutions in the areas of cybersecurity, safety and data privacy solutions, and is a leader in the areas of endpoint security, endpoint management, encryption, and embedded systems. BlackBerry’s vision is clear - to secure a connected future you can trust.







