amerghazal.me REV 2026.11

SYSTEMS ARCHITECT · WEB · AIR · SEA · GROUND

Web, air, sea and ground, by the same hand.

Ten years of shipped systems: web products sold to strangers, a drone release pipeline, marine docking control designed in a simulated sea first, and autonomy software I co-lead for ground robots.

THE STACK, EXPLODED

Ten years, seven layers

Seven chapters, ten years, and machines that went from browsers to boats, drones and patrol robots. Every chapter ran on a different stack and lit different layers of it. Pick a chapter to read it.

01 / 072016–2019

A studio that sold to strangers

I was a computer science student in Damascus when I co-founded a small studio, TIEQODE, and put our premium themes on ThemeForest. The buyers were everywhere, and I would meet none of them.

A theme is not finished when it renders on my screen. It is finished when a stranger in another time zone installs it on a server I will never see, bends it to their brand and never needs to write to me. The design rarely broke. Installation did, and every support question was a sentence missing from the documentation.

Three themes earned about $10k between them, and Java and JavaFX freelance work filled the gaps. The habit outlasted the money: build for the person who is not in the room.

Shipped

  • 3 premium ThemeForest themes
  • roughly $10k in revenue
  • Java and JavaFX freelance builds

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L02 Cloud & Orchestration

    • process orchestration
    • service contracts
    • Docker
    • Google Cloud
    • Terraform
  • L07 DevOps & Release Engineering

    • CMake, Conan, vcpkg
    • .deb packaging
    • signed releases
    • GitHub Actions
    • golden-image CI

02 / 072020–2021

Compliance you can prove

In October 2020 I started working remotely from Damascus for L-One Systems, a software firm in Darmstadt. Germany takes data protection seriously, and so did the client: every sign-up had to pass a double opt-in before it reached their CRM, because DSGVO is law, not taste.

I built that pipeline, with a staging copy running beside the live one so every change was proven before it touched real people. I also held the quality bar for the firm’s web projects and ran the sessions where the team taught each other.

The turn came when I understood that compliance is not something you claim. It is something a reader who did not write the code can verify. That idea followed me into robotics almost unchanged, with safety standing where privacy had stood.

Shipped

  • consent-first pipeline into a client CRM
  • DSGVO double opt-in
  • staging beside live

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L02 Cloud & Orchestration

    • process orchestration
    • service contracts
    • Docker
    • Google Cloud
    • Terraform
  • L07 DevOps & Release Engineering

    • CMake, Conan, vcpkg
    • .deb packaging
    • signed releases
    • GitHub Actions
    • golden-image CI

03 / 072022–2023

My first robot was a file

My first robot never touched a floor. In March 2022 I joined Micropolis in Dubai, and my part of the team’s work lived inside Omniverse and NVIDIA Isaac Sim: worlds where a wheeled robot could learn where it was, find a route and keep clear of whatever stood in it, with a digital twin to check it against.

A simulator is persuasive whether it is right or wrong. A twin earns trust only when its sensors sit where the real ones sit and see what they see. I have been suspicious of beautiful simulations ever since.

I built the company’s website too, and the web tools wired into its machine-learning work on vision and motion. The University of Toronto’s self-driving cars course filled in the theory that year.

Shipped

  • wheeled-robot worlds and digital twins in Isaac Sim and Omniverse
  • company website
  • ML-backed web tools

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L03 Autonomy & AI

    • navigation
    • perception and ML integration
    • hierarchical state machines
    • ROS 2
  • L04 Simulation & Digital Twins

    • NVIDIA Isaac Sim
    • Omniverse
    • CARLA
    • Webots
    • USD, URDF
    • software-in-the-loop

04 / 072023

Three engineers and a hull

Water does not hold still for a demo. In June 2023 I moved to Marakeb Technologies in Sharjah, and onto marine craft. I led three engineers building a ground station in C# and WinForms that spoke MAVLink to the craft.

The harder problem was control. A boat that docks itself and holds its balance cannot be tuned by trial on the water without paying for every mistake. So I built the sea first: a Webots world for the craft, driven by a ROS controller I wrote for it, where docking and balancing could fail as often as they needed to.

The stint lasted three months. It taught me that a simulator built to judge control is a measuring instrument, and an instrument you cannot calibrate is decoration.

Shipped

  • MAVLink ground station in C#
  • Webots marine simulation
  • docking and balance control, simulated

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L03 Autonomy & AI

    • navigation
    • perception and ML integration
    • hierarchical state machines
    • ROS 2
  • L04 Simulation & Digital Twins

    • NVIDIA Isaac Sim
    • Omniverse
    • CARLA
    • Webots
    • USD, URDF
    • software-in-the-loop
  • L06 Edge & Hardware Integration

    • sensor rigs
    • PX4, MAVLink
    • robot, drone and marine platforms
    • embedded Linux

05 / 072023–now

Co-leading autonomy on the ground

A public venue, a patrol robot, a crowd that never read the test plan. In August 2023 I went back to Micropolis; by November I was co-leading its autonomy software. The question changed from “does it drive” to “who answers when it does not”.

We built for that question: eighteen orchestrated processes, stacks swapped by configuration rather than forked, one stack shared by two platforms, and a safety state machine above them that escalates in four levels. For eighteen months the team I led was eight strong.

