Overview

Ultra Maritime has an exciting opportunity for a Software Developer to contribute to our rapidly expanding business. The candidate will be responsible for designing, coding, testing, integrating, building, and configuring software applications and interfacing with advanced sonar processing sub-systems deployed in multiple operating systems within virtualized environments. The role would suit a software developer with a keen interest in C++/Java, signal processing and a proven ability to develop software components as part of a wider complex product.

 

Scope:

The Senior Software Developer is responsible for designing, coding, testing, and integrating software components within custom-engineered systems.  The Senior Software Developer mentors and assists more junior team members to achieve the team objectives.

Key Responsibilities:

  • Software component level and detailed design utilizing Unified Modelling Language (UML)
  • Software implementation and unit testing
  • Software integration, verification, and defect resolution
  • Contributing to software design, test, maintenance, and release documentation
  • Contributing to a team effort within an Agile development environment
  • Support the Software and System testing groups as required to conduct software and system integration testing

Required Skills:

  • Degree level (or equivalent) in engineering discipline
  • 5 plus years of C++ andor Java experience
  • Self-motivated, adaptable to change, proactive, diligent, and inter-personal skills
  • Knowledge of Software Engineering best practices, methodologies, processes, and tools
  • Experience with Linux operating systems and comfortable working on the command line
  • Good time management skills and ability to manage own workload

Desired Skills

  • Good understanding of software configuration and build management
  • Experience working with containerized software deployment (specifically Docker)
  • A good working understanding of Microsoft office applications: Word, Visio, and Excel
  • Experience using software development tools and continuous integration tools: Git/SVN, Jira, Azure Devops, Jenkins or similar products
  • Sonar domain knowledge or similar signal processing intensive applications
  • Experience working with hardware and software emulators to conduct testing
  • Experience with technical leadership of complex aspects of software development

Additional Requirements

  • The Candidate must be capable of acquiring a Canadian / NATO Secret security clearance and a Canadian Controlled Goods assessment to the satisfaction of the company
  • While most of the work can be done remotely, the candidate must be available to come into the office to support testing activities.

 

The above statements are intended to describe the general nature and level of work being performed by individuals assigned to this classification. They are not intended to be construed as an exhaustive list of all responsibilities, duties and skills required of personnel so classified. A review of this classification has excluded the marginal functions of the classification that are incidental to the performance of fundamental job duties. All duties and responsibilities are essential job functions and requirements and are subject to possible modification to reasonably accommodate individuals with disabilities to perform this job proficiently. The requirements in this document are the minimum levels of knowledge, skills, or abilities.

 

What’s in it for you?
We offer a competitive benefits package including extended health and dental, life insurance, RRSP, deferred profit sharing, optional critical illness insurance, an EFAP and student bursaries.

We encourage regular manager-employee performance feedback, goal alignment and employee development through our Employee Performance Development Plan (EPDP)

 

We are an Equal Opportunities employer and particularly welcome applications from Women, Aboriginal Persons, Persons with Disabilities and Visible Minorities.