Research & Development
Junior Software Engineer - Universal Field Robots
Universal Field Robots – a Sandvik Company
Junior Software Engineer – Brisbane, Qld
About the opportunity
We’re looking for a Junior Software Engineer with solid foundations in C++, Python, and Linux to support the development and deployment of our robotic automation systems.
This role focuses on improving our CI/CD pipelines, fixing bugs, and supporting the deployment of low-level software across real-world mining environments. You’ll gain hands-on experience with Docker, networking, and system-level programming while working alongside experienced engineers in robotics, controls, and software architecture.
This is a great opportunity for someone early in their career to grow their skills in modern software engineering while contributing to the safe and reliable deployment of cutting-edge robotic systems.
Responsibilities
- Maintain and improve CI/CD pipelines to ensure reliable build, test, and deployment processes.
- Debug and fix issues in C++ and Python codebases.
- Support software deployment across Linux-based systems in production and testing environments.
- Work with Docker and containerization tools for building, testing, and deploying applications.
- Troubleshoot networking and system-level issues in distributed deployments.
- Collaborate with senior engineers to integrate fixes and improvements into production software.
- Document processes, fixes, and improvements to support knowledge sharing across the team.
About you
We are seeking a motivated software engineer with strong fundamentals who is keen to learn and contribute to real-world automation systems. You don’t need robotics experience – you’ll be supported by domain experts – but you should bring curiosity, solid coding practices, and a willingness to get hands-on with complex systems.
Key skills & experience
- Proficiency in C++ and Python.
- Comfortable working in Linux environments.
- Exposure to CI/CD workflows and version control (Git).
- Familiarity with Docker or containerized environments.
- Strong problem-solving and debugging skills.
- Eagerness to learn new tools, technologies, and approaches.
Nice-to-have (but not required)
- Experience with networking (TCP/IP, distributed systems).
- Knowledge of automated testing frameworks.
- Understanding of software deployment in embedded or industrial environments.