DroneShield
Embedded Software Engineer (AU)
Job Description
Be part of a well-funded and agile organisation, as a valued member of an autonomous, cross-functional team. We have a flat organisational structure, and the best candidates will be both creative lateral thinkers and doers. Our technical pursuits require us to take advantage of the absolute latest in technology and best practices to remain competitive.
About the role
DroneShield is seeking a Embedded Software Engineer with relevant experience to join the team in Sydney, NSW.
The position will report to VP of Embedded Systems. The primary focus of the role is to develop and maintain DroneShield’s Linux based deployed sensors. Working closely with ML/AI, Data Science, RF and infrastructure teams to innovate and enhance DroneShield’s world leading RF detection technology. It represents an exceptional opportunity for a result-driven individual in a new niche but exploding market.
Responsibilities, Duties and Expectations
-
Implement new software features from concept to delivery, for example gathering user requirement to diagnosing issues in production
-
Advance the development of software architecture design processes within the team. Ensure software is designed for reliability, and performance on resource constrained targets
-
Utilise leading industry practice to deliver and maintain robust and efficient APIs for seamless integration with external and internal systems
-
Bring a test driven development mindset
-
Documentation of software architecture and processes
-
Work with the engineering team to ensure reliable and robust end to end system operation
-
Collaborate with multi-disciplinary teams to deliver on user and business requirements
-
Provide technical guidance and mentorship to team members
Qualifications, Experience and Skills
-
BS degree in Computer Science, Mechatronics, Electronic Engineer or similar technical field of study or equivalent practical experience.
-
Minimum 3 years’ experience in related roles. Roles could include:
-
Linux Embedded Engineer
-
Software Engineer
-
Electronic product development
-
Internal tool development for network connected devices
-
-
Knowledge of the following would also be essential:
-
Comfortable on the command line in a Linux first environment
-
Software development experience in Python, Golang, Modern C++ (2 languages preferred)
-
Application development with cross-cutting concerns (logging, persistence, security, configuration management, transactional behaviour)
-
Inter-device communication using gRPC, REST, raw TCP/UDP, or other high performance messaging protocols
-
Development tools including Git, Jira, Confluence, CICD.
-
-
Knowledge of the following would also be desirable:
-
Architecture design
-
Microservice architecture
-
API design (versioning and documentation)
-
Hardware in the loop CICD design
-
Build system for embedded devices.
-
Note for recruitment agencies: we do not accept floated candidates from external recruiters unless they were instructed to do so.