Simulation Engineer - Modelling, Analysis, and Software
Join our evolving team of creative problem solvers!
At Holmes Solutions, we work on some very cool projects. Whether we are revamping construction methods or designing thrill rides, we pride ourselves on finding amazing new ways to do things.
Are you ready to write code that advances the physical world? We have an exciting opportunity for a mid-level Simulation Engineer to join our emerging software group, embedded within a growing team of mechanical, electrical, structural, and mechatronic engineers. In this role, you'll develop tools and perform analysis that supports the development of physical technologies and systems.
This is a full-time role, based in Christchurch with flexible working options available. If you’re keen to be part of the action, please read on!
Job summary:
As a Simulation Engineer, you will develop, maintain, and apply simulation and analysis software for real-world engineering systems and products. This is a hands-on, varied role - you'll design and build Python software, run simulations, visualise results, and help shape the way we work. You'll own codebases, support project teams across the business, and have a genuine say in the direction of our simulation and analysis tooling.
This role will suit someone with strong software capability, a solid grounding in mechanical engineering, physics, and mathematics, and an interest in applying those skills to practical design and development challenges.
Expect roughly 70% coding, 10% design and architecture, and 20% communication and collaboration.
Typical application areas include urban transportation systems, amusement rides, vehicle dynamics, and machine system dynamics.
Key duties & responsibilities:
Develop and maintain Python codebases for network traffic simulation, control-logic simulation, physics simulations, and related tools.
Work closely with mechanical, electrical, mechatronic and structural engineers to inform the design and development of new technologies.
Use Python to evaluate and quantify product performance and communicate clear results back to design teams.
Develop engineering automation tools to streamline engineering design, analysis data processing, and reporting.
Build reusable libraries, utilities, and visualisation tools to support internal engineering projects.
Contribute to software design and architecture, including structure, testing, and integration decisions.
Help establish and refine practices on coding standards, testing, documentation, and review.
Assist in lifting Python capability across the team, providing guidance on code quality, problem solving, and multidisciplinary collaboration.
Collaborate with non-software stakeholders, explaining complex technical ideas in clear, accessible language.
Collaborate with non-software stakeholders, explaining complex technical ideas in clear, accessible language.
What you'll bring to the team:
A background in mechanical engineering, structural engineering, robotics, or mechatronic engineering, or significant experience working on software for mechanical or structural systems/products.
Strong experience with object-oriented Python in a professional setting to solve complex problems.
Good intuition for physics and geometry, applied to real-world systems.
Experience working as part of a team on shared codebases.
Comfort with testing and quality, ideally using tools like pytest.
Ability to write clear, maintainable code and supporting documentation.
Skilled in explaining technical concepts to non-software specialists.
Familiarity with modern software practices and tooling, including version control and code review.
A proactive, self-directed learning mindset - you seek out information, ask good questions, and improve your tools and processes.
Skilled in combining creativity and analytical thinking to solve problems
It would be desirable to have some of the following:
Experience supporting product development, R&D, or applied engineering projects through simulation and analysis.
Experience developing, applying, or validating engineering simulation models.
Familiarity with numerical methods, scientific computing, or algorithm development.
Experience integrating models, tools, or third-party applications via APIs and customised code.
Experience with scientific and numerical Python libraries such as NumPy, SciPy, and Matplotlib, and possibly graph / network libraries such as NetworkX.
Experience assessing, debugging, and improving simulation models or engineering analysis workflows.
Knowledge of rigid body dynamics, controls, optimisation, and/or vector mathematics.
Familiarity with system-level modelling involving mechanical linkages, actuators, controls, sensors, traffic flows, urban mobility, power systems, and robotics.
Knowledge of C++ and Unreal Engine.
Experience with AI-assisted development workflows.
About Holmes Solutions
We work with international clients in many industries including adventure recreation, construction, and roadside hardware. We cover everything from ideation and R&D, to testing, compliance and accreditation. It’s fair to say there’s never a dull moment in our design hub!
Why Join Holmes Solutions?
We're a close-knit team that champions innovation, knowledge-sharing, and work-life balance. We celebrate diversity, welcoming applicants from all backgrounds because we believe in the power of varied perspectives to drive innovation.
We believe in taking care of our people. Here's a snapshot of what you can look forward to:
Financial - Competitive salary, KiwiSaver, profit share bonus, annual leave, and sick pay.
Health & Wellbeing - Medical insurance for you and your family, life insurance, wellness allowance, an Employee Assistance Programme, onsite gym with classes available.
Culture & Environment - A sociable, supportive culture with team lunches and events. A coffee machine, tea, fresh fruit, and snacks to keep you going!
Learning & Development - Training support and access to courses tailored to help you grow and achieve your career goals.
Flexibility - Flexible working arrangements to suit your lifestyle.
Most importantly, you'll be joining a supportive, innovative, and down-to-earth organisation where no two days look the same - working across a diverse and exciting range of projects.
Take Your Next Step With Us:
If you're ready for your next exciting engineering challenge, we'd be keen to hear from you!
- Department
- Engineering
- Role
- Software Engineer - Modelling, Simulation, and Analysis
- Locations
- Christchurch Office & Lab
- Remote status
- Hybrid
- Yearly salary
- NZD100,000 - NZD120,000
- Job level
- Intermediate
- Employment type
- Full-time, Permanent
About Holmes Solutions
Holmes Solutions is where ingenuity meets reality. Our global projects push the boundaries of what's possible, driven by a team dedicated to making a difference in our world.