15 Aug
|
Ndeva
|
Melbourne
Software Engineer (Systems / C++ / Rust)
We are partnering with a Melbourne-based deep-tech company building autonomous optical systems for defence and national security.
They combine advanced optics, software, AI and edge computing to solve complex real-world problems, with technology being deployed on drones, unmanned systems and real aircraft.
They’re looking for a Software Engineer to join a newly formed Platform team responsible for the shared software layer that sits underneath their products.
About the role
This is a hands-on software engineering role for someone who enjoys solving complex systems-level problems and working close to hardware.
The Platform team is responsible for building and evolving the reusable software capability that other engineering teams build on top of. This is not a DevOps or SRE platform role.
You’ll be working on an existing platform, taking ownership of meaningful parts of the system and helping it evolve to support multiple products, technical disciplines and future capabilities.
You’ll work closely with engineers across computer vision, machine learning, control systems, hardware and product, helping make complex lower-level problems easier for those teams to work with.
What you’ll be doing
- Build and improve the shared software platform underpinning their products
- Take ownership of significant parts of an existing complex system
- Design reusable libraries, tooling and platform capability for other engineers
- Work closely with Computer Vision, ML, Controls, Hardware and Product teams
- Solve problems across performance, memory,
concurrency and system behaviour
- Build validation and benchmarking tooling to help measure system performance
- Support the integration of new algorithms and technical capabilities into the wider platform
- Contribute to architecture, technical design and engineering decisions
- Debug complex problems across software and hardware boundaries
- Help evolve the platform as the business moves from supporting one product to multiple products
- Work with a high degree of autonomy in a small, highly technical team
Technical setting
Currently uses Rust, but previous Rust experience is not essential.
Relevant backgrounds could include
- C++
- C
- Linux
- Embedded or systems software
- Real-time or performance-sensitive systems
- Networking / distributed systems
- Concurrency and multithreading
- Hardware integration
- Robotics
- Autonomous systems
- Computer vision / imaging
- Simulation
- 3D graphics / game engines
- CUDA
About you
You’re a strong hands-on software engineer who enjoys understanding how systems work beyond an individual function or service.
You’ll ideally have:
- Strong software engineering fundamentals, ideally with C++, C, Rust or another systems-oriented language
- Experience working on complex, performance-sensitive or hardware-adjacent software
- Strong systems-level thinking and the ability to understand how different parts of a system interact
- Experience taking ownership of meaningful software components or subsystems
- Strong debugging and problem-solving skills
- An understanding of areas such as performance, memory management, concurrency or real-time behaviour
- Experience working with engineers from different technical disciplines
- The ability to operate autonomously and make sound technical decisions
- Curiosity and a willingness to work in technical areas you may not already be an expert in
You do not need to be a Computer Vision, ML or Controls specialist, but you should be comfortable working alongside engineers in those areas and understanding enough of the concepts to make good software decisions.
Why join?
- Work on genuinely complex software connected to real physical systems
- See the technology you build deployed on real aircraft and autonomous platforms
- Help shape a new Platform team from the ground up
- Work across software, AI, computer vision, controls and hardware
- Take meaningful ownership rather than working on a narrow part of the stack
- Solve technical problems that don’t have obvious existing answers
- Work in a small team with a high level of autonomy and technical influence
Location: Port Melbourne
Hybrid: 3 days on-site
Australian citizenship required due to security clearance requirements.
📌 Software Engineer (Melbourne)
🏢 Ndeva
📍 Melbourne