Tushar Lachman
Melbourne · RMIT ’27
Tushar Lachman

OPEN TO SOFTWARE, DATA & AI/ML ROLES

Tushar Lachman

I build software end to end — and then get it into people’s hands. One of them runs a family practice in Jakarta every day, on a paid monthly subscription.

Computer Science at RMIT, minoring in AI & Machine Learning. Most of what I build starts as a problem I actually have. Open to any tech role — software, data, ML, platform, QA or product — as a summer intern over November 2026 — February 2027, or a graduate from July 2027.

See the work ↓RÉSUMÉ ↓
AT A GLANCE
NAMETushar Lachman
EDUCATIONBachelor of Computer Science with a minor in Artificial Intelligence & Machine Learning
INSTITUTIONRMIT University, Melbourne
FOCUSFull-stack · mobile · data · AI & ML
OPEN TOAny tech role — software, data, ML, platform, QA or product
LOCATIONMelbourne, Australia
AVAILABLESummer internship Nov 2026 — Feb 2027 · graduate role from July 2027
WORK RIGHTSStudent visa, unrestricted hours over the summer break · graduate visa from Aug 2027
6
PRODUCTS BUILT
1
PAYING CUSTOMER
113
API + EDGE FUNCTIONS
850
UNIT TESTS

SYSTEM SHEETS

CLICK TO OPEN
00 — CLINICAL SAASJune 2026 — Present

Medical Practice Management Platform

Sold · paid subscription

The system a Jakarta family practice runs on every day.

SYSTEM
React + Vite dashboard (TypeScript)Two Android apps wrapped with Capacitor75 Deno edge functions — the only privileged write pathPostgreSQL on Supabase · 42 migrations · RLS on every tableClaude assistant with 38 tools, behind approval, on de-identified recordsWhatsApp Business via Twilio
Open sheet →
75
edge functions
42
migrations
01 — NATIVE ANDROID APPAugust 2026

FitScroll

Shipped — sideloaded APK

One push-up buys one minute of Instagram. Run out and it locks.

SYSTEM
Kotlin · Jetpack Compose (Material 3)CameraX preview → ML Kit pose detection, on-devicePush-up counter behind a 1–5 form strictness dialMinute bank · rolling 24h expiry, oldest spent firstAccessibility service reading the foreground package onlyDrain meter charging measured time, not tick counts
Open sheet →
125
unit tests
1:1
push-up to minute
02 — PERSONAL DASHBOARDJune 2026

Jarvis — Personal Life OS

In daily use — mine

One screen for tasks, calendar, health and money as an international student.

SYSTEM
Next.js App Router front end38 REST endpointsPostgreSQL on Supabase · 10 migrationsGoogle OAuth — Calendar, Tasks, GmailGoogle Health, read live from its APISamsung Health, parsed from a file export
Open sheet →
38
rest endpoints
10
migrations
03 — SOCIAL MOBILE APPApril — May 2026

Locked In — Social Fitness App

Shipped Android APK

A squad-based workout tracker my friends actually installed.

SYSTEM
React Native on Expo SDK 54Supabase Auth · Storage · RealtimeRow-level security on every tablePostgres triggers → Expo Push via pg_netGemini vision extraction from a screenshotEAS Build → Android APK
Open sheet →
5k
lines of typescript
2
platforms — apk + web
04 — DATA + AI TOOLFebruary — March 2026

Kitchen OS

Runs locally, used weekly

Know what is in your pantry, what you can cook, and what it does to your macros.

SYSTEM
Streamlit UI, ~1,800 linesA 66-function data layer over SupabasePostgreSQL schema designed from an ERDGemini chat with persistent sessionsGemini vision for meal photographsUnit normalisation across weight, volume and count
Open sheet →
3.5k
lines of python
66
backend functions
05 — SHARED LEDGER APPFebruary 2026

Bets — The Vault

Shipped to the group

The ledger for the handshake bets a friend group never writes down.

SYSTEM
React Native on Expo SDK 54Supabase Postgres as the shared ledgerOne table, five queries, no authEAS Build → Android APKreact-native-web build from the same source
Open sheet →
2
bet types
1
shared ledger

ACADEMIC PROJECTS

RMIT COURSEWORK
DEEP LEARNING ON IMAGES2026

Colon Cancer Cell Classifier — CNN on Tissue Images

Machine Learning

Every split is a patient split, not an image split. Patches from one patient share staining, scanner and morphology, so testing on a patient you trained on measures memory rather than generalisation.

PythonPyTorchscikit-learnCNNs
SYSTEMS PROGRAMMING2025

Multithreaded File Copier & Custom Memory Allocator

Operating Systems Principles

The single-file copier is a real producer–consumer: a team of reader threads pulls lines from the input, a team of writer threads drains them to the output, and a shared queue capped at 20 lines sits between them.

CC++pthreadsmutexes & condition variables
CLOUD DEPLOYMENT2026

