Hello, I'm

Bader A.

Software engineer. I design, build and run the production systems businesses depend on, end to end.

$ git log --graph --all

Let's build the software your business runs on.

I'm Bader A., a software engineer based in Adelaide. I take operational businesses into production software and stay until it runs.

Web apps, integrations, network security and reverse engineering. One pair of hands, the whole machine.

bader@prod: ~

$ whoami

Bader A., software engineer and founder

$ bader --stack

languagesPython · TypeScript · Go · Rust

frontendReact · Next.js · Tailwind CSS

backendFastAPI · Node.js · PostgreSQL

opsDocker · Cloudflare

$ bader --projects

dispatchmedical distributor · staged rollout

freightlogistics platform · deployed

BaseClinicalclinic SaaS · in build

Marketframemarket analysis · private

Tracehoundnetwork sensor · open source

$

Selected work

Order to dispatch

The platform a medical device distributor runs on: purchase orders read from their documents, matched to products and stock, then picked, invoiced and shipped through NetSuite and Shippit.

client
Intervene Medical, Adelaide
role
Requirements, architecture, build
scope
Purchase order to dispatch, end to end
stack
Python, FastAPI, SQLAlchemy, NetSuite, Shippit
dispatch: order flow

Animated illustration: a purchase order moves through intake, product matching, operator approval, picking against lot and expiry, NetSuite and Shippit until it is dispatched.

$ order intake

readorder documents and page images

resolvehospital, department, account

matchproducts, pricing, discrepancies

confirman operator approves every line

$ dispatch

lot and expiryok

barcode verifyok

netsuite syncok

labels and courierok

Freight platform

Quoting, shipment tracking and customer accounts online for an international freight forwarder. The client is under NDA, so it is described here by what it does rather than named.

client
International freight forwarder, under NDA
role
Design, build, launch
scope
Customer website, portal and API
stack
JavaScript, Supabase, PostgreSQL, Cloudflare

CN-1042 · quote accepted · Jebel Ali

$ client network

reach100+ countries

regions6 continents

modessea, air, road

$ platform online

quotingok

trackingok

accountsok

BaseClinical

A multi specialty clinic SaaS: dermatology and cosmetology consultations and treatment plans, batch level stock control, clinical photos, consent and scheduling.

role
Founder
stack
Next.js, React, TypeScript, Tailwind CSS, Supabase

consultintake›assessment›review›plan

$ base modules

schedulingok

recordsok

notesok

stockok

consentok

telehealthok

$ base schedule --today

09:30derma consultconfirmed

11:00filler follow uparriving

14:15patch test reviewbooked

BaseClinical: live demo

$ base stock --audit

batch TX-2041 toxin 300u ok

batch FL-1188 filler 1ml low, reorder drafted

register schedule 4 2 entries today

$ base consult --derma

intake skin assessment recorded

risk flags none consent signed

plan cosmetology review in 14 days

$

Marketframe

A custom built analysis tool: it pulls market and company data together, derives the measures that matter from it, and turns them into the correlations, factor views and reports a decision gets made from. Built for one client, so there is nothing public to visit.

role
Design, build
focus
Data modelling and market analysis
stack
Python, pandas, PostgreSQL
access
Private, custom build

monte carlo, 64 paths

terminal distribution

5th to 95th percentile

An animated Monte Carlo simulation: many simulated paths fanning out from a single point with a percentile band and a median, and a histogram of terminal outcomes. It carries no figures or performance claims.

$ marketframe pipeline

ingestmarket and company data

derivemeasures and relationships

simulatepaths and scenarios

reportviews and exports

$ marketframe outputs

scenariosok

risk bandsok

reports and exportsok

Reverse engineering

A large reverse engineering project for a client under NDA: recovering the network protocol and internals of a compiled application with no source code.

client
Under NDA
role
Analysis, tooling
focus
Protocol recovery, binary analysis
stack
Ghidra, IDA Pro, Frida, Rust, C++
decoder: live capture

Animated illustration: the raw bytes of a captured network message are read one at a time and decoded into named, typed fields, checked against a pinned build of the application.

$ re pipeline

staticGhidra, IDA Pro

dynamicFrida hooks

recovermessage formats

