BlackBerry QNX Systems Software Developer II (Open Source)
City : Waterloo
Category : Software & Systems
Industry : IT
Employer : BlackBerry
BlackBerry® QNX® is a trusted supplier of safe and secure operating systems, hypervisors, frameworks and development tools, and provides expert support and services for building the world’s most critical embedded systems. We are the embedded experts. BlackBerry QNX was born in embedded, and provides time-tested and trusted foundation software, including our deterministic microkernel real-time operating system (RTOS), safety-certified products, middleware and security solutions, all purpose-built for embedded systems ranging from automotive, robotics, medical, and more.
BlackBerry QNX software is trusted by more than 68% of the Electric Vehicle market by volume, 23 of the top 25 EV manufacturers and is running in more than 175 million vehicles globally. Our foundation products have been pre-certified to ISO 26262 ASIL D and we offer a broad range of board support packages, professional services, AUTOSAR adaptive support and middleware solutions – from acoustic management, to digital cockpits to advanced driving assistance (ADAS) - to accelerate development and help OEMs meet Start of Production (SOP) dates.
Purpose of Job:
QNX Software Systems is building an Open Source software development team to integrate Open Source software into the QNX Real-Time Operating System for creating embedded solutions for our customers. We need smart software developers with an interest in different multi-platform technologies to augment our products and implement solutions with them.
Duties and Responsibilities:
· Analyse, port, integrate, and optimize Open Source C/C++/Python projects onto the QNX Real-Time Operating System (RTOS).
· Projects include but not limited to TensorFlow, ROS2, Boost, OpenCV, Some/IP, MQTT, DDS, SQLite, Android, GTK, Chromium browser, etc
· Work with the Open Source community to upstream QNX updates and patches
· Integrate Open Source SW with different QNX subsystems, such as graphics, networking, USB, audio, sensors, and multimedia
· Integrate Open Source components onto different embedded computing platforms and work with silicon partners to integrate Open Source SW with their HW acceleration blocks
· Development of OS-specific porting layers
· Performance optimization, analysis, and tuning
Education and Experience:
· Bachelor’s degree in Computer Science, Computer / Software Engineering or equivalent.
· Strong software development skills using applicable programming languages (C, C++)
· Excellent communication and interpersonal skills
· Embedded and RTOS development experience
· Experience with Linux and/or Android internals
· Device driver experience on any platform
· Experience developing, maintaining, and/or porting large open-source projects
Scheduled Weekly Hours:40