It is an internal tool when
One organisation uses it
- Every user works for you
- One set of rules, one configuration
- You control when everyone upgrades
- Nobody is billed for using it
Build it simpler. Multi-tenancy you never need is pure cost.
Software product development
Products need things internal tools never do: tiers, tenants, licensing, onboarding and a way to ship without breaking existing customers. We have built both, and they are not the same job.
Book a 30-minute scoping call See the products
Bring the pricing model to the first call. It shapes the architecture more than the feature list does.
| Who is the tenant Company, site, or individual | Architecture |
|---|---|
| What separates tiers Features, limits, or seats | Architecture |
| Can a customer self-serve Sign-up without you | Architecture |
| Who hosts it Your cloud, or theirs | Architecture |
| How you ship Everyone at once, or per tenant | Architecture |
Product or internal tool
Teams often ask for a product and describe an internal tool, or the reverse. Getting this wrong is expensive to undo.
It is an internal tool when
Build it simpler. Multi-tenancy you never need is pure cost.
It is a product when
Both products below are this. One has tiers, one is white labelled and self-hosted.
Plain definitions
People nod at both and mean different things. That gap is where rebuilds come from.
It is building software that strangers pay to use, which makes it a different discipline from building software your own staff use. The work includes deciding what is in which tier, how somebody signs up without talking to you, and how you ship an improvement without breaking a customer who paid last month.
The feature list is the smallest part. Pricing, tenancy and release process shape the architecture, and all three are cheap to decide early and expensive to change later.
Multi-tenancy means many customers share one running deployment while their data stays separated. You patch once, you run one set of infrastructure, and a new customer costs almost nothing to add.
The cost is that isolation has to be enforced by the system rather than remembered by a developer. Get it wrong once and one customer sees another customer's records. If you only ever expect a handful of large buyers who each demand their own instance, single tenancy is the cheaper answer and we will say so.
What we build
What people ask us for
These are the briefs that arrive. Most are one of them, some are two at once.
Three fields. An engineer reads it, not a sales rep. You get an answer within one working day.
Our work
Case study, United Kingdom
Hydrajaws wanted their testing software to reach more of the market without giving away the paid capability. We built free and premium apps from one shared codebase with user management behind Azure AD B2C, and integrated the KTC SDK so the premium tier could read digital torque values directly from the instrument.
Case study, IoT platform
IoT Workz was locked into a SaaS vendor: enterprise features sat behind tier upgrades, white labelling was not available, and the data was not theirs. We built a self-hosted platform on ThingsBoard with a white-label layer, Keycloak for single sign-on, a rule engine for alarms, over-the-air firmware updates and multi-tenant isolation.
How the work runs
Week 1
Tenants, tiers, pricing and delivery. These decide the architecture, so they come before features.
Week 2 to 4
Isolation model, identity, and a clickable prototype of the paid path.
Week 5 to 16
Aim at something one real customer can buy, not a full roadmap. Demo every two weeks.
After launch
Pipelines, regression suite and a release process your own team can run.
Technology and integration
The delivery model decides most of this. We settle that before the stack.
Who does the work
Product work needs somebody who will argue with you about scope. A team of twenty has no room for people who quietly build whatever the last email asked for.
You interview whoever we put forward. Ask what they would cut from your first release, and see whether the answer is specific.
Custom software development is the wider page on building versus buying, and identity and access covers the tenancy half in detail. The services directory lists everything.
How we work
The models differ in one thing: how much of the management you hand over. Everything else, including who owns the code, is the same in all five.
Changing model later is normal. Augmentation into a dedicated team is the common direction, and the people stay.
Engineers join your team and work inside your process, your board and your code review.
A team that works only on your product, with a lead on our side running delivery.
A long-term engineering site under your standards, where we carry recruitment, HR, payroll and equipment.
04
One price for a scope that is genuinely settled, with the overrun carried by us.
Everything in the centre model, with the whole team moving into your own Vietnamese entity on an agreed date.
FAQs
Start with the smallest thing one real customer would pay for. That is usually narrower than an MVP as normally scoped, and it tells you more.
Multi-tenant unless buyers demand their own instance. We have built both, including a platform designed to be self-hosted by the customer.
Yes, that is how the Hydrajaws apps work. Entitlements are enforced server side, so the paid features cannot be switched on from the device.
We integrate the billing provider you choose and enforce entitlements against it. We do not build payment processing from scratch.
You do, entirely, including the code and the intellectual property.
Yes, either as a dedicated team or a support arrangement. Or you take it in house and we hand over.
The smallest thing one real customer would pay for is usually 10 to 14 weeks. Tiers, tenant isolation and self-service sign-up add to that. Self-hosted delivery adds more again, because you are then shipping something a stranger has to install. Pricing follows the engagement model above rather than a published project price.
By making configuration do the work that a fork would otherwise do. Branding, feature flags and tenant settings cover most special requests, and anything left goes on the roadmap or gets declined. One codebase per customer is the failure mode that quietly ends product companies, and it starts with a single reasonable exception.
Handled either by deploying a regional instance or by shipping the self-hosted edition, and the choice depends on how many such customers you expect. We built IoT Workz so the customer runs it themselves, which removes the question entirely at the cost of a harder release process.
How you plan to charge tells us more about the build than a backlog does. Thirty minutes and you will have an architecture sketch.