Returning Candidate?

Verification / Software Engineer

Verification / Software Engineer

Job ID 
Job Locations 
Technical / Engineering
Permanent Full-Time

More information about this job


As a NovAtel Verification Engineer you will contribute to software development as part of a tightly integrated, collaborative agile team of talented developers and testers. The initial focus of this role will be on verification and test automation, with a progression towards firmware development.

The Platform Software team brings the hardware to life and provides the infrastructure that other teams build upon to create solutions for customers.  Working closely with a broad range of software and hardware developers you will ensure our internal customer demand is being met with software having the highest standards of quality.


  • Use your understanding of the complexities of real-time firmware to design ways to provoke race conditions and other possible concurrency issues within the code.
  • Work closely with system engineers, developers and verification engineers to understand requirements for the purpose of developing test strategies and setups.
  • Implement automated tests in Python and deploy them in a continuous integration system.
  • Learn and use some of the latest tools for test automation and requirements compliance.
  • Develop and document new test procedures and frameworks for efficient and effective automated testing.
  • Troubleshoot test failures and investigate issues, including delving into source code.
  • Implement bug fixes and new features in embedded firmware using C++.



  • Post-secondary degree, preferably in Computer Science, Electrical, Computer, or Software Engineering.
  • 0-3 years experience in a high technology manufacturing environment.
  • Experience in Python or similar scripting languages.
  • Experience in C++ or similar systems programming languages.
  • An ability to learn quickly and apply knowledge to solve real world problems.
  • Strong communication skills, both oral and written.

Key Success Factors:

  • You enjoy coding, and want to get better at it.
  • You work well in a collaborative team environment.
  • You are comfortable working individually yet know when to ask for help.
  • You view documentation as critical to the long term success of your work.
  • When you see a problem, you're compelled to solve it.
  • You have an interest in embedded systems. (e.g., tinkering with Raspberry Pi or Arduino).


  • Experience in embedded software development using C++ and real-time operating systems.
  • Experience with continuous integration systems, especially Jenkins.
  • Knowledge of communication protocols and interfaces, such as TCP/IP, CAN or USB.
  • Knowledge of wireless communications technologies, such as UHF, cellular or WiFi.
  • Knowledge of GPS/GNSS.

Turning customer ideas into a competitive advantage is what we do. NovAtel's integrated global positioning solutions deliver success on land, sea and in the air. We help many of the world's top companies stay in the lead by consistently delivering OEM global satellite positioning products that are recognized for their technical innovation, unsurpassed quality, fast delivery and industry-leading customer support. We empower skilled people to expand the boundaries of what is possible.