01 · Review
Architecture and build-vs-buy review
You get each option’s five-year cost, the point at which the recommendation would change, and a date to revisit the decision.
- A written document
- Assumptions ranked by sensitivity
// Engineering studio · Sarajevo · remote
We design, build and run custom software and apps for payments, identity documents, POS terminals, warehouses and fleets, for clients in the US, Europe and West Africa.
$ mt deploy --env production
✓ types no any, typed requests
✓ tests foundations, payments
› cutover CloudFront origin swap
✓ live no visible change for users
6
years shipping production software
11
client systems, four of them for direct clients
2
client products we built were sold, one of them to a US bank
0
recorded outages through four phases of one live product
The tag above each number says how we got it.
// Case studies · 18
We don’t name clients, and their systems sit behind logins. Each case explains what had to stay as it was, what we decided and what the numbers showed.
$ mt case open --id 04
Technical Lead · Jul 2022 – 2026 · direct client · team of 12
could_not_change: The marketplace was the client's only source of revenue, so nothing could be taken offline or rewritten in place.
Node.js · React · Next.js · Expo · MySQL · OpenSearch · InfluxDB · Redis · AWS
$ mt case open --id 13
Data warehouse architect · 2025 – present · direct client · the choice of warehouse was mine
could_not_change: The BI tool generates the queries and customers' saved reports depend on the schema, so neither could change.
Amazon Redshift · S3 · MySQL · materialized views
$ mt case open --id 09
Full-stack engineer · 2024 · 6 months · direct client
could_not_change: The applications included biometrics, and the people the agents visited often had no connection.
React · Next.js · Expo · PostgreSQL · AWS · offline-first · biometrics
$ mt case open --id 10
Full-stack engineer · 2020 · 6 months · via agency
could_not_change: Regulation required video identification, and each session's record had to hold up in a review years later.
TensorFlow · WebRTC · React Native · Node.js · AWS · NFC / ICAO 9303
// How we decide
Each proposal we make has a fastest, an optimal and a best option. For each one we give the price and what has to be true in two years for it to pay off.
Real example · Campaign and email system for a marketplace
Fastest
An account on a ready-made service: you use its templates and import users from a CSV.
Trade-off
You’re live in days, but from then on the business depends on a service you have no say in.
Must be true in two years
Campaigns remain a side channel, and revenue doesn’t depend on them.
Optimal
We send the email ourselves, through an external provider.
Trade-off
Better control over content and timing, but the data still sits in someone else’s dashboard.
Must be true in two years
Volumes stay moderate and nobody needs per-user history.
Best
Our own system around the sending service: templates, a queue, bounces and opens per user, all in the admin dashboard.
Trade-off
Costs the most up front, but one system covers campaigns, renewals and bulk sends.
Must be true in two years
Renewals and campaigns keep driving revenue. The client chose this option.
// Principle
Sending an email is a commodity. The product is knowing which user didn’t open it, and seeing that on the user’s profile in your admin dashboard.
// Build vs buy, 2026
We costed five scenarios over five years. Building came out at about twice the price, so we recommended renegotiating with the existing vendor and named the contract value at which that recommendation would change.
// Ways to hire us
We’ve done each of these more than once. A written review has a fixed price; builds and lead roles are billed by the hour.Working with us remotely: hours, contracts, invoices
01 · Review
You get each option’s five-year cost, the point at which the recommendation would change, and a date to revisit the decision.
02 · Build
It covers web, mobile and the API, including the parts with no SDK: payment gateways, passport chips, POS terminals and thermal printers.
03 · Lead
Four years on one product: rescue, rebuild, a shared design system and AI in the team’s daily work, plus hiring and mentoring.
// AI in a client team · 2026
On a US marketplace we turned the team’s coding standards into automated checks, since conventions nobody enforces get ignored. Each codebase has its own rule set, run in the pre-commit hook and again in CI. Claude works within those rules every day, on components, tests and integrations.
$ pre-commit run --all. ● web no-explicit-any ✓. ● web typed api calls ✓. ● web component ≤ 200 lines ✗. FleetTable.tsx has 231 lines: split it. ● api request/response types ✓. ● cds primitives tested ✓. ✗ commit blocked · 1 rule failed. same rules run again in CI, no bypass
// Writing
20 OCT 2026 · 5 min
Working with a software team in Bosnia and Herzegovina: what to check
Time zone, contracts, code ownership, personal data, invoices and holidays: what a US or EU company should check before a team in Sarajevo starts work.
19 OCT 2026 · 4 min · Data
Technical due diligence: read the bill before the code
Before you buy or fund a product, its cloud bill shows what the system really does. How I read an unfamiliar system, and what the assessment contains.
26 SEP 2026 · 5 min · Platforms
Our design system as a skill made an AI agent at least 2× faster
An AI agent built the same design in 31.7 hours with our design system as a library, then 2.5 hours with it as a skill. A newer model explains part of the gap.
22 SEP 2026 · 10 min
The biggest fool: six confident AI errors in one afternoon
In my cost research an AI made six errors, none hedged, each making the story tidier. The same pattern shows in 1,598 court cases and invented package names.
// Next step
We start with a 30-minute call that commits you to nothing. Afterwards we come back to you with the options and what each one depends on.