Skip to content

Associate Software Engineer · Monash Teaching Associate · Systems and Product Engineering

Software Engineer building scalable backend, cloud, and real-time systems.

focusFocus areas: Designing software systems, Teaching data structures and algorithms, Building products from ambiguity, Connecting architecture to deployment, Improving delivery and developer workflows, Leading across software and hardware.

I work across product engineering, software architecture and system design, building APIs, distributed data pipelines, cloud infrastructure, real-time systems, and the interfaces around them. I take products from early requirements through implementation, integration, and deployment.

Download resume
Open to software and product engineering rolesMelbourne, Australia
70%
faster research-to-product delivery at Purple Spark
12+
engineers led across 7+ projects at Monash Human Power
WAM 82.9
Software Engineering (Honours), Monash
01Selected work

Systems I have designed, built, and shipped.

These are the projects where I went beyond implementation, making the engineering decisions that shaped how the product worked. Secondary work sits in a compact list below.

FlagshipDistributed Systems · Full-Stack

Communication Protocol Benchmarking Application

A full-stack platform that benchmarks MQTT, HTTP, WebSocket, and CoAP against the quality attributes a real-time system actually depends on.

Sep 2025 – Nov 2025Solo build: architecture to deployment
4
protocols benchmarked
6
network and load scenarios
22%
performance variance revealed
  • Node.js
  • Meteor
  • React
  • MongoDB
  • MQTT
  • HTTP
  • WebSocket
  • CoAP
checkmyprotocol.vercel.app
Communication Protocol Benchmarking Application: a run-configuration screen showing run mode, weighted quality attributes, and a live run summaryLive site

Context

Choosing a messaging protocol for an IoT or real-time system usually comes down to reputation and blog-post folklore, not evidence from the conditions you actually run in.

The problem

Teams reach for MQTT, HTTP, WebSocket, or CoAP based on habit, then meet the trade-offs in production. I built this to turn that choice into a measured, reproducible comparison a team can run against its own priorities.

My role

Sole engineer across the benchmarking engine, the scoring model, the dashboard, and the deployment.

What I built

  • A Node.js benchmarking engine that drives real MQTT, HTTP, WebSocket, and CoAP clients and records latency, jitter, throughput, reliability, integrity, and resource use.
  • Six configurable network and load scenarios so protocols are compared under both easy and constrained conditions.
  • A weighting model that normalises each protocol's metrics into a fitness score out of 100, so a run can be re-scored under different priorities without re-running it.
  • A Meteor and React dashboard with live run progress, comparative results, and run history persisted in MongoDB, plus a deterministic simulation mode for reproducible demos.

Key decisions

  • Separated measurement from scoring: the engine records raw metrics and weighting happens at read time, so one run can be re-scored under different priorities.
  • Made the simulation deterministic so results stay reproducible in reviews and demos without a live broker.

Outcome

Deployed and live. Running 100+ requests per protocol produced weighted fitness rankings, protocol recommendations, and comparative dashboards that surfaced up to 22% performance variance under constrained network conditions.

Monash Human Power telemetry: a recumbent racing trike beside live dashboards for speed, cadence, power, heart rate, GPS, and elevation, with the sensor to ESP32 to Raspberry Pi to MQTT to Android data path.
Embedded · Real-Time Systems

Monash Human Power Telemetry System

Real-time sensor telemetry for a competition human-powered vehicle, from microcontrollers on the trike to live dashboards for the rider and pit crew.

Jul 2024 – Jun 2026Software Developer, then Software Team Lead

Built inside Monash Human Power, the student team that designs and races human-powered vehicles, where the rider and chase vehicle need live data from a recumbent racing trike.

What I built

  • ESP32 firmware reading 7+ sensor interfaces, including IMU and barometer, from their register maps at up to 50 Hz and publishing standardised frames.
  • A bridge from the on-vehicle bus to Raspberry Pi display and camera services, and out over MQTT to link the bike and chase-vehicle networks.
  • Contributions to the Android BLE application that fuses power, heart-rate, and GPS streams into live metrics, interactive maps, and cloud sync.
Engineering decisions and outcome
My role

