AI transformation that makes it to production.
From first pilot to a system your people use. I find where AI pays off in your company, prove it on one real process, then build and run it with your team until it is part of how the work gets done.
Production-Ready Systems with LLMs and Agents
A live Maven cohort for engineers: eight 90-minute sessions where you build LLM and agent systems that survive real traffic, real cost and real failure.
Cohort 2 is running now. Join the waitlist for the next cohort.
Join the waitlist ↗Also on Maven, waitlist open: From Senior to Staff: Master the Architecture Skills That Get You Promoted ↗
What people say
29+ engineers and colleagues, sharing what changed after we worked together.
“Working with Ehsan has been a blast! Ehsan has done an excellent job as the JavaScript Developer at Round Table Apps. He is also very attentive to details and creative in creating an engaging experience. I would highly recommend Ehsan as an invaluable asset to any organisation or team.”
“I've been working with Ehsan in Netbarg. He has always proved to be a results-oriented teammate who has great technical skills. I would like to recommend Ehsan as a key co-worker to whom to trust any critical work.”
“It was a great session with Ehsan. I really admired the way he made me understand about so many things. I got to learn a lot from him”
More ways to learn
- Self-paced coursesFive self-paced courses, $99 to $299, from clean code and system design to LLM and agent systems.Browse courses →
- 1:1 mentorshipCareer, system-design judgment, and the path from senior to staff and principal.See programs →
- Writing & podcastHundreds of deep-dives on architecture, plus the Breakpoint podcast.Read the latest →
- Persian coursesThe Farsi side of the site: eight video courses on JavaScript, React, Node and code quality, plus writing in Persian.Open the Persian site →
Latest writing
Agents in the Sandbox: Containers, gVisor and MicroVMs for Code You Do Not Trust
Notes from the LangChain Community London x Focused.io evening on agent sandboxes: why your agent is the attacker in your threat model, how containers, gVisor and Firecracker microVMs actually differ at the kernel boundary, and why the network and credential layer matters as much as the box.

Your 2027 AI Plan Should Fit on One Page: Six Questions to Answer First
Most AI roadmaps are a list of projects nobody can decide on. A plan worth funding answers six linked questions on one page.

The AI System Works. So Why Is Nobody Using It?
Your AI tool passed every test, yet people still work the old way. Adoption is a change in behaviour, and it has to be led like one.

If AI Had Existed When Your Workflow Was Designed, Would It Look Like This?
Your team added AI to one step and the work arrives no sooner. The workflow itself is built on old constraints, and that is what needs redesigning.

AI Transformation Is Not Digital Transformation With a New Tool
Your AI plan looks like your last digital programme: a tool, a rollout, a go-live date. What carries over, what breaks, and what to run instead.

Your AI Pilot Saved Time. Why Didn't the Business Change?
Your AI pilot made one step faster, but the results did not move. The cause is usually the slowest step, and what you did with the time.
Popular this week
What other engineers have been reading in the last seven days.

Lefthook vs Husky: Why I Switched and Never Looked Back
Lefthook replaces Husky and lint-staged with a single Go binary, parallel hook execution, and built-in file filtering. Here is why I switched and kept going.

SQLZoo SELECT from WORLD: Solutions and Explanations
Worked solutions to every SQLZoo SELECT from WORLD exercise, from basic filtering to population and GDP-per-capita queries, each explained step by step.

Monorepo Tools Compared: NX, Turborepo, Bazel, and Rush
Compare the leading monorepo tools: NX, Turborepo, Bazel, Rush, and PNPM workspaces. Choose the right fit for your team size, stack, and build needs.

Understanding LocalStorage Limitations in TypeScript
LocalStorage is simple. That's both its strength and its trap. Developers reach for it because it's easy, then discover its limitations in production.

Non-Functional Requirements in Software Architecture: How to Define Them
Most engineers I work with can tell you what a system should do. Few can tell you how well it should do it. That gap between "what" and "how well" is wher...

oxlint vs ESLint: Why I Replaced ESLint with oxlint
Replaced ESLint with oxlint in a React TypeScript project and cut lint time from 12 seconds to under one. What I traded away and whether it was worth it.
Where to start
The deep dives I'd point a senior engineer at first, grouped by topic.

SQL, from SELECT to subqueries
Worked SQLZoo solutions, joins, aggregates, GROUP BY vs HAVING, and subqueries — the queries interviewers actually ask.
9 deep dives · Start reading →
Database performance & scaling
Indexes, query optimisation, sharding, replication and normalization — how to make a database fast and keep it fast.
8 deep dives · Start reading →
Modern TypeScript tooling
Why oxlint replaced ESLint, pnpm vs npm, Lefthook vs Husky, and the Rust/Go shift in the frontend toolchain.
6 deep dives · Start reading →
Data structures in TypeScript
Arrays, linked lists, stacks, queues, trees, tries, graphs, heaps and hash tables — implemented and explained in TypeScript.
12 deep dives · Start reading →
Sorting & searching algorithms
Insertion, selection, merge and quick sort, plus binary and substring search — the classic algorithms, step by step.
6 deep dives · Start reading →
Design systems in practice
What a design system really is (per Atlassian), how Dropbox and Netflix build theirs, and how to roll out an internal UI component library.
6 deep dives · Start reading →
Scaling & system architecture
Horizontal vs vertical scaling, capacity estimation, resilience patterns and the architecture principles behind systems that grow.
6 deep dives · Start reading →
X vs Y: engineering trade-offs
Head-to-head breakdowns — oxlint vs ESLint, REST vs GraphQL, SQL vs NoSQL, Svelte/Preact vs React — with the trade-offs that decide it.
12 deep dives · Start reading →


