Trade applications
Surveys, job tracking, stock, inspections, timesheets. Built for a gloved hand and a wet screen.
Kotlin · Jetpack ComposeFor years we paid subscriptions for jobsite tracking software. It was designed by people who had never tried to fill in a form on a ladder, in November, wearing gloves.
We ended up hiring a developer to write what our crews actually needed. That one job became a workshop, the workshop published an app, and other roofing firms started asking for the same thing.
What we refuse to ship
Projects small enough to finish, rather than large enough to drift.
Surveys, job tracking, stock, inspections, timesheets. Built for a gloved hand and a wet screen.
Kotlin · Jetpack ComposeLocal database, instant writes, a sync queue. The interface never blocks waiting on a network request.
Room · SQLiteStore listing, content rating, Data Safety form, signing and test tracks. Filled in by hand, line by line.
Signed AABAn app that got slow, heavy or rejected by a store. We audit it, write down what we find, then start cutting.
Audit · Report · RebuildTake-off calculators, quote generators, survey sheets. Often one page that replaces a shared spreadsheet.
Android · WebTarget API updates, fixes, keeping up with store policy changes. An annual contract, not a subscription in disguise.
By projectThe part that calculates is written as an isolated module with its own tests, before a single screen exists. When a number looks wrong six months later, we already know where it is not.
It is the same logic as on a roof: you check the deck before laying the covering, because afterwards everything is hidden.
Tell us what the app should do, who will use it and in what conditions. The conditions matter as much as the features.
[email protected]