Software Development is a highly technical, detail-oriented role focused on building and maintaining scalable applications that power real-world solutions. The ideal candidate combines deep programming knowledge with strong architectural thinking, working closely with cross-functional teams to deliver clean, reliable, and maintainable code. With expertise in C#, .NET, and modern development workflows, they take ownership of the full development lifecycle - from design and implementation to testing and deployment. The best match for this position is proactive, quality-driven, and passionate about continuous improvement - elevating both the product and the development process with every contribution.
The mission of this role is: ?Creating software that?s ready for users, not just ready to build.?
*Why AML?*
At AML, we?re always on the hunt for passionate team players who want to make a difference. AMLers commit their hands, their heads, and their hearts to their position. There are no sidelines. This is not corporate marketing: Glassdoor ratings score AML at 4.70 on 5.00. Our eNPS numbers are equally impressive, with a +62 response to the question: ?Do you enjoy working at AML??
AMLers cite five main reasons as to why they choose us: our culture, the people, our growth trajectory, transparency and workplace flexibility. Interested? Then you?ll want to know more about what we do. AML designs and manufactures ocean-sensing solutions ? sensors, instrumentation, and deployment systems ? for customers on all seven continents. We have a market reputation for going to the ends of the earth to make our customers successful, enabling them to focus on oceanography, not the equipment.
As a hi-tech manufacturing business, our technical team includes experts and engineers with experience in the acoustic, mechanical, electrical, software and embedded software domains. We operate from locations at either end of Canada.
*What you?ll do:*
* *Drive Technical Design & Implementation: *Lead the design, development, and deployment of robust Windows applications using C#, .NET, and WPF. Ensure scalability, performance, and maintainability in production-grade software.
* *Shape Architecture & Code Standards: *Contribute to architectural discussions and help define standards for code quality, testing, and documentation. Evaluate and recommend design patterns, frameworks, and tooling.
* *Mentor & Collaborate: *Provide technical guidance to junior and intermediate developers through code reviews, pair programming, and knowledge sharing. Foster a culture of learning and continuous improvement.
* *Agile Delivery & Product Collaboration: *Actively participate in sprint planning, backlog grooming, and daily standups. Work closely with product managers, designers, and end users to refine requirements and deliver business value.
* *Modernize & Optimize: *Contribute to efforts that improve legacy systems, refactor technical debt, and adopt modern .NET practices (e.g., .NET 6+, async/await, dependency injection, MVVM frameworks).
* *Cloud & Data Integration: *Build and optimize integrations with SQL Server and Azure cloud services, including Azure SQL, App Services, and cloud-based deployment pipelines.
* *Deploy with Confidence: *Support smooth and reliable deployments using ClickOnce, MSIX, and Azure DevOps CI/CD pipelines. Participate in planning for automated testing and monitoring.
* *Continuously Learn & Lead Innovation: *Stay current with industry trends, tools, and best practices. Proactively introduce improvements and new technologies that enhance performance, usability, and development speed.
*Accountabilities:*
* *Ship Production-Ready Code:* Design, develop, and deliver clean, well-structured, and fully tested C#/.NET code that is ready for deployment with minimal rework.
* *Own the Software Lifecycle: *Take responsibility for the full development cycle?planning, development, testing, code review, deployment, and post-release support.
* *Imple
The median wage is the salary of a given occupation where half the workers earn more than that amount, and half earn less. This information is presented on job postings to help job seekers determine how the salary compares to the amount earned by other workers working the same job. Job Bank preferred indicating the median wage, which is less affected by extremely high or low wages, rather than the average wage which is calculated by adding up all the salaries of a group of people and then dividing that total by the number of people.