Available for backend & tooling work

Hi, I’m Ehab Terra.
I solve my own problems
in the open.

I build the tools and references I wish already existed — then publish them, in case the problem was yours too.

Scalable backend systems, language internals, and software architecture — turned into things you can actually use: an OpenAPI generator for Go, visual references for engineers, and a handful of small, sharp services.

How I work

Build it once, share the why.

Most of what I publish started as something I needed. The bet is simple: if a problem cost me a weekend, it probably cost you one too — so the solution belongs in the open, with the reasoning intact.

Solve a real problem

Every project answers a question I actually hit in production or while learning — not a hypothetical one.

Build it in the open

Apache- and MIT-licensed Go, tested and documented, so anyone can read it, run it, or take it further.

Explain the trade-offs

The reasoning matters as much as the code. References, diagrams and docs make the “why” reusable too.

Selected work

Things I’ve built and shipped.

A few open-source projects worth your time. The full list — experiments and all — lives on GitHub.

apispec 79

OpenAPI 3.1, generated from real Go code

Point it at a Go module and get an accurate OpenAPI spec — routes, parameters, request and response bodies — inferred by walking the call graph, not from annotations that drift. Detects Gin, Echo, Chi, Fiber, Gorilla Mux and net/http. Ships a CLI, a browser UI, and an interactive call-graph explorer.

Go openapistatic-analysisgo
architecture-reference 0

A visual guide to software architecture

Foundations, architectural styles, DDD, microservices, event-driven and distributed systems, APIs, cloud & SaaS, and the architect’s path — with diagrams, trade-offs, quizzes, progress tracking and Arabic localisation.

MDX software-architecturesystem-designastro
go-reference 2

A Go-first reference for Go engineers

The whole stack from the language itself to internals, systems and architecture — with diagrams, runnable Go, quizzes and progress tracking.

MDX golangeducational
workflow 6

A workflow engine on Petri-net foundations

Orchestrate steps, tasks and data in Go with reliable flow management and visualization. Built on Petri nets, inspired by the Symfony Workflow component, with a focus on portability.

Go workflowpetri-netsgo
users 2

A small, self-contained user-management service

A Go user-management system backed by BoltDB — a compact reference for auth and storage without dragging in a database server.

Go goboltdbauth
money-transfers 1

Account-to-account transfers, simulated

A small API that simulates money transfers between accounts — a clean walk-through of modelling balances and moving money safely.

Go goapifintech
See everything on GitHub
Get in touch

Let’s build something remarkable.

Open to interesting backend, architecture and developer-tooling work — and always happy to talk Go.