Embedded Software Engineer

Silentium Defence
Adelaide
Information & Communication Technology
Engineering - Software
Full time
Posted 26d ago

About us 

Silentium Defence (SD) is a growing deep tech business shaping the future of Australia’s ground and space surveillance capability. We specialise in the development of passive radar solutions for Defence and civilian customers. But what are passive radar solutions, you ask? 

Passive radar uses pre-existing sources of radio frequency energy (such as broadcast TV and radio waves), to track objects in an environment. It provides similar information to traditional radar systems but does not emit any RF signals. This means the user can maintain their situational awareness without advertising their presence. In essence, to ‘see without being seen’. 

Our technology is a game changer for Defence and we’re on a mission to create a new era in surveillance. We have a highly skilled, high-performing collaborative team and are looking for people as passionate as we are to grow our business and make impact on a global scale. What drives us every day is knowing we’re a small part of a bigger picture to protect our incredible country and its critical infrastructure assets for many generations to come. 

About the role 

We’re looking for an experienced Embedded Software Engineer (ESE) to support our Radar Algorithms Team Lead on a full-time, permanent basis. 

The ESE provides specialist software development skills, supporting the development and maintenance of SD’s back-end signal processing code, including interfaces to processing hardware. They play a critical role in ensuring that the code underpinning SD’s passive radar systems is efficient, tested, bug-free and maintained in accordance with best practice software development standards. 

Initially there will be a strong focus on refining the existing code base, ensuring that SD’s products are ready for market. This work will involve both new developments, taking design guidance from SD’s Radar Algorithms Team Lead, as well as optimisation of existing code.

The ESE will be developed into an authority on portions of SD’s signal processing code and become responsible for ensuring the quality and functionality in these areas. They will work closely with the Radar Algorithms Team Lead to determine how the back-end signal processing design is to be evolved as new features are added. 

What we’re looking for

Our ESE is confident and experienced in software development, capable of answering questions like: ‘how does this work?’, ‘why is this broken?’, and ‘how should we implement this new feature? They are a team player who is comfortable in mentoring junior engineers and providing code reviews of their peer’s work.

A deeper dive into what you’ll be doing

Providing support to the Radar Algorithms Team Lead, taking on back-end software development tasks that may include:

  • Implementing features in accordance with system design and project requirements
  • Optimising performance and increasing the quality of the existing software 
  • Interfacing with hardware, both bespoke and off-the-shelf
  • Developing GPU-accelerated processing algorithms using CUDA
  • Contributing to discussions and planning for system development activities
  • Becoming an authority on the development and maintenance of sections of the back-end signal processing code base

Ensuring the quality of the relevant sections of the back-end signal processing code base by:

  • Documenting the design of signal processing features and algorithms
  • Developing code in accordance with company standards 
  • Develops automated unit tests for existing and new features
  • Investigating and fixing bugs in the code as they are found
  • Keeping design, user and test documentation up to date

Working effectively and collaboratively as an active member of the development team by:

  • Contributing to regular planning activities
  • Providing advice and mentoring to junior engineers
  • Performing code reviews of peers’ work

Supporting the wider SD team with related activities including participation in trials, demos and field support. 

What you need 

  • NV1 clearance or eligible for clearance (must be an Australian citizen)
  • Bachelor's degree in Software Engineering or another relevant technical subject
  • 5+ years of relevant work experience
  • Specific coding experience in C++ (essential), Python & CUDA (desirable), and exposure to middleware such as ZeroMQ (desirable)
  • An in-depth understanding of the Linux operating system including customisation
  • Strong understanding of real-time systems, managing interrupts, threads, scheduling, etc.
  • Sound knowledge of computer architectures, HW/SW interfaces
  • Has worked on the development of real-time embedded systems, preferably including high-throughput signal/data processing
  • Ideally has experience with radar and/or EW systems in a Defence context
  • Experience developing automatable unit tests is desirable

What we offer? 

  • Employee Assistance Program (EAP)
  • Wellness sessions 
  • Monthly team BBQs 
  • Team building events 
  • End of year social events 
  • Training and Development Programme 
  • Team Support Program 
  • Remote Team Support Programme 
  • First Aid and CPR training 
  • Parental leave 
  • Paid Professional Association Membership

Interested? 

The role is based in Adelaide and will report to our Radar Algorithms Team Lead, Nigel Dahlenburg. To learn more please contact our People and Culture Associate, Stephanie Haines, at Recruitment@silentiumdefence.com.au

Employer questions

Your application will include the following questions:
  • Which of the following programming languages are you experienced in?
  • How many years' experience do you have in a software development role?
  • Which of the following statements best describes your right to work in Australia?
  • How many years' experience do you have as an Embedded Software Engineer?
  • Have you worked in a role which requires a sound understanding of the software development lifecycle?

Report this job advert

Be careful
Don’t provide your bank or credit card details when applying for jobs.
Learn how to protect yourself here.