Engineered and integrated several components of the telemetry system as a developer, then set technical direction as Team Lead. This card is about the system; the leadership scope sits in Experience.

Key decisions
  • Standardised every sensor onto one frame format so display and logging code stayed decoupled from sensor specifics.
  • Used MQTT as the bike-to-chase-vehicle bridge to tolerate intermittent wireless links during testing and racing.
Outcome

A working telemetry stack used for vehicle testing and race monitoring, feeding live cloud dashboards for the rider and pit crew.

  • ESP32
  • C++
  • CAN bus
  • MQTT
  • Raspberry Pi
  • Android
  • Java
  • +1
ClubHubs student event platform: mobile screens for discovering and browsing events by category, an organiser dashboard, and the underlying users, clubs, and events schema.
Product · Full-Stack

ClubHubs

A full-stack student event discovery platform where clubs publish events and students find them, backed by a normalised PostgreSQL schema.

University team projectFull-stack engineer

University events are scattered across club pages, social posts, group chats, and separate sign-up links, so students miss things and clubs struggle to reach them.

What I built

  • A React Native client for browsing and filtering events, backed by a Flask REST API.
  • Role-based authentication that separates student and club-organiser capabilities.
  • A normalised PostgreSQL schema supporting 50+ event categories and onboarding for multiple clubs.
Engineering decisions and outcome
My role

Built across the stack: the React Native client, the Flask REST API, and the PostgreSQL schema behind role-based access.

Key decisions
  • Normalised the schema around events, clubs, and categories so multi-club onboarding scaled without duplicating data.
  • Kept a clear client-to-API boundary so the React Native app stayed thin while the Flask service owned the data rules.
Outcome

A working platform where students discover events by category and multiple clubs publish and manage them through one structured system.

  • React Native
  • Flask
  • Python
  • PostgreSQL
  • REST APIs
  • Role-based auth
SoulStride app: mobile screens turning source texts into structured lessons and grounded reflection, with a your-texts to retrieval to knowledge store to secure cloud flow.
Mobile · AI

SoulStride

An LLM-powered React Native learning platform that turns source texts into structured lessons and grounded, retrieval-based coaching.

Dec 2025 – PresentSolo buildIn development

A personal product about turning self-development and spiritual texts into something you actually practise, not just read.

What I built

  • A React Native (Expo) app that turns source texts into structured, Duolingo-style lessons and guided reflection workflows.
  • A context-grounded RAG assistant that answers strictly from the app's own content.
  • A Dockerised Node.js and PostgreSQL service running on Google Cloud Run.
Engineering decisions and outcome
My role

Sole engineer across the mobile app, the backend service, and deployment.

Key decisions
  • Grounded the assistant in retrieved in-app text so answers stay relevant and avoid invented advice.
  • Containerised the backend and deployed to Cloud Run for reproducible, scale-to-zero hosting.
Outcome

A deployed mobile learning platform with lessons, retrieval-based coaching, and reflection, running on managed cloud infrastructure.

  • React Native
  • Expo
  • TypeScript
  • Node.js
  • PostgreSQL
  • Docker
  • Google Cloud Run
  • +1
MemoPath prescreening tool: a tablet and phones running guided memory and cognition assessments, a low-risk summary, cognitive trends, and a note that results are not a diagnosis.
Product · AI · Health

MemoPath

An at-home dementia prescreening prototype combining established cognitive assessments with automated interpretation and longitudinal trends.

Mar 2026Built at MedHack (mlai.au)

Built at MedHack, a health hackathon hosted by mlai.au, around the idea of guided at-home cognitive screening.

What I built

  • A home prescreening prototype integrating the MoCA, RUDAS, and AD8 assessment workflows behind one guided flow.
  • Automated preliminary interpretation of assessment results.
  • Longitudinal AI modelling of cognitive trends across repeated sessions.
Engineering decisions and outcome
My role

Built the prescreening prototype and its interpretation and cognitive-trend workflows for judging by clinicians and industry.

Key decisions
  • Combined three established assessment instruments behind a single guided flow so results stayed comparable and repeatable.
  • Framed the output as preliminary interpretation, keeping the tool a prescreening aid rather than a diagnosis.
Outcome

