Our process
Our technology stack, and how a stack gets chosen
What we build with, and the more useful question underneath it: how the choice is made, and why the fashionable answer is often the wrong one.
The situation
The stack is a decision, not a preference
A technology chosen because it is current, or because the last supplier liked it, becomes your problem for a decade. The constraints that matter are rarely technical.
- A system built on a framework nobody can now hire for
- A stack chosen by whoever happened to be available
- Technology picked for a scale the organisation never reached
- An estate of five languages maintained by one small team
- A platform whose licensing changed after you committed
- Nobody able to explain why a particular choice was made
What it covers
What we build with
Broad rather than exhaustive. What matters is that these are technologies we have run in production, not ones we would be learning at your expense.
Application
.NET, Java, Node.js, Python and PHP on the server; React, Next.js, Angular and TypeScript in the browser.
Mobile
React Native and Flutter for cross-platform, Swift and Kotlin where native is genuinely warranted.
Data
SQL Server, PostgreSQL, MySQL and Oracle; MongoDB, Redis and Elasticsearch where the shape of the data calls for it.
Cloud and platform
Microsoft Azure and AWS, Docker and Kubernetes, Terraform and Bicep, private cloud and on-premise.
Integration
REST, GraphQL, message queues, Azure Integration Services, and the older protocols legacy estates still speak.
Business platforms
Salesforce, Microsoft Dynamics, Blackbaud, HubSpot, SAP, Oracle and Sage — named as systems we work with, not as partnerships.
How we work
How we choose for a project
In roughly this order. Note that technical merit appears third, after two questions about your organisation.
What can you maintain?
Whatever your team can hire for and support beats whatever is technically elegant. This constraint decides more than any other.
What do you already run?
A new technology in an estate of one other is a permanent cost. Consistency is worth a great deal.
What does the problem need?
Only now the technical question — the workload, the integrations, the data shape and the genuine performance requirement.
What survives ten years?
Governance, licensing history and community health. A project that changes its licence after you commit is a business risk, not a technical one.
Outcomes
What this gives you
- A stack you can hire for rather than one you admire
- Consistency with what you already run, where sensible
- A recorded reason for each significant choice
- No dependency on a technology only we know
- Licensing implications understood before committing
- The freedom to move suppliers without changing platform
Common questions
Questions we are usually asked
No, and being dogmatic would be a poor sign. What we prefer is a stack you can support after we have gone, which frequently means matching what you already run rather than what we would choose on a blank page.
Usually not. Newness buys features and costs stability, hiring pool and documentation. For most business systems that is a poor trade — the exception is when a specific new capability genuinely solves your problem.
That is a legitimate constraint and usually a sensible one, particularly if you have people who know it. We will say if we think it is the wrong choice for a specific requirement, and then work within your decision.
Generally yes. A great deal of our work is on estates built by other people in technologies we did not choose, and being able to work in what is there rather than insisting on a rewrite is part of the job.
Standard technologies, code in your repositories, deployment in your accounts, and documentation written for a team that has not met us. Lock-in is a business model, not a technical necessity.
It is checked rather than assumed, particularly where you redistribute software. Copyleft obligations can affect what you are permitted to do commercially, and that is better established at the start.
Talk to someone who has built this
Not a salesperson working from a form. Tell us what the problem looks like and someone who has delivered this kind of work will come back to you, usually within one working day.
Book a free consultationRelated
Where this usually connects
- Working with usWhat an engagement looks like from first call to live system.
- Agile software development methodologyHow we actually run delivery, and where we depart from the textbook.
- Cloud servicesMoving to cloud, or making an existing cloud estate behave.
- Open source development and migrationReducing licence cost without losing capability.
- Systems integrationMaking the systems you already own talk to each other.
- Application development and maintenanceBuilding it, then keeping it running and current.