Software Engineer

Share this job

We are looking for an ambitious and driven software engineer (early career) to join our growing Digital function.

About the Team

The Digital team works on some of the hardest software challenges to create value for both Domin and our clients. We use the latest and greatest technologies across IoT and cloud computing to create robust and scalable software and data solutions that set the foundation for rapid business growth at Domin.

Our tech stack

We are open minded, keep up to date with the latest technologies and use tools and frameworks that are right for us. These include the following:

  • Web technologies: FAST API (Python), Docker, React JS, Svelte
  • IoT and cloud computing: Kubernetes, Elasticsearch (time-series monitoring), Azure Cloud Services (various)
  • Data & analytics: Azure Cosmos DB, PostgreSQL, Airtable (low code data platform), Grafana, Power BI / Microsoft Fabric, Jupyter Notebooks

About the opportunity

You’ll report to the Head of Digital and have the opportunity to learn from a talented team of engineers with great domain knowledge and technical expertise. With time, you’re expected to develop accountability and ownership of some of our critical software systems; we’ll provide you with the training and development opportunities to help you grow in your role. You’ll be developing software across our hardware products verification & validation (V&V) and manufacturing data platforms.

The platforms you’ll be working on

The V&V software platform is capable of real-time test execution and IoT data capture, providing deep insights into new product development and shortening product development lifecycles.

The manufacturing data platforms help deliver our servo valve products to customers, ensuring quality and on-time delivery; these systems touch upon IoT machine connectivity and insights generation from operational manufacturing data (e.g. are our orders on time?)

What is expected of you?

  • Develop great software while adhering to best practices.
    • Use behaviour driven development (BDD) methodology to capture/analyse requirements and develop/test software functionality.
    • Use the GitHub workflow to ensure code is source controlled and peer reviewed in a systematic manner.
    • Develop software components that are reusable and embrace a platform mindset.
    • Develop software in an agile manner, i.e., addressing issues and communicating in an iterative manner.
  • Innovate and contribute using a continuous improvement mindset.
    • Stay aware of latest technology trends and best practices across areas such as large-scale system design, data storage, artificial intelligence (AI), security, etc. and promote adoption within the team.
    • Embrace a continuous improvement mindset to drive positive change.
  • Communicate and engage effectively with stakeholders.
    • Work with stakeholders to understand requirements and deliver software that delights our customers.
    • Keep stakeholders informed about progress during all phases of software development, including communicating highlights and challenges equally.
    • Develop business context and collaborate with people across the business to identify new software opportunities to optimise processes and productivity.

Essential Requirements:

  • Bachelor’s degree in Computer Science, related technical field, or equivalent practical experience
  • Up to 1 year of software development experience
  • Experience with database design and implementation [beginner to intermediate level]
  • Experience with version control (using GitHub or similar) [beginner to intermediate level]
  • Experience with API development using backend technologies: Python (FAST API, Django) or similar e.g., Java (Sprint Boot) / JavaScript (Node.js) [beginner to intermediate level]

Beneficial Requirements:

  • Experience with a frontend framework (React, Angular, Vue). [beginner level]
  • Experience using and managing cloud native technologies from major cloud providers (Microsoft Azure, AWS). [beginner level]
  • Experience automating infrastructure provisioning, developer operations (DevOps) and/or continuous integration/delivery (CI/CD). [beginner level]
  • Experience working under agile methodologies (Scrum, Kanban) [beginner level]
  • Interest and ability to learn other coding languages as needed.
  • Ability to communicate in English fluently.

Careers with Domin

Explore Careers

Sales Engineer

We are looking for a driven and self-motivated Sales Engineer to sell our revolutionary valves.

Assembly Operator

Domin is looking for an experienced assembly operator to join our rapidly expanding production team as we scale out production output.

Design Engineer

We are looking for a driven and ambitious design engineer to join our team and support development of cutting-edge prototype hydraulic systems.