Then our simulator bridge crawled at 5 FPS; the culprit was the transport, not a model. Shared memory took it to 20. As announced by Micropolis, the stack drives DPR-02, the Dubai Police patrol at Global Village, and ran a pilot the company completed with Saudi Arabia’s Ministry of Interior.

Shipped

  • 18-process stack on 2 platforms
  • 4-level safety escalation
  • operator dashboard, 7 camera streams, 30–100 ms

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L02 Cloud & Orchestration

    • process orchestration
    • service contracts
    • Docker
    • Google Cloud
    • Terraform
  • L03 Autonomy & AI

    • navigation
    • perception and ML integration
    • hierarchical state machines
    • ROS 2
  • L04 Simulation & Digital Twins

    • NVIDIA Isaac Sim
    • Omniverse
    • CARLA
    • Webots
    • USD, URDF
    • software-in-the-loop
  • L05 Real-Time & GPU Compute

    • C++17
    • CycloneDDS
    • Google Filament
    • CUDA
    • OpenGL
    • Cesium 3D Tiles
  • L06 Edge & Hardware Integration

    • sensor rigs
    • PX4, MAVLink
    • robot, drone and marine platforms
    • embedded Linux
  • L07 DevOps & Release Engineering

    • CMake, Conan, vcpkg
    • .deb packaging
    • signed releases
    • GitHub Actions
    • golden-image CI

06 / 072024–2025

Six months in the air

In October 2024, with Micropolis’s approval, I took a six-month contract with DroneLeaf in Abu Dhabi, alongside my work on the ground. The drone stack flew. It also dragged about 1.9 GB of binaries into every release, and the code that flew it, the code that planned its missions and the tools its developers lived in had to ship together.

I rewrote the build system and set up .deb packaging pipelines; what shipped came down to about 30 MB. I turned a QGroundControl fork into the operators’ mission control, reshaped its interface for them, and wrote the MAVLink bridge to the PX4 autopilot.

The turn: the heaviest part of that stack was its own build. Release engineering is architecture, done later in the day.

Shipped

  • build-system rewrite and .deb pipelines, ~1.9 GB to ~30 MB
  • QGroundControl fork
  • PX4 over MAVLink

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L05 Real-Time & GPU Compute

    • C++17
    • CycloneDDS
    • Google Filament
    • CUDA
    • OpenGL
    • Cesium 3D Tiles
  • L06 Edge & Hardware Integration

    • sensor rigs
    • PX4, MAVLink
    • robot, drone and marine platforms
    • embedded Linux
  • L07 DevOps & Release Engineering

    • CMake, Conan, vcpkg
    • .deb packaging
    • signed releases
    • GitHub Actions
    • golden-image CI

07 / 072025–now

Building in the open

Most of what came before sits behind someone else’s door. Open source lets me show the method without showing anyone’s secrets. So, on my own time, I built Overlume, a renderer that shows an operator the robot from behind, inside its surroundings, and released it with GPG-signed packages on eight channels. Micropolis now uses it on a deployed robot.

Then came AxonVex, an alpha C++ framework whose pipelines are typed and deterministic, and in 2026 Udacity’s Software Architect Nanodegree, whose capstone I wrote as a formal specification.

Building in public removes the excuse of context. Every decision needs a record, and every claim needs a number a stranger can check. It is the lesson the theme studio taught me in 2016, at a much higher frame rate.

Shipped

  • Overlume on 8 signed package channels
  • AxonVex in alpha
  • capstone with 8 SysML diagrams

Layers

  • L01 Human–Machine Interface

    • operator dashboards
    • teleoperation
    • mission control
    • React, Angular, Node
  • L02 Cloud & Orchestration

    • process orchestration
    • service contracts
    • Docker
    • Google Cloud
    • Terraform
  • L05 Real-Time & GPU Compute

    • C++17
    • CycloneDDS
    • Google Filament
    • CUDA
    • OpenGL
    • Cesium 3D Tiles
  • L07 DevOps & Release Engineering

    • CMake, Conan, vcpkg
    • .deb packaging
    • signed releases
    • GitHub Actions
    • golden-image CI

Talk to me about

  1. 01Architecture reviews.A target architecture your platforms can share: ports and adapters, ADRs, and configuration that swaps stacks instead of forking them, from the web tier to the ROS 2 graph.
  2. 02Simulation strategy and digital twins.A simulator-to-stack contract in Isaac Sim, Omniverse, CARLA or Webots: sensor rigs matched to the real machine, and software-in-the-loop runs your team can repeat.
  3. 03Operator tooling.What the person at the console sees, and how late it may arrive: web dashboards on a custom streaming server, camera streams held to a latency target, mission control on a QGroundControl fork speaking MAVLink to PX4.
  4. 04Safety and handover.An autonomy safety layer drawn into the architecture: mission management, a hierarchical state machine that escalates, a timed handover to a teleoperator, and requirements traced to ISO 26262, SOTIF and UL 4600.
  5. 05Release engineering.The build decides what the field runs: CMake and Conan builds lean enough to package, .deb packages cut in GitHub Actions, and Docker and Terraform for the cloud around the machines.
  6. 06Shipping with coding agents.Harnesses that check every change against decision records and golden tests, with the final review left to your engineers.

Bring the boundary your team trusts least; that is where a review starts. Start the conversation →