Web platforms, the data model underneath, the integrations either side, and the field devices when the model reaches into the physical world. Rails and Next.js on the server, edge agents on the hardware, built so the model on paper actually runs in production.
A model that only exists in a document is a document. The build is where it becomes an operating model: the platform your staff and customers actually use, the data model underneath it, the integrations to payments, invoicing, and logistics, and the monitoring that tells you it is running.
We work in Rails and Next.js on PostgreSQL, deployed to AWS or Vercel, with plain HTTP between the parts. Django and Wagtail where they are already in place. Where the model touches hardware we do that side too: 4G routers, Raspberry Pi agents that hold state through a network outage, smart locks, temperature sensors, label printers — provisioned and managed remotely, so nobody drives out to reboot anything.
Willit is the working reference. Viher IT builds and runs willit.fi, a Rails 8 marketplace for Finnish small producers, and the IT behind its pickup containers: device agents reporting health every five minutes, access that still works when 4G drops, label printing, and cold-chain alarms wired into the same platform that sells the food.
Rails and Next.js on PostgreSQL, deployed to AWS or Vercel, plain HTTP between the parts. Django and Wagtail where they are already in place; Java and Spring Boot where the integration demands it. Boring, well-documented tools chosen because they can still be maintained in five years.
The IT side of it: device selection, networking, edge software, remote management, and the integration back into your platform — 4G routers, Raspberry Pi agents, smart locks, temperature sensors, label printers. We do not manufacture anything, and we will say plainly when off-the-shelf equipment is the better buy.
Risto, with AI agents in the loop for the mechanical parts — migrations, test scaffolding, first drafts of documentation. One person is accountable for the result end to end, and that person is the one who answers the phone three years later.
You have the repository, the deploy pipeline, and the runbooks already. If you want us to keep running the system, that is a separate agreement priced openly — not a dependency designed into the architecture.