Developing software is like fighting fire

Senior Android Developer
& Software Architect

Kotlin, Jetpack Compose, streaming SDKs, and healthcare apps, backed by 20+ years of experience. Based in Hamburg, available remotely across Germany and Europe.

Markus Root in firefighter turnout gear with a fire hose over his shoulder
Markus Root - professional portrait

Hello, my name is Markus Alexander Root.

I have been developing software for more than 20 years, the last ten of them focused on mobile apps, most of the time for Android. Today I work through my own company, firecoder GmbH.

Since 2021 I have been working for RTL Deutschland, first on the RTL+ Android apps and today on the RTL Android Streaming SDK that powers video playback across the group’s apps, with more than 20 million installs on Google Play combined. Before that, I spent more than four years at IBM in the health sector, doing architectural design, development, and client integrations for Germany’s electronic health record (eGA & ePA).

Android

Kotlin Java Jetpack Compose Coroutines / Flow Android Architecture Components MVVM Clean Architecture Koin / Dagger Room Retrofit Gradle Multi-Module Android TV Rx Java / Kotlin / Dart Flutter / Dart iOS / Swift / Obj-C

Streaming & Media

Media 3 / ExoPlayer Widevine DRM PlayReady DASH / CMAF Low-Latency Live Offline Downloads SSAI / CSAI Non-Linear Ads Nielsen / AGF NPAW Google Analytics Accessibility

SDK & Architecture

SDK Development Public API Design SemVer Developer Docs Modularization White-Label UML TOGAF OpenID Connect / OAuth 2.0 Keycloak GDPR On-Device Encryption

Backend & Cloud

AWS Lambda API Gateway DynamoDB Cognito SQS EC2 Serverless AWS CDK Rust TypeScript React REST WebSockets PostgreSQL Java / Spring

DevOps & Infrastructure

Docker / Compose Kubernetes / Talos Proxmox Terraform Linux / Debian NGINX / Caddy CI/CD GitLab / Jenkins / TeamCity / Bitrise Marathon Device Farm Unit / Integration / UI Tests ktlint / detekt Self-Hosting

My Work

Founder & Software Engineer @ firecoder GmbH

Alongside client work, I run firecoder GmbH’s own self-hosted infrastructure: a Proxmox-virtualized environment with Kubernetes on Talos OS and Docker Compose workloads, provisioned with Terraform. It hosts PostgreSQL, NGINX and Caddy reverse proxies, a Matrix homeserver with LiveKit voice, workflow automation with n8n and Node-RED including LLM integration, Paperless-NGX, Home Assistant with MQTT, and UniFi and pfSense networking.

RTL Deutschland

RTL Android Streaming SDK

January 2025 – Present

Software Engineer at firecoder GmbH, engaged by RTL Deutschland. Architecture, development, and consulting for the RTL Android Streaming SDK.

I continue to evolve the RTL Android Streaming SDK that powers video playback across the corporation’s apps, including RTL+ (10M+ installs on Google Play), ntv (5M+), Super RTL Toggo (5M+), Stern (1M+), and Wetter. I drive its integration into these products and work closely with the product teams and stakeholders on new features and extensions.

The SDK covers DASH and CMAF adaptive streaming, live and on-demand playback with low latency, Widevine DRM (L1/L3) and PlayReady, offline downloads with persistent DRM licenses, server-side and client-side ad insertion including non-linear ads, subtitles, multiple audio tracks, accessibility, and Android TV support. Playback and audience measurement are integrated via Nielsen, AGF, Google Analytics, and NPAW.

As a library consumed by several app teams, the SDK is built as a Gradle multi-module project with a focus on public API design, semantic versioning, backward compatibility, and migration guides. I write the developer documentation and support the integrating app teams, and I established a multi-level test strategy, including setting up and running a Marathon device farm for automated on-device testing.

Kotlin Coroutines Media 3 / ExoPlayer Widevine DRM PlayReady DASH / CMAF Low-Latency Live Offline Downloads SSAI / CSAI Non-Linear Ads Android TV Accessibility Nielsen / AGF NPAW Google Analytics Gradle Multi-Module Public API Design SemVer Developer Docs Marathon Device Farm AWS Koin Android Architecture Components Flow Compose Gitlab Clean Architecture
Freelancer

RTL Deutschland

RTL+ Android

April 2023 – December 2024

RTL+ Android Mobile, Fire TV, and TV App. Architecture, development, and consulting.

