Most people who support supply-chain software have never worked a gate at 6am. I do it on shift, and I write the code that makes the shift measurable.
The site I run, drawn to scale — one cell is one real slot
The site runs two gatehouses. North checks trucks in and assigns a dock door; South checks them out again, loaded or empty. Between them sits the yard — a few hundred trailers and swap bodies that all have to be in the right place, in the right state, at the right time.
I work both the coordinator and clerk sides. The clerk seat is the hard one: you are the single point of contact between the warehouse, the marshalls on the ground, and every external carrier calling about a truck. It is relentless multitasking, and the cost of a mistake is a trailer in the wrong bay and a driver waiting.
The core discipline is that the yard management system has to be the truth. Every decision downstream depends on it, so keeping it accurate under time pressure is the job.
The end-of-shift report was a manual count. I replaced it with a read-only browser tool that reads the yard page and produces the same numbers in a second — then spent months making sure those numbers were actually right.
A userscript that reads the yard table in place and reports the figures the shift actually runs on: empty primes, loaded units by carrier, free bays, units out of service. Click any number and the page collapses to exactly the rows behind it, so a count can be checked against a yard walk instead of trusted.
Paste one export, get the handover report — zone occupancy, vehicle type against flow, carrier breakdown, capacity remaining. Every figure verified to match the live panel line for line on the same data.
No network calls, no remote resources, read-only against the source system. Every cell of the page is byte-identical before and after the tool runs. That property was the requirement, not an afterthought.
JavaScriptDOM extraction Excel modellingCSV pipelines PythonCloudflare Workers TableauSQL basics
When a yard or transport platform ships a feature, someone in my seat decides in about ten seconds whether it survives contact with a shift. I have been on that side of every rollout: the field nobody fills in, the report that doesn't reconcile, the workaround that becomes policy.
That is unusual in an implementation or support team. The domain knowledge normally has to be taught. I arrive with it, and with enough engineering to read an export, reproduce a customer’s problem, and say precisely which assumption in the data model broke.
I was a performance analyst at Hyderabad FC before I moved to Germany, and I have not stopped since. Football Talkies is a blog I have written and maintained for years, migrated across hosting stacks myself when the old one stopped making sense.
The Kerala Super League pipeline is a Python project that pulls, cleans and publishes match data for a league nobody else covers properly — the same extract, reconcile, publish loop as the yard tooling, on a dataset I chose because I wanted it to exist.
FLAMES is a small web game running on Cloudflare Workers. Hardly serious work, but it shipped and it stays up.