Maciej Grochowski
MACIEJ-GROCHOWSKI(1) User Commands MACIEJ-GROCHOWSKI(1)

NAME

maciej-grochowski – systems programmer

SYNOPSIS

maciej-grochowski [--kernel] [--uefi] [--reverse-engineering] [--compilers] [--security] [--hardware] [--pcie] [--gpu] [--filesystems] [--networking] [--ml]

DESCRIPTION

I work on the parts of software most people ignore until they break. I got here by way of medical devices, a CUDA research project, and a detour through application development.

This blog is a record of things I have figured out, things I keep forgetting, and problems worth taking apart.

HISTORY

I started in embedded development, building medical devices with microcontrollers, bare-metal firmware, and real-time operating systems. The work ranged from fixing broken board traces to adjusting interfaces on small LCDs. I preferred the soldering iron. Getting burned is less painful.

A research project on hydrodynamic modelling in CUDA followed. Working with 4D matrices does something permanent to how you think about memory layouts. The project died the slow death common to academic software. The spatial intuition stayed.

I also spent some time in application development. I learned a lot about design patterns and server-side architecture. Wanted to leave. Left.

I have worked in systems programming since, mostly on networking stacks, cryptography, performance, and filesystems. The rabbit holes are deep and mostly worth it.

TOPICS

Operating systems, kernel internals, firmware and binary reverse engineering, Unified Extensible Firmware Interface (UEFI), security, and cryptography. Compilers, linkers, executable formats, and the boundary between source code and machine instructions.

CPU microarchitectures: x86/ARM/MIPS. PCI Express (PCIe), device drivers, and interconnects. GPU architecture and programming, memory hierarchy, and the cost of moving data between processors and devices.

Parallel and concurrent computing, networking, filesystems, neural networks, and machine learning. Languages are a secondary concern — pick the right tool and move on.

PHILOSOPHY

The Wikipedia definition of engineer has always resonated more than most:

An engineer is a professional practitioner of engineering, concerned with applying scientific knowledge, mathematics, and ingenuity to develop solutions for technical, societal and commercial problems.

Operative phrase: applying knowledge to develop solutions. Not “implementing requirements.”

AUTHOR

Maciej Grochowski <maciej[dot]grochowski[at]pm[dot]me>

Maciej Grochowski October 2026 MACIEJ-GROCHOWSKI(1)