Alongside the RTL+ apps, I evolved the RTL Android Streaming SDK that powers video playback across the corporation’s apps, including RTL+ (10M+ installs on Google Play), ntv (5M+), Super RTL Toggo (5M+), Stern (1M+), and Wetter. I drove its integration into these products and worked closely with the product teams and stakeholders on new features and extensions.

The SDK covers DASH and CMAF adaptive streaming, live and on-demand playback with low latency, Widevine DRM (L1/L3) and PlayReady, offline downloads with persistent DRM licenses, server-side and client-side ad insertion including non-linear ads, subtitles, multiple audio tracks, accessibility, and Android TV support. Playback and audience measurement are integrated via Nielsen, AGF, Google Analytics, and NPAW.

As a library consumed by several app teams, the SDK is built as a Gradle multi-module project with a focus on public API design, semantic versioning, backward compatibility, and migration guides. I wrote the developer documentation, supported the integrating app teams, and established a multi-level test strategy.

Kotlin Coroutines Media 3 / ExoPlayer Widevine DRM PlayReady DASH / CMAF Low-Latency Live Offline Downloads SSAI / CSAI Non-Linear Ads Android TV Accessibility Nielsen / AGF NPAW Google Analytics Gradle Multi-Module Public API Design SemVer Developer Docs AWS Koin Android Architecture Components Flow Compose MVVM Gitlab Clean Architecture

T-Systems / BARMER

BARMER Android

October 2022 – May 2023

Android app of BARMER, one of Germany’s largest statutory health insurers. Architecture, development, and consulting via T-Systems as general contractor.

As the sole Android developer, I designed and built the digital vaccination record (Digitaler Impfpass) from scratch as a new module of the BARMER app. I made all architecture decisions for the module, presented them to T-Systems for approval, and implemented the feature end to end against a REST backend while handling sensitive health data under GDPR requirements.

I set up the project foundation: a modular structure with Clean Architecture and MVVM, Jetpack Compose from day one, a test strategy covering unit and Android UI tests, and the TeamCity CI/CD pipeline with automated tests, Android Lint, ktlint, and detekt.

Kotlin Coroutines Android Architecture Components Flow Compose MVVM Clean Architecture Modularization REST Healthcare GDPR TeamCity CI/CD ktlint / detekt Android UI Tests

RTL Deutschland

RTL+ Android

March 2021 – October 2022

RTL+ Android Mobile, Fire TV, and TV App. Architecture, development, and consulting.

Alongside the RTL+ apps, I evolved the RTL Android Streaming SDK that powers video playback across the corporation’s apps, including RTL+ (10M+ installs on Google Play), ntv (5M+), Super RTL Toggo (5M+), Stern (1M+), and Wetter. I drove its integration into these products and worked closely with the product teams and stakeholders on new features and extensions.

The SDK covers DASH and CMAF adaptive streaming, live and on-demand playback with low latency, Widevine DRM (L1/L3) and PlayReady, offline downloads with persistent DRM licenses, server-side and client-side ad insertion including non-linear ads, subtitles, multiple audio tracks, accessibility, and Android TV support. Playback and audience measurement are integrated via Nielsen, AGF, Google Analytics, and NPAW.

As a library consumed by several app teams, the SDK is built as a Gradle multi-module project with a focus on public API design, semantic versioning, backward compatibility, and migration guides. I wrote the developer documentation, supported the integrating app teams, and established a multi-level test strategy.

Kotlin Coroutines Media 3 / ExoPlayer Widevine DRM PlayReady DASH / CMAF Low-Latency Live Offline Downloads SSAI / CSAI Non-Linear Ads Android TV Accessibility Nielsen / AGF NPAW Google Analytics Gradle Multi-Module Public API Design SemVer Developer Docs AWS Koin Android Architecture Components Flow Compose MVVM Gitlab Clean Architecture
CEO / Co-Founder @ Solance UG (haftungsbeschränkt)

Solance is a company that I co-founded with Erika Root, Helge Horoba, and Maik Buse to develop and distribute applications.

DeepWell

Web Application

July 2022 – December 2022

Conception, architecture, and development of a SaaS web application that lets 3D artists generate textures with generative AI.

As co-founder and managing director, I was technically responsible for the platform and led the team on the backend and app side, while a co-founder owned the AI model. I designed the architecture: a React frontend in TypeScript, a serverless AWS backend written in Rust on Lambda with DynamoDB and Cognito, and an event-driven generation pipeline where SQS decouples user requests from Docker-based workers on EC2.

The infrastructure is defined as code with AWS CDK and delivered through GitHub and Bitrise CI. We validated the concept with a working prototype and made the deliberate decision to discontinue the product after three months rather than scale it.

