Systems Engineer — Tripoli, Lebanon

Buildingsystemsthatactuallyship.

I'm Khaled — a software & systems engineer. I design and build production platforms, intelligent workflows, and the quiet infrastructure underneath. Most of my work happens through Nawaah; some of it is personal.

Khaled Al Hawat
Khaled Al HawatFILE-01 · 2026
21Projects built
2026Available for select work
01 — Selected work
Case studies

Built to hold up in production.

02 — Stack
Technologies, and what I do with them

The tools, and the jobs they do.

89 technologies across 10 areas, each one load-bearing in something that shipped — and each linking to the projects it runs in. Where a choice was a trade-off, the reason is stated.

21Distinct projects
1,000+Automated tests
4TypeScript · Python · Dart · SQL
6Domains shipped in

Languages & runtimes

9
Python 3.11+↗Primary backend language: agent services, ETL pipelines, eval harnesses and CLI tooling. Typed end to end with Pydantic v2 models, checked under mypy --strict.8 projectsVeterinary Multi-Agent System, Agent Infrastructure Framework, AI Menu Ordering Platform +5TypeScript↗Strict mode in every web and desktop codebase — typed data layers, discriminated-union reducers, generated database types, no implicit any.5 projectsAthletIQ, KLDH262, AI Menu Ordering Platform +2Dart↗Flutter applications shipping to six targets from one codebase, organised into feature modules with provider-scoped state.2 projectsAthletIQ, Pet Health Companion App
SQL (PostgreSQL)Hand-written migrations, row-level-security policies, RPC functions, triggers and derived views — not ORM-generated.cross-cutting
Node.js↗Express services, build tooling, image and OG-card pipelines, and the main process of desktop apps.1 projectGymFlowDeno↗Runtime for Supabase Edge Functions — the serverless API surface for several products.1 projectIngredient Intelligence EngineTOML↗Declarative configuration format for agents, teams, tools and knowledge bases, validated strictly at startup.1 projectDeclarative Multi-Agent FrameworkYAML↗Test-suite configuration, judge thresholds and CI pipeline definitions.1 projectLLM-as-a-Judge FrameworkBash / PowerShell↗One-command dev environments, release packaging, and deploy scripts a non-technical owner can double-click.2 projectsGymFlow, Haircut Visualization

Backend & APIs

7
FastAPI↗Async services with SSE token streaming, heartbeat keep-alives for mobile clients, and ASGI middleware for auth and rate limiting; uvicorn in development, gunicorn + UvicornWorker auto-detected in production.4 projectsVeterinary Multi-Agent System, Agent Infrastructure Framework, AI Menu Ordering Platform +1Server-Sent Events↗The transport under every streaming assistant, with a documented event vocabulary — message deltas, structured state updates, stage transitions, confirmation gates, errors, and a terminal done event that is always last.3 projectsVeterinary Multi-Agent System, AI Menu Ordering Platform, Campaign Strategy AgentStructured-tag streaming↗Tags embedded in the model's own output stream drive live UI state — cart add/remove applied while the reply is still being written — with progressive parsing and recovery when a stream is cut mid-tag.1 projectAI Menu Ordering PlatformPydantic v2↗Request and response contracts plus deeply nested LLM output schemas — roughly 90 models in a single system — with a consumer-friendly variant generated alongside each clinical-grade report.3 projectsVeterinary Multi-Agent System, Agent Infrastructure Framework, Campaign Strategy AgentExpress↗Self-contained services where one process and one file are the entire deployment — nothing external to operate.1 projectGymFlowSupabase Edge Functions↗Serverless API surface; three separate internal FastAPI tools were migrated onto them and merged behind one console.3 projectsAthletIQ, Agent Operations Console, Ingredient Intelligence EngineAsync job queues↗Worker and queue layers for long-running analyses, with status polling, media handling and content-moderation flags.1 projectVeterinary Multi-Agent System

AI & agent systems

