Current Openings

Current Job Openings

Developer communityLocation: Ottawa ( Kanata ) OntarioJobID: ENGSSD1Posted: Monday, April 22nd, 2013Our System Services Development Group is seeking skilled individuals for development within the QNX operating system. The successful candidate would directly contribute to the design and implementation of the QNX software platform in areas as varied as backup and restore, desktop integration and core software installation services. Due to the importance of these functions to key products, the candidate can expect to have a very direct influence on the future success of the platform. Given the critical nature of the work we undertake, our projects tend to be both high-pressure and exacting with regard to quality at the point of release. Because the requirements the projects realize are frequently hard to elicit or change as the stakeholders learn what is possible, the projects typically avail themselves of lifecycles and methods like Scrum and Lean - understanding how to effectively manage quality through an iterative/incremental lifecycle is a definite asset. Given the System Services commitment to agility, the successful candidate can expect to be treated as a valued member of a team that plans, estimates, commits, executes, delivers and reflects together. You are required to have both a broad experience of technologies and the fortitude to augment their toolbox when a given project takes them into unfamiliar territory. The System Services Development Group applies modern development practices including design patterns, xUnit testing, and refactoring. For documenting design, knowledge of design patterns, UML, and source code documentation tools like Doxygen is required. Commitment to unit, integration and system testing is a precondition to success in this role. As our group values inter-personal communications very highly, excellent written and oral English skills are critical. The ideal candidate is a smart, professional developer who has significant experience but still approaches their work with a hobbyists zeal. Candidates with experience in agile environments, including the key enabling practices of agile development, are preferred. You're a motivated professional looking to advance your career. Search more opportunities

Job Duties

  • Provide technical leadership on critical work that spans multiple groups across both RIM and QNX.
  • Work with an elite, agile team.
  • Develop and maintain components enabling key platform features like backup and restore, security, and software upgrades.
  • Participate in whiteboard design sessions and document the results of these analyses.
  • Provide project estimates for requirements, design, implementation, and testing.
  • Conduct design reviews and code reviews with technical peers.
  • Create and execute automated unit tests.
  • Provide clear communication with development team members, technical leads, and management on project status, risks and approaches.

Experience & Education

  • Bachelors degree in Computer Science, Software Engineering, or equivalent experience.
  • Junior 1-3 years of software development.
  • Intermediate 3-5 years of software development.
  • Senior 5+ years of software development.
  • Experience with relevant languages (C, C++, Python, XML, unix shell scripting).
  • Knowledge of web development technologies like CGI, web server configuration and relevant open source tools.
  • Experience with software development in agile environments for example Scrum, XP and Kanban
  • Ability to work well in team settings.
  • Strong leadership skills.
  • Thorough technical knowledge of software analysis and design techniques, including OOD, design patterns and UML.
  • Experience with POSIX-based Operating Systems.
  • Excellent English communication skills including verbal, written, and interpersonal.

Additional Assets

  • Previous experience with the QNX operating system and tools.