Blog
How we build, test and ship SaaS and AI software, written by the people who do the work.
Quality
Testing against real databases with Testcontainers
Why our integration tests start a real MongoDB or PostgreSQL in a container instead of mocking the driver.
Engineering
Tenant boundaries that hold in a multi-tenant SaaS
One codebase serving many organisations is efficient until one tenant sees another’s data. How to make the boundary structural.
AI
Adding LLM features that fail safely
Language models are slow, occasionally wrong and sometimes unavailable. Design the feature around that from the start.
DevOps
Scanning container images before they deploy
Generating an SBOM and scanning every image in CI, so a known vulnerability is caught at build time, not after release.