Won 1st place and a $1,000 prize at MedHack, judged by clinicians and industry.

  • MoCA
  • RUDAS
  • AD8
  • Longitudinal AI modelling
Finding Nibbles app: mobile screens with a cuisine dice roll, nearby food picks, a map of places, and dietary filters such as vegan and gluten-free.
Product · Full-Stack

Finding Nibbles

An AI-assisted food discovery app that answers "what and where should we eat?" from your location, tastes, and dietary needs.

Feb 2025 – PresentSoftware architect, 14-person teamIn development

A large student team project aimed at a small daily friction: deciding what and where to eat.

What I built

  • The Meteor application structure and real-time data flow for a 14-person team.
  • Integration of the Google Places and Maps APIs for location-aware recommendations.
  • Playful discovery mechanics (cuisine dice rolls) alongside dietary filters such as vegan and gluten-free.
Engineering decisions and outcome
My role

As software architect, set up the application structure and data flow for a 14-person team, and scoped the recommendation layer.

Key decisions
  • Chose Meteor for real-time sync and fast iteration across a large student team.
  • Kept recommendation logic server-side so the client stays thin and swappable.
  • Meteor
  • JavaScript
  • React
  • Google Places API
  • Maps JavaScript API
  • LLM integration
·

More projects

Machine Learning

ECG Anomaly Detection

4-person team

An end-to-end ML pipeline that classifies cardiac disease from ECG-derived clinical data.

Benchmarked logistic regression, random forest, AdaBoost, and XGBoost with GridSearchCV and 5-fold stratified cross-validation, and handled class imbalance with SMOTE.

  • Python
  • scikit-learn
  • XGBoost
  • SMOTE
  • +2

Dec 2024 – Feb 2025

Code on GitHub
AI · Reinforcement Learning

Pac-Man Intelligent Agents

Solo

Search, adversarial, and reinforcement-learning agents for Pac-Man, compared across environments.

Compared A* search, alpha-beta pruning, value iteration, Q-learning, and an MLP across layouts, ghost behaviours, and reward structures, documenting the trade-offs.

  • Python
  • A* search
  • Alpha-beta
  • MDPs
  • +2

Jul 2025 – Nov 2025

Not public
OO Design · Java

Santorini

3-person team

A desktop build of the Santorini board game in Java, with full rules and god powers on a clean OO core.

Applied MVC and Singleton patterns to keep game logic decoupled from the Swing and AWT interface.

  • Java
  • Swing / AWT
  • MVC
  • Design patterns

Feb 2025 – Jun 2025

Code on GitHub
Web App

Scrum Project Board

5-person team

A browser-based Scrum workspace: backlog, sprint planning, and a Kanban board, all client-side.

Kept everything client-side with browser state, so lightweight team planning needed no backend to stand up.

  • JavaScript
  • HTML
  • CSS
  • Kanban
  • +1

Jul 2024 – Oct 2024

Code on GitHub
Front-End

NewsMonkey

Solo

A responsive React news reader with live category feeds, infinite scroll, and loading states.

Built a single-page reader over NewsAPI with category filters and infinite scroll, structured around functional components and hooks.

  • React
  • NewsAPI
  • JavaScript
  • Bootstrap

Dec 2024

Code on GitHub
02Capabilities

What I can build for a team.

Grouped by the work I can actually do, from product and backend through architecture, real-time systems, cloud, and delivery. The technologies underneath are evidence from real project and role work, not a wall of badges.

01

Product and platform engineering

Turn ambiguous requirements into scoped, testable software, and take products from architecture through to deployment.

  • Requirements to specs
  • Scoped delivery
  • TypeScript
  • React
  • Next.js
02

Backend and API systems

Design services, schemas, and integrations that stay reliable and maintainable as they grow.

  • REST APIs
  • Node.js
  • Flask
  • PostgreSQL
  • MongoDB
  • Data modelling
03

Software architecture and system design

Set service boundaries and API contracts, reason about distributed data flow, and make trade-offs explicit.

  • Service boundaries
  • API contracts
  • Distributed data flow
  • Trade-off analysis
04

Real-time and distributed systems

