Custom software, built and operated.
Most shops hand you a repository and disappear. We build software the way it has to exist to survive contact with real users: migrations, staging, audit trails, monitoring, and someone still around when it breaks at 11pm.
Every project starts with a paid discovery sprint that ends in a fixed price. You know the number before the build begins.
Beside Care: a production SaaS we built and still run.
Beside Care is an elder-care monitoring service of ours. It ingests camera events from a family member's Ring devices, turns them into plain-language insight for caregivers, and notifies people when something looks wrong.
To get it listed as a partner integration, we implemented an OAuth authorization server so Ring could send users to us. That is the kind of work that separates a demo from a product, and it is the same work we do for clients.
We are not just recommending this architecture. We are on call for it.
What is actually running
- 6
- independently deployed services — two web apps, four background workers
- 252
- tracked database migrations, each one reversible
- ~70
- Postgres tables covering devices, events, plans, and consent
- 2
- full environments — staging mirrors production before anything ships
Includes a subscription and entitlement system, an AI summarization pipeline with vector search, webhook ingestion through queues, and a consent ledger with audit logging.
What we build
If it runs on the web, has users, and holds data, it is in scope. Below is work we have actually shipped, not a menu of things we would be willing to try.
Web applications & portals
Customer-facing portals and internal operator consoles: accounts, roles, permissions, and the admin tooling your team actually runs the business from.
APIs & integrations
REST APIs, webhook intake, and OAuth. We have built an OAuth authorization server from scratch to become a listed partner integration on another company's platform.
Background processing
Queues, scheduled jobs, and event pipelines for the work that cannot happen inside a web request: ingestion, retries, notifications, digests.
AI features
Vector search and LLM pipelines wired into real data, with the unglamorous parts handled: cost controls, retries, and deletion jobs that actually remove embeddings.
Data & reporting
Schema design, versioned migrations, and reporting built on your own numbers. We wire up GA4, Search Console, and third-party analytics as first-class data sources.
Rescues & takeovers
Inherited a half-finished build or lost the original developer? We assess what exists and give you a straight answer on finishing versus rebuilding.
Discovery first, then a fixed price
Nobody can quote custom software from a phone call, and anyone who does is either guessing or padding. So we split it: a small paid engagement to figure out what you actually need, then a fixed price to build it.
$500–$1,500 · about a week
We map the problem, choose the architecture, and break the work into a build sequence. You end up with a written plan and a fixed price.
- Architecture & data model plan
- Scoped, sequenced build plan
- Fixed-price proposal
- Yours to keep, even if you walk
Fixed price, in milestones
We build in visible increments. At the end of each milestone you get something working to click through, not a status update.
- Discovery fee credited toward the build
- Working demo at every milestone
- Built in your accounts from day one
- Scope changes repriced in writing, never silently
Hand off or keep us on
Shipping is the start of the software's life, not the end. Take it in-house, or keep us on monthly for features and upkeep.
- Full transfer of repo, infra, and data
- Runbooks and documented architecture
- Optional monthly engineering retainer
- No lock-in — leaving is a supported path
What "production-ready" means here
The phrase gets used loosely. These are the specific things we do not skip, because they are what make the difference a year in.
Versioned migrations
Every schema change is a tracked, reversible migration — not a hand-edited table.
Audit & consent trails
When a system touches personal data, who-did-what and who-agreed-to-what are recorded.
Staging before production
A separate environment that mirrors production, so releases are rehearsed.
One stack, used in anger
TypeScript from the database to the browser. We deliberately keep a narrow stack: it is the one running our own products in production, so we know its failure modes rather than its marketing pages.
If your project genuinely calls for something else, we will say so during discovery instead of bending your problem to fit our habits.
Our default stack
What it costs
Software pricing depends on scope, so these are honest starting points rather than a menu. The discovery sprint exists to turn them into one real number.
Discovery sprint
Fixed fee, about a week, credited toward the build.
Focused tool or integration
A single job done well: an internal tool, an API integration, an automation.
Product build
Accounts, roles, billing, background work — a system, not a screen.
Ongoing engineering
Monthly capacity for features, upkeep, and monitoring after launch.
Need a website rather than an application? Web design starts at $250, and our full pricing lists every plan.
Questions about custom builds
Tell us what you are trying to build.
You do not need a spec, a budget, or a finished idea. If you can describe the problem, we can tell you whether software is the right answer and roughly what it would take.
If it turns out you need a website instead of an application, we will say that too.
Start a discovery sprint