Core Offering

Lean Software Delivery Consulting

Agile coaching and quality-focused delivery methods for complex software projects in industries like MedTech and Pharma, where compliance is critical.

Learn more

Project Work

From small, high-performance libraries over embedded Linux solutions to build system cleanups and streamlined CI/CD pipelines, we take on practical challenges that make your development smoother.

Learn more

Training & Workshops

Trainings in Lean Software Development Methods and hands-on sessions in C++, CMake, and CI/CD management tailored to your team's needs.

Learn more

Hands-on Coaching

Personalized guidance in modern C++ and CMake to accelerate your team's skills and productivity.

Learn more

Why Choose SoftwareCraft?

Recognized Expertise

Acknowledged authority in C++ and CMake.

Real-World Experience

Proven track record in industries with stringent regulatory requirements.

Practical Solutions

We focus on tools and processes that deliver immediate, tangible improvements.

About

Meet Dominik – Your SoftwareCraft Guide

I am Dominik, a professional software engineer, blogger, and conference speaker with 20 years of experience in software development. I code mainly in C++ and have worked on projects ranging from bleeding-edge software for surgical simulators in startups, to maintaining large legacy platforms for MedTech corporations, to creating IoT solutions and pilot software for drones.

I believe that well-designed build environments are key to enabling teams to write software efficiently and excel at creating quality solutions. When I'm not coding, I occasionally write for my blog or speak at conferences about software development.

Dominik

Expertise

C++CMakeCI/CDMedTechPharmaIoTDronesEmbedded LinuxBuild Systems

Mission

SoftwareCraft is more than writing code. It's the combination of multiple skills aimed at delivering high-quality software efficiently. At softwarecraft.ch, we boost team performance through hands-on projects, coaching, and workshops that drive measurable improvement.

Blog

Latest articles on C++, CMake, Agile, and software quality.

Making Releases a Non-Issue: Speeding Up Delivery for Embedded Devices

Making Releases a Non-Issue: Speeding Up Delivery for Embedded Devices

Encryption at Rest for a Raspberry Pi using Yocto

Encryption at Rest for a Raspberry Pi using Yocto

Implement LUKS encryption at rest on Raspberry Pi CM4 with yocto. Complete guide covering initramfs, cryptsetup, OTP keys, and self-provisioning setup.

Bringing Secure Boot to Embedded Linux with Yocto

Bringing Secure Boot to Embedded Linux with Yocto

Secure boot for an embedded Linux devices based on raspberry pi CM4 using the yocto project

Demystifying the Cyber Resilience Act: A pragmatic starting point

Demystifying the Cyber Resilience Act: A pragmatic starting point

A practical guide to the EU Cyber Resilience Act: key requirements, security-by-design, vulnerability management, incident response, SBOM & incremental compliance.

Cyber Resilience Act verstehen: Praktische Umsetzung statt Mythos

Cyber Resilience Act verstehen: Praktische Umsetzung statt Mythos

Praktischer Leitfaden zum EU Cyber Resilience Act: zentrale Anforderungen, Security-by-Design, Vulnerability Management, Incident Response, SBOM & inkrementelle Compliance.

std::expected in C++23: A Better Way to Handle Errors

std::expected in C++23: A Better Way to Handle Errors

Practical introduction to std::expected: intent-revealing, structured error handling for recoverable failure paths in modern C++.

Building a local AI agent with Llama.cpp and C++

Building a local AI agent with Llama.cpp and C++

Learn how to build a local AI agent using llama.cpp and C++. This article covers setting up your project with CMake, obtaining a suitable LLM model, and implementing basic model loading, prompt tokenization, and text generation. Ideal for those interested in running AI models on their own hardware without relying on cloud services.

Faster build times with artifact based CI

Faster build times with artifact based CI

Artifact-based CI can optimize your CI/CD pipelines by reducing build times, improving reliability, and streamlining workflows. Discover strategies for efficient artifact storage, versioning, and retrieval, and explore best practices for implementing artifact-based continuous integration in modern software development.

The 7 CMake anti-patterns that eat your time and energy

The 7 CMake anti-patterns that eat your time and energy

CMake is powerful, but often blamed for bad build experiences. Most of the frustration, though, comes from avoidable mistakes. Here are 7 common CMake anti-patterns that waste your time - and how to fix them.

Optimize your code for reduced cost of change

Optimize your code for reduced cost of change

Software products might live for a long time. After the initial cost, the cost of change is the major cost driver. Optimizing your code for reduced cost of change is paramount.