Move data through telemetry and ingestion pipelines, with the concurrency and messaging trade-offs that implies.

  • MQTT
  • CoAP
  • WebSocket
  • Telemetry
  • Ingestion pipelines
  • Concurrency
05

Cloud and DevOps

Package and deploy services across managed cloud, with sane environments and configuration.

  • AWS
  • Google Cloud Platform
  • Docker
  • Cloud Run
  • Vercel
06

CI/CD and infrastructure engineering

Automate build, test, and deployment so releases stay reliable and the workflow stays fast.

  • GitHub Actions
  • CI/CD
  • Automated testing
  • Release reliability
07

Frontend and mobile product experiences

Build practical user-facing interfaces on the web and mobile, wired to the backend and data underneath.

  • React
  • React Native
  • Expo
  • Meteor
  • Accessible UI
08

Engineering leadership and communication

Set technical direction, align a team on architecture, review code, and explain complex systems clearly.

  • Team roadmaps
  • Code review
  • Mentoring
  • Teaching
  • Architecture alignment
03Experience

Where I have owned real engineering.

Reverse chronological, with progression shown within each organisation. Percentages come straight from my resume.

  1. 01

    Melbourne, Australia

    • Product engineering
    • Backend and APIs
    • Distributed pipelines

    Purple Spark

    Associate Software EngineerJun 2026 – Present
    Product Engineering InternMar 2026 – May 2026

    Product and platform engineering for a leadership decision-intelligence SaaS, turning ambiguous behavioural-research requirements into production software.

    • Architected backend services, APIs, and distributed ingestion pipelines, with real-time scoring workflows behind the product.
    • Built an internal research platform for evidence, behavioural models, scoring logic, and large-scale data extraction, connected to the SaaS through microservices.
    • Reduced research-to-product delivery time by 70% per feature by making that platform the path from research into shippable software.
    • Defined service boundaries and API contracts so research, data, and product work could move in parallel.
  2. 02

    Melbourne, Australia

    • Teaching
    • C++
    • Algorithms and complexity

    Monash University

    Teaching Associate, Data Structures and Algorithms (FIT1008 / FIT2085)Jul 2026 – Present

    Teaching applied classes in data structures and algorithms, and helping students reason about correctness, not just syntax.

    • Lead students through C++ implementations of linked structures, binary search trees, heaps, and priority queues.
    • Teach recursion, sorting, and complexity analysis, connecting each to how it behaves at scale.
    • Debug student reasoning rather than just their code, and explain difficult concepts in more than one way.
    • Reinforce the systems foundations, memory, correctness, and cost, that carry straight into engineering work.
  3. 03

    Melbourne, Australia

    • Engineering leadership
    • Hardware and software
    • CI and testing

    Monash Human Power

    Software Team LeadOct 2025 – Jun 2026
    Software DeveloperJul 2024 – Oct 2025

    Led the software group for a competition human-powered vehicle team, across web, mobile, and embedded work, after building telemetry as a developer.

    • Led a 12+ member software team across 7+ concurrent web, mobile, and embedded projects.
    • Defined technical roadmaps, sprint plans, and architecture standards, and ran recruitment for the group.
    • Introduced CI, code review, and system-level testing that reduced integration defects by roughly 20%.
    • Owned selected technical systems directly, including parts of the real-time vehicle telemetry stack.
  4. 04

    Noida, India

    • Flask
    • PostgreSQL
    • REST APIs

    Concept Weavers India

    Associate InternApr 2025 – Jun 2025

    Backend API work for inventory and order workflows.

    • Built and deployed 8+ Flask and PostgreSQL REST APIs for inventory and order workflows.
    • Optimised schemas and indexes to reduce query latency by 15% while strengthening transaction integrity.
  5. 05

    New Delhi, India

    • Data analysis
    • Python
    • RFM segmentation

    MICO Glass Industries

    Client Analysis InternNov 2024 – Feb 2025

    Client analytics for a B2B glass manufacturer, turning partner data into segmentation and retention insight.

    • Conducted RFM-based segmentation across 300+ B2B partners to identify high-value and churn-risk segments.
    • Developed cohort analysis dashboards in Python to support targeted campaigns and retention planning.
04Skills and technical foundations