Cloud Music — AWS Web App, Deployed to EC2 and ECS

Cloud Computing

The same Flask backend deployed twice — onto an EC2 instance and as a container on ECS Fargate — so the operational difference between a VM you patch and a task the platform replaces could be measured rather than argued about.

PythonFlaskboto3Docker
CONSTRAINT SOLVING2026

Exam Timetable Solver in Answer Set Programming

Intelligent Decision Making

The problem is declared rather than searched. Exams, rooms, timeslots, student clashes, room capacities and durations are stated as rules and constraints in ASP, and Clingo finds and optimises the calendar — there is no hand-written search anywhere in the system.

Answer Set ProgrammingClingoPythonProlog
LOGIC PROGRAMMING2026

Flight Routing & Trip Planner in Prolog

Intelligent Decision Making

The restrictions are the assignment. No `findall`, `setof`, `aggregate`, `forall`, `assert`, `retract` or `fail` — which rules out the obvious approach of gathering every candidate route into a list and picking the minimum. Everything has to be expressed as relations and recursion.

SWI-PrologDeclarative programmingRecursionNegation as failure
NLP + NETWORK ANALYSIS2026

The GOAT Debate — YouTube Comment Network Analysis

Social Media & Network Analytics

Six stages as six separate notebooks, each writing its outputs to disk and each runnable on its own, so a change to the topic model does not mean re-scraping the data.

PythonNetworkXtransformersBERTopic
APPLIED SECURITY2025

GPG File Exchange & iptables Firewall Lab

Introduction to Cyber Security

Three separate Linux users, created and administered, so the exchange happens between actual accounts with actual permissions rather than three directories pretending to be people.

GPGRSAiptablesKali Linux
ALGORITHMS IN C++2024

Maze Generation & Pathfinding in Minecraft

Programming Studio 2

Recursive Division generates a perfect maze — the term of art for one with no loops, and exactly one path between any two cells — by repeatedly splitting the region with a wall and knocking a single gap in it.

C++mcppMinecraftLC-3 assembly
FULL-STACK WEB2024

Global Food Loss Awareness — Data-Driven Web Application

Programming Studio 1

The back end is Java on Javalin with JDBC to a SQLite database — a real server and a real query layer rather than a page with the numbers typed into it.

JavaJavalinJDBCSQLite

EDUCATION

19 UNITS · 5 HIGH DISTINCTIONS

Bachelor of Computer Science

Minor in Artificial Intelligence & Machine Learning · RMIT University, Melbourne

2024 — July 2027
COMPLETED15
COSC2801Programming Bootcamp 1COSC2803Programming Studio 1HDMATH2466Introduction to Maths for ComputingCOSC2802Programming Bootcamp 2COSC2804Programming Studio 2MATH2411Mathematics for Computing 1INTE2625Introduction to Cyber SecurityHDISYS1118Software Engineering FundamentalsCOSC2960Foundations of AI for STEMHDCOSC1114Operating Systems PrinciplesCOSC2123Algorithms and AnalysisCOSC2626Cloud ComputingHDCOSC2673Machine LearningHDCOSC2973Intelligent Decision MakingCOSC3047Social Media and Network Analytics
IN PROGRESS04
COSC1127Artificial IntelligenceCOSC2299Software Engineering: Process and ToolsCOSC2972Deep LearningCOSC3045Essentials of Computing

SPECIFICATION

LANGUAGESPython · TypeScript · JavaScript · Kotlin · Java · C · C++ · SQL · Prolog
FRAMEWORKSReact · React Native (Expo) · Next.js · Node.js · Flask · Streamlit · Tailwind CSS
MOBILENative Android (Kotlin, Jetpack Compose) · CameraX · ML Kit on-device pose detection · accessibility services · Capacitor · Expo / EAS Build
CLOUD & DEVOPSAWS (EC2, ECS, S3, DynamoDB) · Docker · Vercel · EAS Build · Gradle · Firebase Cloud Messaging · Git
BACKEND & DATAPostgreSQL · Supabase · REST API design · serverless functions · OAuth 2.0 · row-level security · schema design & migrations
AI & DATA SCIENCEClaude API (tool use) · Google Gemini (text & vision) · scikit-learn · pandas · NLTK · transformers · NetworkX
PRACTICEUnit testing (Vitest, pytest, JUnit, Robolectric) · monorepos · CI to Vercel, EAS and GitHub Actions · technical writing & onboarding docs

Let’s build something that ships.

I’m after a summer internship over November 2026 — February 2027 and a graduate role from July 2027, and I’m not precious about which corner of the stack it’s in — software, data, ML, platform, QA or product. Happy to walk through any of the private projects in detail: architecture, trade-offs, the parts that went wrong.

Indonesian citizen on an Australian student visa — unrestricted work hours over the November 2026 — February 2027 summer break, then a graduate visa from August 2027.

LinkedInGitHubRésumé ↓