Worker Sub-Type:
Regular
Job Description:
QNX® is a trusted supplier of safe and secure operating systems, hypervisors, frameworks and development tools, and provides authoritative support and services for building the world’s most critical embedded systems. We are the embedded authorities. BlackBerry QNX was born in embedded, and provides time-tested and trusted foundation software, including our deterministic micro kernel real-time operating system (RTOS), safety-certified products, middleware and security solutions, all purpose-built for embedded systems.
With the evolving landscape of safety (ISO2626) and security (ISO21434) required standards, QNX is in need to increase its developer productivity by scaling internal processes to benefit from more automation.
As a successful candidate, you will be a member of a dedicated, passionate product development team which builds, delivers, and supports Blackberry QNX. Your role will provide you with exciting opportunities to define, optimize and improve developer infrastructure to make processes more efficient and streamlined.
The QNX Build team supports the broader QNX developer community by maximizing the effectiveness of the company's build infrastructure. Our automation, packaging, and maintenance forms the basis for continuous stability and improvement of QNX products, including the QNX real-time operating system.
As a member of our team, you will contribute to the management of the build infrastructure, development of build processes, support of continuous integration techniques, and handle configuration management for a suite of continuously evolving QNX products.
What you will do:
Work with the QNX engineering and process teams to drive the evolution of QNX’s tool-based process (code build, static analysis, automated testing, release automation.)
Develop tooling (in Python, Groovy, Bash and a variety of other languages) to improve the build, packaging, and release processes for software (particularly C/C++)
Develop pipelines using Jenkins and Gitlab.
Maintain build team infrastructure using IaC approaches (Docker, Terraform, Ansible)
Manage internal customers
Mentor team members
What you will need:
An Information Technology, Computer Science or Engineering degree, or equivalent work experience
Experience with languages such as Python, groovy, bash
Experience with source code management tools such as Git, SVN (branching, merging, tagging)
Experience with pipeline languages (E.g. Jenkins, Gitlab)
Experience with Containerization, Virtualization and container orchestration (E.g. Docker, docker swarm, kubernetes)
Experience with cloud solutions such as AWS, OpenStack
Hands-on experience working with automated CI/CD environments such as Gitlab, Github and Jenkins
Proven ability to take ownership of problems and see them through to resolution
Great verbal and written communications skills
A love for automating tasks and problem solving
Interesting skills you have:
Experience with embedded software development
Experience with Artifact Repositories such as Artifactory or Nexus
Familiar with GNU make and makefile syntax
Experience compiling C/C++ projects using the GNU Compiler Collection (GCC)
Experience with building CRUD apps and REST APIs
Experience with building simple web pages
Experience creating packages for a package manager.
#LI-KH1
Scheduled Weekly Hours:
40
Compensation Hiring Base Salary Range:
$80,000.00 - $105,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…