The tools behind the work.

Grouped by theme and rebuilt from the resume and verified project work. Hover or focus the ticker to pause it.

05Education and coursework

The coursework behind the work.

Bachelor of Software Engineering (Honours) at Monash University, Jul 2023 – Jun 2027. Units are grouped by theme rather than listed as a raw transcript.

WAM 82.9

weighted average mark

22

units completed

6

in progress

Engineering International High Achievers Scholarship

ENG0001Engineering Continuous Professional DevelopmentNow
ENG1005Engineering MathematicsHD
ENG1011Engineering MethodsHD
ENG1012Engineering DesignHD
ENG1013Engineering Smart SystemsHD
ENG1014Engineering Numerical AnalysisHD
FIT1051Programming Fundamentals in JavaHD
FIT1056Collaborative Engineering for Web ApplicationsHD
FIT2004Algorithms and Data StructuresHD
FIT2085Fundamentals of Algorithms for EngineersD
FIT2099Object Oriented Design and ImplementationHD
FIT2100Operating SystemsHD
FIT2101Software Engineering Process and ManagementD
FIT2107Software Quality and TestingHD
FIT2108Industry Based Learning Seminar
FIT3077Software Engineering: Architecture and DesignD
FIT3080Artificial IntelligenceHD
FIT3143Parallel ComputingNow
FIT3155Advanced Data Structures and AlgorithmsHD
FIT3159Computer ArchitectureD
FIT3170Software Engineering PracticeHD
FIT3171DatabasesHD
FIT3176Advanced Database DesignNow
FIT3184Cloud ComputingNow
FIT4002Software Engineering Industry Experience Studio ProjectNow
FIT4165Computer NetworksHD
FIT4701Final Year Software Engineering Project ANow
MAT1830Discrete Mathematics for Computer ScienceHD

Source: Monash WES academic record · HD = High Distinction · D = Distinction

06About

Product thinking, systems execution.

I like the point where an idea stops being a slide and becomes a chain of real software decisions. My work has moved from sensors, firmware, and rider-facing systems on a high-performance human-powered vehicle, to leading the Monash Human Power software team, to product and data engineering at Purple Spark.

Across those settings I have learned to translate ambiguity into architecture, test assumptions early, and carry systems through implementation, integration, and deployment. Teaching data structures and algorithms at Monash keeps sharpening the foundations underneath all of it: algorithms, C++, complexity, and the ability to explain a hard idea clearly.

I care about trade-offs, latency against reliability, simplicity against flexibility, and about making them explicit rather than accidental. When a problem is vague, I make it concrete first: the smallest thing that proves the idea, what has to be measured, and what can go wrong.

Outside engineering, I play for Monash Varsity Cricket and value the teamwork, composure, and accountability that come with competing as part of a team.

How I work

  • Make it concrete

    Turn a vague idea into the smallest thing that proves it.

  • Measure, do not guess

    Instrument the system and let the numbers settle debates.

  • Decouple

    Keep pieces swappable so one change does not ripple everywhere.

  • Ship, then iterate

    Get something honest in front of people and improve it.

Leadership and activities

Weighted toward the present: sport, engineering leadership, and the earlier milestones that shaped how I work with people. The school-era evidence lives in the archive below.

Sport

Monash Varsity Cricket

I play for Monash Varsity Cricket, where teamwork, composure, and accountability matter as much as the result.

Engineering leadership

Leading and teaching

Led the Monash Human Power software team across web, mobile, and embedded work, and now teach data structures and algorithms at Monash.

Earlier leadership

Head Boy and Vice Head Boy

Led the student body at school, from assemblies and student council to inter-school delegations.

Speaking and stage

Debating, theatre, and olympiads

National-level debating and public speaking, theatre and improv, and mathematics and English olympiads. The evidence is in the archive below.

Certificates and earlier achievements

A collapsed archive of earlier evidence across leadership, debating, dramatics, cricket, olympiads, and professional development. It is here to be explored, not to lead.

07Contact

Have a product or system that needs sharper engineering decisions?

I am interested in software engineering, product engineering, cloud and infrastructure, DevOps, and systems work where I can contribute from architecture through delivery.