12
Agno↗Agent runtime under production assistants — wrapped in an in-house resilience, telemetry and auth layer rather than called raw.4 projectsVeterinary Multi-Agent System, AI Menu Ordering Platform, Campaign Strategy Agent +1Two-model pipelines↗A reasoning model thinks, then a low-latency model forces the output into the Pydantic schema. Cut one specialist from 33.1s to 11.7s at the cost of a small, measured and documented schema-conformance tax.1 projectVeterinary Multi-Agent SystemDeterministic stage engines↗An explicit state machine owns conversation flow instead of letting a model route itself; every stage transition passes a confirmation gate before advancing.1 projectCampaign Strategy AgentMulti-agent orchestration↗A triage agent that gathers context, detects emergencies and routes to eleven domain specialists; team modes for routing, coordination and collaboration.1 projectVeterinary Multi-Agent SystemGoogle Gemini↗2.5 Pro, Flash and Flash-Lite for reasoning and conversation across most agent products; vision models for reading colorimetric test strips from uncontrolled phone photos; image generation for visual try-on.5 projectsVeterinary Multi-Agent System, AI Menu Ordering Platform, Campaign Strategy Agent +2Groq↗The fast structuring pass in two-model pipelines, chosen for time-to-first-token.2 projectsVeterinary Multi-Agent System, LLM-as-a-Judge FrameworkTogether · DeepSeek · Llama 3.3 70B↗Alternate providers behind a pluggable model loader, swappable by configuration alone.1 projectDeclarative Multi-Agent FrameworkOpenAI↗Judge model in evaluation suites, and one voice in multi-model consensus used to synthesise test cases for other agents.1 projectLLM-as-a-Judge Framework
AnthropicJudge model and consensus member for eval-case generation.cross-cutting
ElevenLabs↗Generated voice for an in-app animated character driven by a per-user persona.1 projectPet Health Companion AppLLM-as-a-judge↗Behavioural testing with 0–100 scoring, tiered pass thresholds (60 / 80 / 100), judges equipped with tools so they verify a claim instead of opining on it, and goal-driven multi-turn conversations the judge itself steers to a stopping condition.1 projectLLM-as-a-Judge Framework
Prompt & persona layersBanned-phrase guards, persona generators, and output sanitisation that strips tool-call echoes and timing banners before anything reaches a user.cross-cutting

Retrieval, ML & vision

9
RAG pipeline↗Cache → vector retrieve → rerank, with O(1) partition invalidation so one source can be re-indexed without a full rebuild.2 projectsAgent Infrastructure Framework, Declarative Multi-Agent FrameworkQdrant↗Vector store for partitioned knowledge bases behind retrieval-augmented agents.2 projectsAgent Infrastructure Framework, Declarative Multi-Agent FrameworkCohere rerank↗Second-stage ranking after vector retrieval, ahead of context assembly.2 projectsAgent Infrastructure Framework, Declarative Multi-Agent FrameworkExa↗Live web research inside agent stages — with a stubbed provider so the service still boots and runs with no key present.2 projectsCampaign Strategy Agent, Declarative Multi-Agent FrameworkTensorFlow.js · @vladmandic/human↗BlazeFace and FaceRes running in a Web Worker inside a desktop app, code-split so the 1.6MB model chunk never blocks first paint. No cloud calls.1 projectKLDH262Hand-written ML↗A naive-Bayes-style classifier trained on the user's own labels that deliberately under-calls; TF-IDF centroid plus cosine similarity for "find more like this"; a 64-bit difference hash and an 8×8 RGB colour signature answering two different duplicate questions.1 projectKLDH262Entity resolution↗Mapping messy real-world tokens — INCI names, E-numbers, Colour Index codes, foreign-language aliases, undisclosed mixtures — to canonical substances, each with a resolution method and confidence; unresolvable tokens are marked, never guessed.1 projectIngredient Intelligence EngineOCR — Tesseract · ML Kit↗On-device text recognition for product labels, plus batch document tooling.2 projectsIngredient Intelligence Engine, Haircut VisualizationBinary format parsing↗PNG tEXt/iTXt/zTXt chunk walking and EXIF parsing to recover generation metadata, traversing a node graph backwards from sampler to checkpoint — ~96% recovery on a real mixed library.1 projectKLDH262

Web frontend

13
React 18 / 19↗Component architecture across consumer apps, admin consoles and desktop renderers — over a hundred components in the largest single client.5 projectsAthletIQ, KLDH262, AI Menu Ordering Platform +2Next.js 15 (App Router)↗Static export with generateStaticParams, the Metadata API, sitemap and robots routes, and server components holding all copy so it lands in the HTML rather than behind hydration.1 projectAthletIQVite 5 / 6↗Dev server and bundler for React applications and Electron renderers.2 projectsKLDH262, AI Menu Ordering PlatformTailwind CSS↗Utility styling layered over design tokens defined in oklch, with full light/dark parity.2 projectsAthletIQ, GymFlow
Three.js · react-three-fiberCustom GLSL shaders (point fields, Fresnel rims, animated great-circle arcs), instanced meshes and real topojson geometry — every scene gated behind IntersectionObserver, WebGL capability and reduced-motion checks, with server-rendered SVG twins as the fallback.cross-cutting
GSAP + ScrollTriggerScroll-driven scenes, pinning and scrubbed camera moves, scoped in gsap.context with matchMedia variants per breakpoint.cross-cutting
Framer Motion↗Micro-interactions, staggered reveals and layout animation for filterable grids.2 projectsAI Menu Ordering Platform, GymFlow
LenisSmooth scrolling wired into the GSAP ticker, disabled on touch devices and under reduced motion.cross-cutting
TanStack Query↗Server-state caching and invalidation in operations dashboards.1 projectAgent Operations Consolei18next · ARB localisation↗Full English/Arabic internationalisation with true RTL mirroring — layout, not just translated strings — shared in spirit between the web catalogue and Flutter's gen-l10n ARB pipeline.3 projectsAthletIQ, AI Menu Ordering Platform, Pet Health Companion Appwavesurfer.js · audio recorder↗Voice capture with a live waveform for spoken ordering flows.1 projectAI Menu Ordering PlatformRecharts · Nivo · fl_chart↗Cost, usage and revenue analytics in admin and mobile surfaces.2 projectsPet Health Companion App, Agent Operations Console
StreamlitFast internal UI for demoing and testing model pipelines before a real client exists.cross-cutting

