Jacek's Blog

Software Engineering Consultant

Jacek Galowicz

Portrait photo of Jacek Galowicz

Effective Software Engineering

I am a freelancer with professional interests in software development, software architecture, interface design, and continuous integration & deployment (CI/CD, DevOps). Over the years I got into bigger and bigger production projects and developed a lot of competence in how projects should be structurally built, integrated, and tested to enable and maximize the developer's ownership of the overall quality of the resulting product.

I communicate fluently in English and German.



With my many years of experience and my expert knowledge, we analyze your problem together and then find the optimal solution.


If you need a proof-of-concept or some specified module, I will build it for you. During peak pressure times, I can integrate into your processes for some time.


I accompany and coach key people or entire teams and thus support your projects in the long term. After signing your NDA, your employees can ask me anything and I help them avoid pitfalls and frustration.


To ensure that your software development is done properly and of high quality, I regularly examine and help fix processes, architectures, source code, and more.


I train you and your colleagues individually tailored to your problem according to the latest standards, both in open training courses and on-site at your company.

CI/CD Automation

I help improve your development and delivery pace by suggesting and implementing big process improvements in the areas of build speed, regression testing automation, and automatic deployment.

Nix & NixOS Training

I give on-site corporate Nix & NixOS Training under the Nixcademy label.

Individuals can book the same training via the Linuxhotel in Essen, Germany. (Nix Training, NixOS Training)

This training class saves teams of developers & DevOps professionals months of ramp-up by teaching the most important and difficult parts of Nix & NixOS. It also saves a lot of money because I am the one who travels to your company site, and I offer to stay available as a technical mentor for your staff until they feel confident enough.

Teaching Publications

I give talks and training on the topics of C++, Nix & NixOS, Software Architecture, Build Systems, Automation of Builds, Integration, Tests, and Deployment of Software.

Every winter semester, I hold the university lecture on software quality for Master's students in Computer Science and Electrical Engineering at the FH Münster.

Author of the Book C++17 STL Cookbook and the editor of the Book C++17 in Detail.

Co-Author of the scientific paper Combining Mechanized Proofs and Model-Based Testing in the Formal Analysis of a Hypervisor, FM 2016: Formal Methods and Efficient Implementation of the bare-metal Hypervisor MetalSVM for the SCC), 6th Many-core Applications Research Community (MARC) Symposium.

Author/Co-Author of Cyberus Technology Blog posts about Intel CPU vulnerabilities: Meltdown, Spectre V4, Intel LazyFP Vulnerability, L1 Terminal Fault Vulnerability, Zombieload, TSX Asynchronous Abort.

Software Architecture Development

Nix(OS) Logo C++ Logo Haskell Logo postgreSQL Logo Qt Framework Logo Purescript Logo Python Logo React.js Logo

Most of my experience concentrates on embedded (x86-64 and ARM) and backend development on Linux operating systems with C++ and Haskell. I use the strong type systems of languages to define error states out of existence as much as possible.

In frontend development, I have the most experience with the Qt Framework on Linux and Windows, embedded and non-embedded systems. I have also built rich, complex web- and desktop applications against REST APIs with Electron.js and React, typically implemented with the type safety of Purescript.

I am the maintainer of the Python NixOS Integration Test Driver portion of the nixos/nixpkgs Project on GitHub.

Work Background

Since 2018: Visiting Lecturer, FH Münster

I hold the lecture “Quality-Assuring Software Engineering Methods“ for master students every winter semester, which is about unit & integration testing, spec-driven testing, fuzzing, reproducibility, development processes in teams, bad established practices in the industry, etc.

Since 2017: Co-Founder, Cyberus Technology GmbH

  • Automation/Integration of software modules into system images (C++, CMake, Meson, Gitlab, Docker, Nix)
  • Design of Hardware-In-the-Loop (HIL) test infrastructure that enabled high-throughput and regression-free SW development processes of our hypervisor team (Haskell, Python, REST Interfaces, NixOS, Raspberry Pi, USB OTG)
  • Implementation of low-level libraries for embedded systems (C++, Template Metaprogramming)

2014 - 2016: Sr. Software Engineer, FireEye, Inc.

  • Design, implementation, and test of components of a secure, microkernel-based virtualization platform. (C++14, C, Assembler, ACPI, Microkernel OSes, Intel VT, PCI, Interrupt Routing, Suspend & Resume, C++ Template Metaprogramming, STL, Qt)
  • Design and implementation of automated hardware test infrastructure.

2012 - 2013: Student Intern/Master Thesis Worker, Intel Corporation

  • Implementing a live migration feature for a virtual machine monitor based on an innovative microkernel operating system. (NOVA Microhypervisor, Microkernel Operating Systems, lwIP TCP/IP Stack, Intel VT-Extensions, Live Migration)
  • Extension of the live migration feature for the master thesis (ACPI, PCI hot plugging, preserving TCP connections over migrations, Network trunking)

2009 - 2012: Student Assistant, RWTH Aachen University

  • Low-Level Kernel programming (Kernel Functionality, Hypervisor, Documentation)
  • Development of Benchmarks and GUI frontends (C/C++, OpenMP, MPI, Qt)
  • Giving tutorials in Basics of Computer Science 1 and 4 (C, General Algorithms and Data Structures, x86 Assembly, Virtual Memory, Processes/Threads, Shared Memory, Synchronization, etc.)
  • Supervising lab courses (C++, Object Oriented Programming)

2004 - 2009: Freelancer at Academy GmbH & Co. KG

Framework design for web-based medical decision support systems, GUI frontends (Qt, JavaScript), Applications for handhelds (Visual Basic)


2008 - 2013: B.Sc. & M.Sc. Electrical Engineering, RWTH Aachen University

  • Master thesis: Live Migration of Virtual Machines between Heterogeneous Host Systems (PDF)
  • Bachelor thesis: Design and Implementation of a Virtualization Layer for the Operating System Kernel "MetalSVM" (PDF)