Markus Brigl · Model-driven and spec-driven development

SoftwareArchitect

I'm a software architect and fullstack developer in the field of model-driven and spec-driven development.

My vision See the projects

Currently Product Owner at Würth IT Italy, Bolzano

23 yrs

building software, since 2003

11 yrs

as CTO, 2013 to 2024

CAFM · GIS

enterprise domains

01 / Vision

Models and specs outlive the stack

Software should be described by what it means, not by the technology it happens to run on.

Since 2003 I have worked on one idea: describe the system first, then let tools produce the technology. From UML-based ERP frameworks and an Eclipse code generator to a low-code platform on hexagonal architecture, the stack changed many times. Today, with AI in the loop, the written specification takes the same role: specs and architecture decisions define the intent, and coding agents build against them. What stays is the description of intent.

01

Start from the model

Describe what a system means, independent of any platform. Technologies change, the model stays.

02

Write the spec first

Specifications and architecture decision records define intent before code. People decide, agents implement, and the spec is the contract between them.

03

Keep the core independent

Hexagonal architecture keeps business logic free of frameworks, so the stack can evolve without disrupting it.

04

Generate, don't repeat

Generators, templates and coding agents turn models and specs into running code, so effort goes into decisions instead of boilerplate.

02 / Projects

Selected repositories from my account and from the HiveVM organization.

Fleet management based on OpAMP. A Rust implementation of OpenTelemetry's OpAMP protocol with an API-first server and a native client that supervises many agents.

  • Rust
  • OpAMP
  • Hexagonal
  • Specs + ADRs
Rust Apache-2.0 144 commits Updated Oct 2026

HiveVM CC, a parser generator forked from JavaCC. Tree building is defined inside the grammar; a Gradle plugin generates parsers in Java, C++ or Rust.

  • Parser generator
  • Gradle plugin
  • Java · C++ · Rust
Java BSD-3-Clause 1,327 commits Updated Oct 2026

Node-based visual workflow engine and UI coordinator. A browser node editor on WebGL2 with a Rust engine compiled to WebAssembly, built for tens of thousands of nodes.

  • Rust
  • WebAssembly
  • WebGL2
  • Specs + ADRs
Rust · TypeScript MIT 22 commits Updated Oct 2026

View and edit Git repositories. A Git client that draws history as a lane graph, as desktop app (Tauri), terminal app or read-only remote server.

  • Rust
  • Tauri
  • Git
  • Web UI
Rust · TypeScript MIT 52 commits Updated Oct 2026

SQLite loadable extension for GeoPackage file access. A fork of luciad/libgpkg, revived with a specification, conformance notes and ADRs.

  • C++
  • GeoPackage
  • SQLite
  • Specs + ADRs
C++ Apache-2.0 367 commits Updated Aug 2026
hivevm/nuc Public

Template for agentic development in a Dev Container. A written specification and architecture decision records guide the work, and one AGENTS.md rules file is read by all coding agents.

  • Spec-driven
  • Dev Container
  • AGENTS.md
Shell MIT 16 commits Updated Oct 2026

03 / Career

Platforms built from models

Five case studies from twenty years of architecting enterprise systems.

  1. 2013 – 2016

    Mobile GIS, native on iOS and Android

    CTO · Territorium Online

    High-performance native apps with robust offline capabilities for field operations in places with poor connectivity.

    • iOS
    • Android
    • C++
    • REST
  2. 2008 – 2013

    WebGIS 3.0 platform

    Software Architect · Territorium Online

    A next-generation platform on service-oriented architecture, delivering scalable, interoperable geospatial solutions for enterprise environments.

    • SOA
    • UMN MapServer
    • pgRouting
  3. 2005 – 2006

    UML2 designer and code generator for Eclipse

    Software Engineer · Alpisco

    A graphical UML2 designer plugin for the Eclipse IDE with automated code generation for enterprise Java applications and business process automation.

    • Eclipse
    • UML2
    • EJB
    • Linux
  4. 2003 – 2004

    ERP/CRM application framework on UML

    Requirements Engineer · Würth Phoenix

    A framework for enterprise ERP/CRM applications, modelled with UML 1.4, built while covering several leadership roles across the project lifecycle.

    • UML 1.4
    • Linux

Let's talk architecture

Model-driven and spec-driven development, platform architecture or a collaboration.

LinkedIn GitHub