Mobile & desktop

10
Flutter↗486 Dart files across 14 feature modules shipping to Android, iOS, web, Windows, macOS and Linux from one codebase.2 projectsAthletIQ, Pet Health Companion AppRiverpod↗Provider-scoped state with a repository layer that can be switched between mock and live.2 projectsAthletIQ, Pet Health Companion Appgo_router↗Declarative routing with role-based redirects and onboarding gates.2 projectsAthletIQ, Pet Health Companion AppFlame↗Game-engine rendering for an animated sprite-sheet character driven by generated expression sheets and a voice persona.1 projectPet Health Companion AppStripe↗Real subscription billing on native and web from one integration.1 projectPet Health Companion AppMedia capture↗camera, record, speech_to_text and video_compress for photo and clip submission with client-side compression.1 projectPet Health Companion AppElectron 33↗Desktop apps with a hardened main/renderer split: 51 named IPC channels, no filesystem or network access in the renderer, and media served by ID over a custom protocol so no path crosses the boundary.1 projectKLDH262electron-builder↗NSIS installers, portable executables, AppImage and dmg with blockmaps, produced from a three-OS CI matrix — zero native modules, so nothing compiles per platform.1 projectKLDH262Capacitor↗Android shell around a React console, with FCM push notifications on error events.1 projectAgent Operations ConsoleExpo · React Native↗Scanning client with on-device text recognition and local-first data.1 projectIngredient Intelligence Engine

Databases & storage

8
PostgreSQL↗19+ hand-written migrations, tenant provisioning and staff invites via RPCs, snapshot-sync triggers keeping derived views consistent, and generated types checked into the client.6 projectsAthletIQ, Veterinary Multi-Agent System, Agent Infrastructure Framework +3Supabase↗Postgres, Auth (email OTP and OAuth), Realtime, Storage and Edge Functions as one backend behind both web and mobile clients.6 projectsAthletIQ, Veterinary Multi-Agent System, Pet Health Companion App +3Row-Level Security↗Multi-tenancy enforced in the database on org_id — including a platform tier where suspending a tenant is an RLS outcome, not an application check.1 projectAthletIQMongoDB / Motor↗Async document storage in earlier generations of the agent platform.1 projectVeterinary Multi-Agent SystemSQLite↗Zero-dependency local persistence for an offline-capable, desktop-packaged product.1 projectGymFlow
PocketBaseSchema-as-versioned-JSON backend behind an Electron-packaged admin tool.cross-cutting
Redis · in-memory LRU+TTL↗Two-layer caching with stale-if-error fallback, so a configuration read never takes the product down.2 projectsAgent Infrastructure Framework, AI Menu Ordering PlatformJSON with atomic writes↗Deliberately chosen over SQLite in one desktop app to keep the native-dependency count at zero — a documented trade, not an accident.1 projectKLDH262

Infrastructure & delivery

7
Google Cloud Run↗Containerised agent services across two regions, built through cloudbuild.yaml with per-service Dockerfiles.1 projectVeterinary Multi-Agent SystemDocker↗Service images and reproducible local stacks brought up by a single command.3 projectsVeterinary Multi-Agent System, Ingredient Intelligence Engine, Haircut VisualizationGitHub Actions↗Lint, typecheck, test and build on every push; a three-OS matrix producing installers; tag-triggered releases that draft the GitHub release; static-site deploys to Pages.3 projectsAthletIQ, KLDH262, Agent Infrastructure FrameworkVercel · Render · Pages↗Static and service hosting with security headers and caching configured per deployment target.1 projectAI Menu Ordering Platformpnpm workspaces · uv↗Supabase CLI and Deno pinned as dev dependencies — no global installs; one script starts Docker, applies migrations, seeds data, regenerates types, and runs functions and app side by side.1 projectIngredient Intelligence EngineOpenTelemetry · Helicone↗Distributed tracing and LLM request observability across services.1 projectAgent Infrastructure FrameworkLocust · k6↗Load and smoke testing against explicit RPS and percentile targets.1 projectVeterinary Multi-Agent System

