Software Development Engineer (C3D Programme Centre)
Build the software at the heart of mission-critical systems that help mission teams sense, understand, decide and act with confidence when it matters most. As a Software Development Engineer, you will transform complex operational challenges into dependable software, engineer capabilities across the full technology stack, and see your work make a tangible impact on real-world missions.
At DSTA's Command, Control and Communications Development (C3D) Programme Centre, we develop software systems that enable the SAF and government agencies to execute their missions successfully. We are looking for curious, driven and technically strong engineers who enjoy solving complex problems end-to-end, from understanding operational needs and shaping requirements to designing resilient architectures, building software, integrating systems, and validating mission capabilities.
What can the team offer you?
Our Team
Join a multidisciplinary team of developers, architects, product managers and UX designers who are passionate about building meaningful software. Collaborate on high-impact engineering challenges in an environment that values curiosity, technical excellence, rigorous thinking, teamwork and continuous learning.
Career Opportunities
Work across diverse projects ranging from rapid prototyping to operational Command and Control (C2) systems spanning Air, Land, Sea and Whole-of-Government domains. Develop expertise in frontend and backend engineering, GIS, cloud, DevSecOps, data, AI, robotics, cybersecurity, IoT and system integration, while growing into architecture, technical leadership and product-oriented roles. You will be encouraged to take ownership, experiment, share knowledge and collaborate with research and industry partners to transform emerging technologies into operational capabilities.
Professional Development
Benefit from structured onboarding, mentorship, a buddy system and technical training from day one. Through DSTA Academy programmes, industry-led courses, hands-on delivery and peer learning, you will build practical expertise in software engineering, systems engineering, architecture, verification and validation, and responsible use of AI-enabled development tools.
Culture
We believe great software is built by empowered teams. You will have the autonomy to contribute ideas, challenge assumptions, make sound technical decisions and take ownership of outcomes while enjoying a collaborative environment that supports sustainable performance and work-life balance.
Once here, you will
- Work with product managers, UX designers, developers and mission stakeholders to understand operational challenges and translate them into effective software capabilities.
- Engineer mission-critical C2 applications, contributing to architecture, software design and technical trade-offs involving performance, resilience, security, safety, scalability and maintainability.
- Design and build user interfaces, geospatial capabilities, backend services and integration components across web, mobile and thick-client platforms.
- Plan and execute system integration, verification and testing, troubleshooting issues across software, interfaces, networks and infrastructure to ensure reliable end-to-end operations.
- Leverage DevSecOps, automation, AI-assisted development and modern engineering practices while maintaining ownership of requirements, architecture, code quality, cybersecurity and testing outcomes.
- Raise engineering standards through code reviews, design reviews, technical discussions, experimentation and communities of practice while continuously learning and sharing knowledge with fellow engineers.
Minimum Qualifications
- Bachelor's degree in Computer Science or a related field.
- Candidates with more than two years of relevant experience may be considered for a Senior Software Development Engineer position.
Relevant Experience and Mindset
We do not expect experience in every technology listed below. We value strong engineering fundamentals, learning agility, sound judgement, and the ability to focus on user and mission outcomes.
Strong Engineering Fundamentals
- Proficiency in one or more programming languages such as Java, C++, Python, or JavaScript, with the ability to learn new languages and frameworks.
- Good understanding of data structures, algorithms, design patterns, and software design principles, and the ability to apply them to real-world problems.
Building Software Systems
- Interest in or experience across the software engineering lifecycle, including requirements analysis, software design, system architecture, integration, systems engineering, and testing.
- Exposure to web and application technologies, including frontend frameworks (e.g. ReactJS), mobile platforms, thick-client applications, or Geographic Information Systems (GIS).
- Familiarity with system integration concepts such as REST APIs, WebSockets, networking and messaging protocols, authentication, authorization, and distributed systems.
- Understanding of relational and NoSQL databases and their impact on performance, reliability, and scalability.
- Ability to design, integrate, troubleshoot, and validate scalable, resilient, secure, and reliable end-to-end systems.
Engineering Mindset
- Ability or potential to translate user and mission needs into effective technical solutions through critical thinking and sound engineering judgement.
- Openness to using AI-assisted and agentic development tools responsibly while maintaining ownership of architecture, design, code quality, and system behaviour.
- Passion for software engineering, solving complex problems, and continuously learning new technologies.
- Ability to thrive in a collaborative environment that values rapid iteration, constructive challenge, and shared ownership.
- Strong analytical, communication, and problem-solving skills, including the ability to explain technical concepts to diverse audiences.
Bonus Qualifications
Software Delivery
- Experience with Agile practices and software development methodologies such as Scrum or Extreme Programming.
- Knowledge of DevSecOps, CI/CD, infrastructure automation, and version control tools such as Git.
Modern Platforms
- Experience with cloud platforms such as AWS or Microsoft Azure.
- Knowledge of Docker, Kubernetes, microservices, and modern application architectures.
Systems Engineering
- Experience with system architecture, interface definition, integration planning, verification and validation, acceptance testing, or distributed system troubleshooting.
Engineering Practices
- Knowledge of secure coding, cybersecurity, Domain-Driven Design (DDD), and Test-Driven Development (TDD), particularly in mission-critical environments.
- Experience with Linux, observability tools, diagnostic tooling, or AI-assisted software development tools.
Application Instructions
If you are excited by solving complex engineering problems, building mission-critical software, and growing alongside advances in software engineering and AI-assisted development, we look forward to hearing from you.
Skills
- Agentic AI
- Agile
- AI
- API
- Authentication
- Automation
- AWS
- Azure
- CI/CD
- Cloud
- C++
- Cybersecurity
- Design Patterns
- DevSecOps
- Distributed Systems
- Docker
- GIS
- Git
- Java
- JavaScript
- Kubernetes
- Linux
- Microservices
- Networking
- NoSQL
- Observability
- Prototyping
- Python
- React
- REST
- Scrum
- Secure Coding
- TDD
- Version Control
- Websockets