AWS Serverless Rust TypeScript React Lambda DynamoDB SQS Cognito EC2 Docker AWS CDK Bitrise CI GitHub Tech Lead

AlarmBoard

iOS & Android

January 2019 – July 2022

A mobile app for Android and iOS to track staff during emergency operations and manage fire brigade organizations, published on Google Play. My own fire brigade has been using AlarmBoard in active service since 2019.

I owned the full architecture for both the app and the serverless AWS backend, and guided my co-founders through the development process. The backend runs on API Gateway, Lambda, DynamoDB, and Cognito, with a REST API and WebSockets for live operation status. The app is fully offline-capable with background sync, and all personal data is encrypted on the device so that only the user can access it in their own app, in line with GDPR.

The app’s layered clean architecture allowed us to migrate from native Kotlin to 100% Dart/Flutter in mid-2020 by swapping individual layers, without a full rewrite, and brought iOS to the product in the process. Infrastructure is defined as code with AWS CDK and delivered through Bitrise CI.

Funded as an innovative startup by the Federal Ministry for Economic Affairs and Climate Action of Germany, which enabled us to exhibit at INTERSCHUTZ 2022, the world’s leading trade fair for fire prevention, rescue, and safety. Awarded the Startup Award 2022.

Senior Consultant @ IBM Deutschland

Started as a Consultant in 2017. Promoted to Senior Consultant in August 2019.

eGA / ePA Electronic Health Record

Android Subject Matter Expert

August 2017 – March 2021

Germany’s electronic health record (“elektronische Gesundheitsakte” / eGA) and electronic patient record (“elektronische Patientenakte” / ePA), delivered by IBM both as a white-label Android app and as an SDK that health insurers integrate into their own apps.

As Subject Matter Expert for Android, I designed and developed core components of the eGA and ePA Android apps within a multi-team context. My responsibilities included architectural design, native Android development, and conducting client-facing presentations and workshops. I facilitated the integrations for five health insurers (Techniker Krankenkasse, BARMER, HEK, VIACTIV, and Knappschaft-Bahn-See) and served as the primary contact for a major private health insurer.

Health data is encrypted on the device, and authentication runs via OpenID Connect with Keycloak. To let insurers embed the eGA into their existing apps, I built a Capacitor wrapper module around the native Android SDK. Quality was secured by unit, integration, and UI tests running in a Jenkins CI/CD pipeline.

Kotlin RxKotlin / RxJava Dagger2 Retrofit Koin Android Architecture Components Clean Architecture SDK Development White-Label OpenID Connect Keycloak On-Device Encryption Capacitor Jenkins CI/CD Healthcare

Medication Plan SDK

iOS

January 2017 – June 2017

iOS SDK for Germany’s standardized medication plan (“Bundeseinheitlicher Medikationsplan”), letting health insurers integrate medication plan management into their own apps.

I extended the SDK and the reference app built on it, which was integrated into several insurer apps.

Swift iOS SDK Development Healthcare
Junior Consultant @ Business Technology Consulting AG (BTC AG)

Grid operator management system

Enterprise Application Web

January 2016 – December 2016

I developed middleware, client application, and database components for a grid operator management system in the energy sector. In a Scrum team, I built both the Angular 2 frontend and the Java/Spring backend, backed by an Oracle SQL database.

Java J2EE Oracle SQL Angular 2 TypeScript CSS HTML Spring JPA, Hibernate

SAP UI5 Application

Web App

January 2016 – December 2016

In a small team, I developed an SAP UI5 application.

JavaScript SAP UI5

Energy Apps

iOS & Android

October 2015 – December 2016

Further development, maintenance, and support of existing Android and iOS apps. Development of app prototypes.

Objective C Java
M.Sc. Computer Science @ Carl von Ossietzky Universität Oldenburg

Master of Science in Computer Science

2015 · Grade: 1.26

Research Assistant @ Carl von Ossietzky Universität Oldenburg

Tutor

October 2014 – April 2015

I led several seminars on algorithms and programming.

Research Assistant @ OFFIS – Institut für Informatik

Physical package transportation system

August 2013 – August 2014

I designed and developed a physical package transportation system.

C Siemens SIMATIC S7
B.Sc. Computer Science @ Carl von Ossietzky Universität Oldenburg

Bachelor of Science in Computer Science

2013

Student Assistant @ Carl von Ossietzky Universität Oldenburg

Tutor

October 2010 – August 2013

I led several seminars on algorithms and programming.

Ready to start a project?

Available for contract work and consulting through firecoder GmbH, remote across Germany and Europe or on site in Hamburg. Let’s build something great together.

My Vision