Reliability & security

7
Circuit breaker ∘ retry↗A breaker as the outer gate wrapping a retry loop as the inner one, safe across event loops and threads, so a failing provider degrades instead of cascading.1 projectAgent Infrastructure FrameworkFail-closed configuration↗A misconfigured auth setup raises at bootstrap rather than silently serving traffic wide open.1 projectAgent Infrastructure FrameworkAPI-key subsystem↗SHA-256 key storage, sliding-window rate limiting made atomic inside a Postgres RPC, a 30-second validation cache, and ASGI middleware returning 401/429 with correct rate-limit headers.2 projectsAgent Infrastructure Framework, Agent Operations ConsoleCost telemetry↗Buffered, batched metric export with a per-model price table, so every model call, tool call and HTTP request carries its own cost — surfaced as per-request itemised credit breakdowns.3 projectsVeterinary Multi-Agent System, Agent Infrastructure Framework, Agent Operations ConsoleGraceful degradation↗Services boot with zero API keys: in-memory sessions replace the database, stubbed providers replace research, and the product still runs.1 projectCampaign Strategy Agent
Secrets at restUser tokens encrypted through the OS keychain — DPAPI, Keychain and libsecret.cross-cutting
Web hardening↗Hand-written Content-Security-Policy plus X-Frame-Options, nosniff and Referrer-Policy; Electron context isolation with no node integration in the renderer.1 projectAI Menu Ordering Platform

Testing & quality

7
pytest↗879 test functions across 39 files in the infrastructure library alone — custom fixtures, CLI options, and a package designed to drop into any project by editing one import.4 projectsAgent Infrastructure Framework, AI Menu Ordering Platform, Campaign Strategy Agent +1Vitest↗Unit tests for pure reducers, windowing geometry and binary-format parsers.2 projectsKLDH262, Agent Operations ConsoleCoverage gates↗≥80% enforced in CI on the service that fronts customers; typecheck and lint block merges.1 projectAI Menu Ordering PlatformEval harnesses↗32 archived, timestamped evaluation runs; controlled A/B of raw model versus agent wrapper on identical queries to isolate framework overhead; time-to-first-token probes across query complexity.3 projectsVeterinary Multi-Agent System, AI Menu Ordering Platform, LLM-as-a-Judge FrameworkSafety regression suites↗A 14-question stress test assembled from confirmed prior failures, run against every generation — critical safety failures went 5 → 0, with remaining soft gaps flagged rather than hidden.1 projectVeterinary Multi-Agent Systemruff · mypy --strict · ESLint↗Static analysis in CI, including a grep gate proving a service-role key never enters the request path.1 projectAgent Infrastructure Framework
Postman · BrunoVersioned API collections for manual verification and billing-flow testing.cross-cutting

How I work

6
Measure, then optimiseBefore/after evaluation on every architectural rewrite — same inputs, 50 cases per specialist — with the regression reported alongside the win rather than buried.practice
Config-switched mock backendsWith no environment variables the entire product runs on typed fixtures; flip the vars and the same screens hit live, RLS-protected data. Demos need no setup and tests never touch production.practice
Frozen API contractsA contract agreed up front lets frontend, backend and AI workstreams build in parallel — backend against a stub exercising every event type, frontend against replayed fixture streams.practice
Pure state machinesA 1,000-line reducer handling 107 action types with no Date.now() or Math.random() inside, so double-invocation is a genuine no-op and the whole store is testable in isolation.practice
Documented trade-offsKnown limitations, deferred phases and accepted regressions written down in the repo — scope honesty as a deliverable, not an afterthought.practice
Productisation41 tools packaged to an identical structure with pinned dependencies, quickstarts and a build script that stamps and emits release archives.practice
03 — About

An engineer who likes the hard middle parts.

I work on the parts of software that most products try to abstract away — the orchestration, the state machines, the integration seams, the operational layer. The places where things either hold up under real load or quietly break in production.

I lead engineering at Nawaah, a studio focused on advanced systems engineering: scalable platforms, AI-powered workflows, and compliance-aware infrastructure. Outside of client work, I prototype, write, and occasionally build small things on GitHub.

Based
Tripoli, Lebanon · UTC+2
Role
Engineer at Nawaah
Focus
Platforms · AI infrastructure · Automation · Real-world systems
Status
Available for select engagements — Q3 2026 onward
04 — Contact

Working on something interesting?

I take on a small number of engagements each year, usually focused on platforms, AI infrastructure, or particularly gnarly systems work. Briefs and short notes both welcome.

Email me →