verifyone build, pinned

$ re outputs

protocol mapok

field decodersok

evidence logok

verify toolsok

Open source

Tracehound

A passive network sensor that finds command and control traffic, DNS tunnels and data exfiltration, then shows the numbers behind every call it makes. It fingerprints TLS clients with JA4 across both TCP and QUIC, maps what it sees to MITRE ATT&CK, and ships as one static Go binary with the dashboard compiled in.

role
Author, maintainer
stack
Go, gopacket, SQLite, JA4
licence
MIT, public repository

passive sensor, shield holding

flagged flows detonate on the shield

An animated diagram: network hosts sending traffic toward a passive sensor, with suspicious flows intercepted at a pulsing shield and labelled with the detection rule that fired.

tracehound: demo replay

$ tracehound replay demo.pcap -min-severity high

[HIGH] TH-0002 Probable DNS tunnelling to exfil.example

10.0.0.66 -> 10.0.0.1:53 score 0.96

ATT&CK: T1071.004, T1048.003, T1572

queries=46 unique_ratio=1 avg_entropy_bits=4.53

[HIGH] TH-0001 Periodic beaconing to 198.51.100.23:443

10.0.0.66 -> 198.51.100.23:443 score 0.96

ATT&CK: T1071.001, T1573

connections=20 interval_mean_s=59.06 jitter_pct=5.73

[HIGH] TH-0003 Port scan: 121 ports on 10.0.0.10

10.0.0.99 -> 10.0.0.10 score 0.56

ATT&CK: T1046

ports_probed=121 open_ports=5 duration_s=33.3

$

Detectors

  • TH-0001C2 beaconingT1071.001 · T1573
  • TH-0002DNS tunnellingT1071.004 · T1048.003
  • TH-0003Vertical port scanT1046
  • TH-0004Horizontal sweepT1046 · T1018
  • TH-0005Data exfiltrationT1041
  • TH-0006New deviceasset inventory
  • TH-0007Rare TLS stackT1573

What I do

A processor chip with glowing green circuit traces, rendered in 3D3D, move to tilt

Product design

Interfaces people actually finish tasks in.

flows · design systems · prototypes

Full-stack build

React and TypeScript frontends, Node.js APIs, real backends.

web apps · portals · dashboards · auth

Data and integrations

PostgreSQL schemas, row level security, webhooks, third party APIs.

migrations · payments · email · tracking

Security and reverse engineering

Passive network sensing in Go, and taking compiled software apart to see how it really works.

JA4 · ATT&CK · Ghidra · IDA Pro · Frida

Operations and launch

Docker deploys, auth, auditing, backups, monitoring, and the unglamorous week after.

CI · secrets · least privilege · uptime

Websites and deployment

Sites and web apps designed, built and actually put live: your own domain, DNS, SSL, CDN and analytics configured properly, deploying straight from your repository.

domains · DNS · SSL · CDN · CI deploys

stack /PythonTypeScriptJavaScriptGoRustC++FastAPISQLAlchemyReactNext.jsNode.jsTailwind CSSPostgreSQLSQLiteSupabaseRow Level SecurityEdge FunctionsREST APIsWebhooksNetSuiteDockerPacket analysisMITRE ATT&CKGhidraFridaCloudflareGitResend

How I work

$ scope

Understand the problem

A short call and a few honest questions about how your business actually runs, where the time goes, and what has to change.

you get: a written plan, timeline and price

$ design

Design the product

Flows and interfaces you can click and react to before real code exists. Cheap to change now, expensive later.

you get: clickable screens to approve

$ build

Build it properly

Typed code, real data, migrations, tests where they matter. Progress you can see, not progress you are told about.

you get: a working demo every week

$ run

Run it in production

Deploys, monitoring, backups and the fixes after launch. Software is a running thing, not a handover file.

you get: a system that stays up, and me on call

What do you need?

You have an idea, or a process running on spreadsheets, and no software yet.

  • Agree what version one has to do, and what it deliberately will not do
  • Clickable screens before any code, so changes are cheap
  • Build it with real data, deploy it, and keep it running

you get: a working product in production, not a prototype

Available for work

Bader A. · AustraliaBaseClinical · Marketframe · Tracehound© 2026