Tech · Pragmatic Software

Real systems, real technologies.

We are focused on building high-quality solutions, independently of the technology we use. Choosing the right technology is what makes a solution actually work — within the constraints of time, money, and the next ten years of running it in production. 

Most of what we ship runs on the same core stack: .NET, React, React Native, SQL Server, Azure. Twenty years of production experience taught us to choose technology we’d be confident maintaining in a decade — not what looks newest in a presentation. 

<h1 class="hero__title fade-in d1">Real systems, <em>real technologies.</em></h1><p></p>
<h1 class="hero__title fade-in d1">Microsoft <em>.NET Stack</em></h1><p></p>

Microsoft .NET Stack

Our core backend platform — and where most of our engineering hours have gone over the last twenty years. We work on current versions and we know the legacy ones too, which matters when systems live as long as ours do.

  • Modern .NET — .NET 8 / 10, ASP.NET Core, C# 12, Entity Framework Core, Web API, .NET MVC

  • Frontend in the stack — Blazor WebAssembly for in-stack rich web apps

  • Cloud-native services — Azure App Service, Azure SQL, Azure Functions, Azure Storage

  • Legacy maintenance — .NET Framework 4.x for systems still in production, with migration paths to modern .NET when the time is right

Web systems, real technologies

Browser-only applications that work behind enterprise firewalls, install nothing on the client, and stay fast on hardware that isn’t new. Built on a stack we’ve used long enough to know its edges.

  • Frameworks — React, TypeScript, Blazor WebAssembly

  • Build tooling — Vite, modern JavaScript (ES6+)

  • Styling — Tailwind, CSS Modules, Bootstrap for established systems

  • APIs — REST and GraphQL on clean OpenAPI surfaces

  • Testing — Playwright (E2E), React Testing Library, TestCafe

<h1 class="hero__title fade-in d1">Web systems, real <em>technologies</em></h1><p></p>
<h1 class="hero__title fade-in d1">Mobile software <em>development</em></h1><p></p>

Mobile software development

One codebase, two platforms, hardware that isn’t always new and networks that aren’t always there. We build mobile applications that work offline and sync when they reconnect — because that’s the reality our clients’ users live in.

  • Cross-platform — React Native (primary)

  • Targets — iOS and Android, single codebase, native feel on each

  • Patterns — offline-first, real-time sync, push notifications

  • Distribution — App Store, Google Play, enterprise distribution where required

How we choose technology

A conservative stack, by choice.

When a project comes to us, the focus isn’t on the newest tool, but on what will still be stable, supported, and understandable years from now. In most cases, that means relying on proven technologies rather than the latest releases.

That’s why .NET, React, React Native, SQL Server, and Azure form the core of what we build — technologies we know deeply, can support long-term, and can safely hand over when needed.

We also work outside our core stack when the project requires it — PostgreSQL where it’s the better fit, AWS or Google Cloud when needed, and other languages for integrations or specific use cases.

A boring stack in production is better than a clever one in a presentation.

Have a system worth building well?
Tell us a bit about the project. We usually reply within one working day, often with the engineer who would actually work on it.