BlackBerry QNX - Software Developer in Test II
Are you interested in working with a talented team that is at the core of everything we do? The QNX Core OS test team is seeking talented individuals with a mind for details and passion for quality. You will contribute to the testing and delivery of QNX’s development tools. QNX customers use the development toolchain to build products with QNX technology that controls systems in everything from automobiles to internet, from medical devices to space systems, and from manufacturing to nuclear power plants.
Responsibilities include development and execution of automated testing for QNX development tools which involves a mix of in-house tools and the GNU toochain. QNX development tools include compiler, linker, debugger, analysis tools for memory usage, CPU usage, application profiling, etc. The ideal candidate is an individual with an understanding of how operating systems work, how to build, run, and validate binary software images. The candidate should be able to debug complex problems and must possess the ability to implement new verification and validation techniques.
- Working with OS tools development team to analyze and test new features, investigate and resolve customer reported problems and provide interim testing support for experimental software.
- Creating or updating test plans and test cases based on new tools features, customer requirements or identified problems.
- Developing and optimizing automated test cases with continuous improvements in coverage and efficiency
- Providing solid traceability from software requirements to test specifications to test cases to test results
- Identifying and running a series of tests against new tools builds on reference and/or customer hardware
- Analyzing test results, debugging observed issues, generation of defect reports, verifying fixed issues, updating pre-existing defect reports.
- Creating test reports based on test results for internal and external audiences with high attention to detail.
Essential Skills and Qualifications:
- University degree in computer science, engineering (or equivalent)
- Junior or Intermediate level experience in embedded test, design and engineering
- 2+ years as a C/C++ developer in an embedded environment
- Strong working knowledge of Python and shell scripting
- Working knowledge of QNX or other embedded operating system
- Working knowledge of GNU toolchain, either on QNX or on UNIX
- Familiar with Continuous Integration build systems (Jenkins, Hudson)
- Familiar with source versioning, problem reporting and constant integration systems (SVN, Git, JIRA, Jenkins)
- Knowledge of formal test theory, test methodology, and ISO9001 quality management.
- Experience in developing automated tests and testing tools.
- Ability to enable automation for manual tests and automate test result processing.
- Able to write clear and concise problem reports
- Familiarity with common processor architectures (i.e. 32-bit and 64-bit variants of x86/ARM)
- Ability to work and participate in a team setting with an open, collaborative communication style
- Excellent communication, presentation, and organizational skills are necessary
- Enthusiasm, a passion for quality and a desire to learn about new technologies is a requirement!
Scheduled Weekly Hours:40