About the role DroneShield is seeking a Algorithms Software Engineer with relevant experience to join the team in Sydney, Australia The position will report to the Team Lead, RFAI. The primary focus of the role is to develop and maintain DroneShield’s RFAI Detection Capability, working closely with ML/AI, Data Science, RF and infrastructure teams to innovate and enhance DroneShield’s world leading Anti-Drone technology. Responsibilities, Duties and Expectations Take drone detection algorithms from design to production using C++, working closely with a team of Algorithm and Software Engineers. Develop and maintain simulation software used to assist algorithm development. Design and implement data analysis and algorithm evaluation pipelines. Conduct unit testing to ensure software quality and reliability. Develop and maintain CI/CD pipelines. Assist software & hardware development teams to make informed decisions about the future direction of complex deployed system design. Advance the development of software architecture design processes within the team. Ensure software is designed for reliability, and performance on resource-constrained targets. Who you are You are comfortable deploying state of the art algorithmic models to deliver commercial value You are a lifelong learner. You’re self-taught and continuously learning. You are interested in keeping up with current best practices in your areas of expertise You are experienced working with modern infrastructure and tools You are comfortable running your software in Linux environments An abundance of ambition and motivation to grow the company and compete with the big players in the industry Qualifications, Experience and Skills Bachelor’s (or higher) degree in Computer Science, Electronics Engineering, a similar technical field of study, or equivalent practical experience 3 years of software development experience (preferred: Python, C++) Ability to work in a multidisciplinary team, including communicating effectively with engineers from non-software / data science backgrounds Ability to turn complex algorithms and mathematical models into high-performance software, operating on sensor data Working knowledge of modern architectural patterns and software design patterns Experience with the following: At least one compiled language (Go, C++, or C) At least one scripting language (Python, JavaScript, or Shell) Digital Signal Processing concepts and techniques Embedded Linux platforms Test Driven Development Revision Control Continuous Integration Note for recruitment agencies: We do not accept unsolicited candidates from external recruiters unless specifically instructed.