Software must be reliable, maintainable, and open to further development. Quality starts with stepping back to look at the overall solution.

The right architecture, framework, or approach depends on the current state of the software, the expertise of the people involved, best practices, and the project’s circumstances. The goal is to avoid building a cutting-edge but unmaintainable “software island”.

As an architect, I am part of the team, not above it. I lead by example, with a thorough understanding of the technologies in use, their alternatives and trade-offs, the project requirements, and how the systems involved connect.

“I believe software development is a circle: I define, design, build, test, …”

Define

Before designing a solution, I step back to understand the overall context: the product, its requirements, dependencies, and constraints.

Design

Architecture is the foundation for maintainability, testability, and future development. Software development is more than writing code: key components and flows are designed and documented, for example in UML, before they are built.

Build

I build modern, high-quality software, which means continuously learning and exchanging ideas with other developers. My passion for building software started with 2D games in C++ at the age of 14, and the learning has never stopped.

Test

Tests are what make stability and reliability possible. When I join a project without tests, I start with UI tests to establish a baseline, then expand coverage with unit and integration tests so that every change is validated and regressions are caught early.

Developing software is like fighting fire

In my spare time, I am a volunteer firefighter.

I’ve learned that both firefighting and software development demand the same core skills: rapid problem assessment, structured approaches under pressure, reliable teamwork, and the discipline to train continuously.

In emergencies, I draw on my experience and training in the command cycle: reconnaissance, assessment, planning, command, and control.

The firecoder brand embodies this philosophy, bringing the resilience and precision of emergency response to the world of software engineering.

Volunteer firefighter since the age of 18, with over 18 years of active service. Certified task force leader (Verbandsführer), a command-level qualification for leading multi-unit formations, comparable to a Branch Director in the Incident Command System (ICS). Training instructor and CBRN specialist.

Awards

  • 2025 – Hochwasser-Ehrennadel 2023, Land Niedersachsen
  • 2022 – Ehrennadel in Bronze, Landesfeuerwehrverband Niedersachsen
    For special merits in the fire service. Only one bronze badge per 250 members may be awarded per year.
  • 2018 – Einsatzmedaille „Moorbrand Meppen“, Bundesministerium der Verteidigung
  • 2018 – Brandmeister, Stadt Oldenburg
  • 2017 – Ehrenzeichen der Niedersächsischen Jugendfeuerwehr
  • 2004 – Leistungsspange der Deutschen Jugendfeuerwehr
  • 2004 – Jugendflamme 2
  • 2003 – Jugendflamme 1
Markus Root in firefighter gear at Feuerwehr Oldenburg
Firefighter

Feuerwehr Büchen

Firefighter

May 2024 – Present

I am a volunteer firefighter at the fire brigade in Büchen.

Feuerwehr Stadt Oldenburg

Firefighter

January 2012 – May 2024

I served as a volunteer firefighter at the Haarentor fire station. Beyond standard firefighting training, I am qualified in CBRN defense and in leading firefighter platoons.

Feuerwehr Stadt Leer

Firefighter

January 2008 – January 2012

I was a volunteer firefighter in the city of Leer.

Jugendfeuerwehr Stadt Leer

Youth Firefighter

January 2001 – December 2007

Youth fire brigade of the city of Leer.

CBRN Defense

Löschzug Gefahrgut Herzogtum Lauenburg

Squad Member

May 2024 – Present

Hazardous materials unit of the district of Herzogtum Lauenburg, part of the district’s civil protection. Qualified in CBRN defense.

ABC-Zug Stadt Oldenburg

Commanding Officer

September 2016 – May 2024

As commanding officer in Chemical, Biological, Radiological, and Nuclear (CBRN) operations, I was responsible for 32 firefighters across seven vehicles.

ABC-Zug Stadt Oldenburg

Squad Leader

January 2014 – August 2016

During emergency operations, I was responsible for 18 firefighters in four vehicles.

ABC-Zug Stadt Oldenburg

Squad Member

2012 – December 2013

ABC-Zug Landkreis Leer

Squad Member

2009 – 2012

CBRN defense unit of the district of Leer.

Voluntary Service Youth Firefighter

Bezirks- Jugendfeuerwehr Weser-Ems

Public Relations Manager

April 2011 – April 2022

I was responsible for public relations of the Weser-Ems region within the Lower Saxony Youth Fire Brigade (Niedersächsische Jugendfeuerwehr e.V.).

Kreis- Jugendfeuerwehr Landkreis Leer

Secretary

April 2009 – February 2013

Stadt- Jugendfeuerwehr Leer

Secretary

January 2009 – September 2011