07 Nov
|
General Dynamics Mission Systems
|
Calgary
07 Nov
General Dynamics Mission Systems
Calgary
Build bold. Deliver impact. Win together.
At General Dynamics Mission Systems-Canada, we’re not just engineering technology — we’re shaping the future of defence and security. Our teams design and deliver advanced, mission-critical solutions that enhance national security, strengthen communities, and protect the people we serve.
If you’re looking for meaningful work that contributes to a safer, more secure world, you’ll find purpose here. Every day, your skills will directly impact programs that matter.
Job Description
We are currently seeking an experienced Software/Firmware Developer to join our BOWMAN product development team in Calgary, Alberta.
BOWMAN is an advanced tactical communications system that integrates secure digital voice and data technologies to provide reliable communications in complex military environments. The system brings together radio, telephone, intercom and tactical internet services into a flexible, fully integrated solution that supports critical operations.
As part of the BOWMAN development team, you will help design, develop and enhance the software and firmware capabilities that power this mission-critical system. Your work will contribute to a wide range of communications services, including tactical radio networks, data routing and forwarding, headquarters communications, battle management, system management and IT services.
Working within a multidisciplinary Agile team, you will collaborate with software developers, systems engineers and integration specialists to deliver new features, improve system performance and resolve technical challenges throughout the product development lifecycle.
If you’re passionate about developing complex software solutions,
enjoy working close to the hardware and want to see your work contribute to real-world defence capabilities, we encourage you to apply.
As a Software/Firmware Developer, you will:
- Software & Firmware Development: Design, develop, implement and unit test software and firmware components using C++, C# and C to support current capabilities, enhancements and defect resolutions.
- Technical Design: Review and interpret system and subsystem requirements, interface control documents, technical designs and use cases to develop effective software solutions.
- Agile Collaboration: Actively participate in Scrum activities, including sprint planning, daily stand-ups, backlog refinement, sprint reviews and retrospectives.
- Development Planning: Contribute to the estimation, refinement and planning of product backlog items and sprint deliverables.
- Testing & Quality: Develop and execute unit tests, support test-driven development practices and ensure software meets performance, reliability and quality expectations.
- Systems Integration: Collaborate with systems engineering and product integration teams to support the integration and verification of software and firmware components.
- Problem Solving: Investigate software defects, troubleshoot complex technical issues,
perform root cause analysis and implement effective corrective solutions.
- Technical Reviews: Participate in design reviews, code reviews and peer discussions to ensure technical quality, maintainability and alignment with system requirements.
- Cross-functional Collaboration: Work closely with multidisciplinary engineering teams throughout the development lifecycle to deliver integrated communication capabilities.
- Continuous Improvement: Identify opportunities to improve software performance, development practices and engineering processes.
- Customer Support: Provide technical expertise during integration, testing and customer activities, with occasional travel as required.
Qualifications
What You Need to Have to Succeed
- Bachelor’s degree in Software Engineering, Computer Engineering, Computer Science or a related technical discipline, or an equivalent combination of education and experience.
- 5+ years of professional experience in software and/or firmware development.
- Strong programming skills in C++, C# and C, with experience designing, developing, debugging and maintaining complex software applications.
- Experience developing software in Linux and Windows environments.
- Strong understanding of object-oriented programming principles, software architecture and design methodologies.
- Experience with UML, software modelling and technical design documentation.
- Experience developing and executing unit tests, including familiarity with test-driven development practices.
- Working knowledge of Agile software development methodologies, including Scrum.
- Strong understanding of networking fundamentals and communication prot
📌 Software Firmware Engineer (Calgary)
🏢 General Dynamics Mission Systems
📍 Calgary