BlackBerry QNX- Senior Systems Software Developer (Open Source)
Ville : Ottawa
Catégorie : Software & Systems
Industrie : IT
Employeur : BlackBerry
Worker Sub-Type:
RegularJob Description:
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.
BlackBerry QNX software is trusted by more than 68% of the Electric Vehicle market by volume, 24 of the top 25 EV manufacturers and is running in more than 235 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:
We are building an Open Source software development team, adding support for the QNX Real-Time Operating System to a large variety of Open Source Software components. We are seeking a highly skilled and motivated Senior Developer (Open Source) to join our dynamic team. In this role, you will lead a team of developers working on our Open Source projects, collaborate with a global community of developers, and drive the adoption and growth of our open source initiatives.
Duties and Responsibilities:
- Provide direction and mentor others in technical best practices
- Use technical expertise to resolve complex problems to meet company objectives
- Employ a goals-based approach to drive action towards a technical best practice fit
- Help to establish module and system level architecture at beginning of projects
- Make “best practice” recommendations for technical approach and process
- Author developer-level technical content, processes and procedures
- Advocate for open source within the company and the broader tech community.
- Troubleshooting and debugging embedded software issues
- Analyse, port, integrate, and optimize Open Source projects onto the QNX Embedded RTOS.
- Work with the Open Source community to upstream QNX relevant changes
- Integrate Open Source Software with different QNX subsystems, such as graphics, networking, USB, audio, sensors
- Integrate Open Source components onto different embedded computing platforms and work with silicon partners to integrate Open Source SW with their HW acceleration blocks
- Develop Open Source-specific porting layers
- Performance optimization, analysis, and tuning
Minimum Required Qualifications:
Education and Experience:
- 7+ years embedded software development, 2+ in a technical or lead role
- Bachelor’s degree in Computer Science, Computer / Software Engineering or equivalent.
- Postgraduate coursework will be counted as years of experience
- Strong software development skills using applicable programming languages (C, C++, Assembly)
- Experience developing, maintaining, and/or porting large open-source projects an asset
- Experience with Linux and/or Android internals
- RTOS development experience an asset
- Device driver experience on any platform is an asset
- Strong analytical and problem-solving abilities
- Excellent communication and interpersonal skills
- Self-motivated
Technical Requirements
- Must have strong C programming skills
- Must have excellent interpersonal and customer service skills
- Must have excellent written and verbal communication skills
- Expertise in embedded development with demonstrated technical direction and mentoring
- Experience working on large projects with high levels of integration
- Excellent problem solving and analytical thinking/innovation, including the ability to identify and analyze technical problems
- Knowledge of GCC and GDB
- Hands on development experience using embedded operating systems (QNX, Linux, GreenHills, VXworks preferred)
- Exceptional time management and multi-tasking skills
- Proven ability to deal with sensitive matters with a degree of diplomacy, tact, and confidentiality
- Enthusiasm and a desire to learn about new technologies
#LI-SK2
Scheduled Weekly Hours:
40