Solo-building and running Oslo Felgretting's ticketing platform for four years
Sole engineer for a job-ticketing and workflow platform used daily by Oslo Felgretting, a Norwegian wheel & rim specialist, for four years and counting — requirements, build, and every release since, on a lean, serverless AWS architecture.
Freelance Full-Stack Engineer — sole engineer, requirements through deployment
4+ years, ongoing
Owner's memory & handwritten notes
→
Structured digital tickets, searchable by ID/name/mobile
Not tracked systematically
→
2,000+ customer records retained and searchable
Oslo Felgretting is a wheel and rim repair shop near Oslo — straightening, welding, powder coating, refinishing, tyre fitting. Before this platform, job tracking lived in the owner's head and handwritten notes, not in any shared system. There was no existing software to migrate from — this was a from-scratch build, working directly from the owner's description of how a job actually moves from drop-off to delivery, plus a Business Analyst and a PO/Customer Success collaborator on the non-engineering side.
The challengeA repair shop takes in multiple jobs per visit — straightening, welding, refinishing, a tyre swap — each with its own rim/tyre specs, vehicle details, and expected-vs-actual delivery date, for a customer who may come back repeatedly over years. None of that was structured anywhere. The system needed to be simple enough that in-house staff would actually use it instead of reverting to notes, and cheap enough to run indefinitely for a small business rather than something that would eventually get migrated away from over hosting cost.
Approach
Ran requirements directly with the business owner rather than against an existing system — no legacy software, no data migration, just a shop's real workflow translated into a schema.
Designed a multi-tenant GraphQL schema (Company → Ticket/Service/User) from day one, so the same platform could scope data per company rather than being hard-coded to one business.
Chose a genuinely serverless, pay-per-use AWS architecture deliberately, not by default — Cognito for auth, AppSync/GraphQL for the API, Lambda for business logic (ticket creation, invites, notifications, batch job fetches), DynamoDB and S3 for data and file storage. For a business this size, an always-on server would mean paying for idle capacity almost all the time; the serverless footprint keeps monthly infrastructure cost negligible even four years in.
Recovered from a production database rollback a couple of years into the engagement by re-provisioning a versioned set of tables rather than attempting a risky live in-place fix — kept the shop trading with zero data loss and no extended downtime.
What shipped
Multi-job tickets: each visit can carry several jobs against one ticket, each with rim/tyre specs, vehicle details, and expected vs. actual delivery dates.
Admin dashboard: ticket/job tracking, analytics on volume and trends, customer management, and role-based user management with an email invite flow.
Self-serve configuration: job types, brands, and sizes are editable by the shop itself through a settings screen — no code change needed for day-to-day catalogue updates.
Search across ticket ID, customer name, mobile number, and status, plus batch operations on jobs; a dedicated email-sending Lambda handles ticket-update notifications.
Scale of ownership
4+ years
In continuous production use5–10
In-house users60–80
Tickets logged monthly2,000+
Customer records trackedThe hard part was never the AWS wiring — it was translating a shop owner's memory of how a job actually flows into a schema simple enough that staff would use it instead of reverting to notes. Four years of near-continuous small releases on a genuinely serverless architecture, sized to the business's real usage rather than provisioned for growth that may not come, is what's kept this affordable enough for a small business to run indefinitely.
Have a codebase or product with similar problems?
Tell me what you're working on and where you're stuck. I'll determine whether I can help.
Discuss a Project