Senior C# Software Engineer (C++ experience required)
Indexed description
You will be part of a dedicated team using the latest desktop and full-stack technologies to delivery world class applications to support simulating current and future scenarios including electrification and de-carbonisation strategies.
Our software helps provide the raw materials needed to manufacture the products that enable the modern world including lithium for batteries, steel, alloys, aluminium, and copper for electricity generation and transmission. Furthermore, our leading discrete event simulation software is helping the major mining organisations and equipment OEMs to electrify equipment and identify bottlenecks for increased production with minimum cost and environmental impact.
This is an opportunity for a smart, innovative, self-motivated Software Engineer to join a distributed team of like-minded people who develop world-class software using a practical, agile based modern development methodology certified to ISO 9001.
Key Responsibilities
- Maintain, modernise, and extend an existing C# and C++ 3D discrete event simulation engine.
- Improve performance, scalability, and maintainability of simulation components.
- Collaborate with cross-functional teams to deliver robust, simulation-driven solutions.
- Implement modern engineering practices including CI/CD pipelines, automated builds and automated testing.
- Contribute to technical design discussions and mentor other engineers where appropriate.
- Minimum 5 years of hands-on experience with C#
- Proven programming experience in C++ (modern standards: C++11 or later and the C++ Standard Library).
- Proficient with Git, CMake, and Visual Studio or equivalent toolchains.
- Demonstrated experience with WPF and/or Blazor
- Solid understanding of software architecture, data structures, and performance optimisation.
- Experience with simulation frameworks and/or real-time applications.
- Experience developing and building applications on Windows; Linux experience highly desirable.
- Strong analytical and debugging skills.
- Excellent communication and collaboration abilities.
- Experience building commercial engineering applications.
- Knowledge or strong understanding of object orientated design principles.
- Relevant tertiary qualification in Software Engineering or equivalent work experience.
- Strong command of the English language in both verbal and written form.
- Legally entitled to work in Australia.
- Experience in the mining industry.
- Familiarity with cloud services (Azure preferred).
- Development of multithreaded systems.
- SQL Server and SQLite development.
- Development of solutions using mathematical programming.
- Experience with interoperability between .NET (C#) and unmanaged code (C++).
We advance the mining industry towards a safer, more efficient, and more sustainable future through the delivery of innovative software solutions and deep domain mining expertise. Guided by our underlying principles of mining expertise, innovation, and sustainability, we strive to create safer and more efficient operations for our mining customers.
Our focus on providing advanced mining enterprise technology and training across the mining lifecycle enables us to guide customers through the industry's current and emerging challenges worldwide. This includes helping them meet the shift in social norms and consumer and investor ESG-related expectations.
Please, no agencies or recruiters.
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search