About Jarrah Software
Jarrah Software is led by a senior software engineer with 16+ years of hands-on experience delivering production software across transport, telephony, ticketing, insurance, and industrial domains.
What Jarrah Software is
Jarrah Software helps organisations and small businesses design, build, and improve software they can rely on. Engagements range from business websites and custom apps to deeper backend and systems engineering work.
The team has worked across startups, consultancies, research teams, and enterprise environments in the UK and Australia. That background includes modern C++ (including C++20+), C#, Python development, cloud deployment workflows, CI/CD, and performance-focused systems.
We keep the model simple: understand the business need, agree on a practical scope, deliver in small increments, and leave behind clean systems your team can maintain.
Leadership
Jarrah Software is led by a senior software engineer with 16+ years of experience delivering production systems in C#, C++, and Python across ATC simulators, telephony, transport, ticketing, insurance, and industrial software.
We combine deep technical implementation skills with practical delivery discipline, helping teams ship reliable software without unnecessary process or complexity.
Selected Experience
- ATC simulators and control systems: Built and maintained software for simulation-heavy environments requiring reliability, performance, and clear operator workflows.
- Telephony and communications: Delivered systems for telephony and communication workflows with tight integration requirements and high uptime expectations.
- Transport and ticketing platforms: Delivered software for ticketing and point-of-sale products, including enterprise transport environments.
- Insurance and regulated products: Built and improved insurance platform components with a focus on maintainability, quality, and safe release cycles.
- Hardware and software integration: Implemented software that interfaces with real-world hardware systems, balancing system constraints with product usability.
- Legacy modernisation and integration: Improved legacy systems with better testing, data integration, and deployment practices to support reliable ongoing delivery.
How we work
Our values are not a mission statement — they are the practical principles that shape every engagement.
Built on engineering fundamentals
Good software comes from clear design, tested code, and careful implementation. We apply these fundamentals consistently.
Straightforward communication
You get direct updates, realistic timelines, and plain language. If a plan is risky, we explain why and suggest a better option.
Practical delivery
We care about strong engineering and real outcomes. The goal is software that works well and is sensible to maintain.
Long-term thinking
We build systems your team can live with after launch: understandable code, repeatable deployments, and a clear path for change.
Technologies & tools
We choose tools based on fit, not fashion. These are the core technologies used across recent engagements:
- Languages: C# (.NET), C++ (17/20+), Python, JavaScript, PHP
- Frameworks and UI: Web API, MVC/MVVM, WPF, WinForms, Angular, Next.js
- Databases: MySQL, MongoDB, SQLite
- Cloud and platforms: Azure, Docker, Linux, Windows
- Containers and deployment: Docker, Singularity/Apptainer, CI/CD pipelines
- Delivery tooling: GitHub Actions, Jenkins, CI/CD pipelines
Our approach to delivery
Every project starts with problem clarity and scope definition. That up-front discipline reduces rework and keeps delivery predictable.
We treat testing, automation, and documentation as part of the product, not optional extras. It keeps change safe and lowers long-term maintenance cost.
At handover, your team should be able to own the software with confidence. If ongoing support is needed, we can continue in a lightweight retained model.
Interested in working together?
We are always open to interesting new engagements. Get in touch to discuss your needs.
Get in Touch