MDA has recently started a project to provide a national mission management system application. It will be a cutting edge single-page application on modern, open micro-service architecture in a back-end cloud-based environment. This work builds upon previous Command and Control system work that MDA has done with the RCN and DND over the last 20 years. The project team needs a senior software engineer to lead development and champion the delivery of this application.
The candidate will lead a cross-functional software engineering team in the assembly of a collection of services into a functioning command and control system. They will roll-up their sleeves and contribute to coding as need and they will also lead the team in orchestrating sprints, auditing code reviews, and, ensuring appropriate documentation. They will communicate effortlessly when being the main intermediary between the system design team and the software developers. The candidate will draw from their software development experience that includes establishing a development environment for micro-services, guiding a team of developers and successfully delivering a mature, supportable military-grade software application.
Discuss and brain-storm design concepts generated by the design team
Plan software development in an iterative/incremental method
Coordinate design and architecture principles with software engineers team
Facilitate all software development team meetings
Be responsible for resolving all software issues and defects
Guide and mentor the Software Team in delivering working components
Lead prototyping, detailed software design, code and unit test and integration test for each software increment/release
Monitor software quality metrics and integration testing results
Produce software release documentation
Support Testing Team in requirements testing
Participate in Continuous Improvement
Candidate' s Profile
University Degree in Computer Science, Computer/ Engineering
Minimum of 5 years&rsquo experience in the last 10 years creating and modifying code and developing and maintaining software
Preference for those with 10 years&rsquo experience in the last 15 years for the above
Must have minimum of 3 years&rsquo experience programming in Java
Must have experience in deploying Java micro-services
Strong knowledge of and experience with object-oriented software design
Strong knowledge of and experience with data modelling
Experience with structured unit testing and regression testing
Strong software development experience, from detailed design through test and deployment
Effective communication, both verbally and written
Experience with Docker, Kafka, Apache Camel, Avro, MongoDB/NOSQL, Kubernetes
Experience with GitLab, JIRA, Jenkins
Experience with selection and use of Open-Source libraries for GIS, Logging, Micro-Service
Experience with an Agile Development Framework such as Scaled Agile Framework (SAFe® )
Knowledge of software design patterns
Familiarity with DevOps, Behaviour Driven Development and Agile processes
Knowledge of search and rescue operations in Canada
This position is based in Halifax.
Successful candidate(s) must hold or be able to obtain necessary security clearance.
MDA provides customers around the world with essential information solutions used for decision making. Our employees enjoy challenging careers with opportunity for growth and learning.