About me

More detail on what I have worked on and how I work.

Where I started

I've been programming since 2004, from the start on systems that companies use day to day. So alongside development I deal with what a change does to the data and to the people working in the system.

Over time I moved from isolated tasks to work that starts with examining the problem, not with a finished brief. What I have worked on:

  • Enterprise systems and ERP – operations, processes and data.
  • Global platforms – core business logic, consistency across releases.
  • Banking and energy – portals and mobile apps, security policy, auditability.
  • Healthcare – telemedicine, handling sensitive data.
  • Independent practice – full time since 2021, trade licence since 2006.

Enterprise systems and operations

The first part of my career was spent on systems used daily by people from all over the company – from the warehouse floor to management. I dealt with blocked invoicing, bad data in accounting, and outages that stopped sales or production.

The cause was usually not in one place. It was a combination of system complexity, dependencies between modules, and decisions taken outside the development team. I had to trace the whole chain and get the system back into working order.

On a global ERP platform I then developed the tax engine – a central part used by the whole platform across document types. Part of every change was verifying what it would do to existing data and rules. Banking added extensive architecture and a strict security policy, so riskier changes were discussed before they went ahead.

Current projects

I have worked for myself full time since 2021. Five things I am working on now or have worked on in recent months:

  • Mortgage and loan processes at a bank – process automation in Camunda BPM. Around twenty-five processes, from application through income verification, property appraisal and approval to drawdown and subsequent changes. Java and Spring Boot, Kafka, integrations with surrounding systems, a custom extension of the Camunda admin tooling. Ongoing since September 2023, over 1,400 commits so far.
  • From a bespoke till system to one of my own – it started in 2017 with a PHP till system driven by the Czech EET rules, then came the integration that connects a booking system to it, and nine years of running it for one customer. Since February 2026 I have been building my own system and moving all of it across as a module: NestJS and Fastify, PostgreSQL with Drizzle, RabbitMQ for async work, React 19 with a custom-built design system. Customer isolation by schema per tenant, roles and permissions, OAuth and 2FA, audit log, four languages. Four production Docker images, GitHub Actions, Playwright E2E tests and load tests in k6. Over 570 commits so far.
  • Process automation at a leasing company – Camunda engine and external task workers, OAuth and LDAP integration, metrics into Prometheus and a Grafana dashboard. 2025–2026.
  • Clinic reception system – bookings, calendar, patient records and billing. Go, Gin and PostgreSQL on the backend, React with TypeScript on the frontend, a separate worker for emails and backups. Three language versions, E2E tests, audit log and a stricter regime for sensitive health data.
  • Delivery route optimisation – assigning orders to vehicles and computing routes under capacity, time-window and driver-hour constraints. Go API, a Python solver on top of OR-Tools, a self-hosted instance of an open-source routing engine, and geocoding. Results validated by backtesting against journeys actually driven.

Working in teams

I've worked in teams for most of my career, rarely alone.

I spent four years on the NetSuite project. Alongside my own development work I did code review, onboarded new joiners and discussed proposed solutions with QA and with people on the business side.

How I work today

Clients most often reach out when a system needs stabilising, when the cause of a problem needs finding, or when a project needs to be taken over from another supplier.

I take on responsibility once I understand the problem and can see a path to a solution. If I can't, I say so and suggest who or what would help more.

I use modern tooling including AI assistance – for analysis and routine work. I always review its output, though, and I have to be able to explain every technical decision.

Technologies

Frontend

React, TypeScript, Next.js

Mobile

React Native

Backend

Go, Node.js, Java, Python

Databases

PostgreSQL, MySQL, MSSQL, Redis

Processes & messaging

Camunda BPM, Kafka, RabbitMQ

DevOps

DigitalOcean, Docker, CI/CD, Linux

Domains

Enterprise & ERP systems

Extending ERP platforms, process layers and integrations.

Banking, leasing & finance

Automation of loan and mortgage processes, web and mobile applications, auditability.

Energy

Data processing, process automation and integration scenarios.

Healthcare

Telemedicine, clinic operations and applications handling sensitive data.

Logistics

Delivery planning, route optimisation and working with geodata.

Contact

If that fits what you are dealing with, get in touch.

petr@petrzatloukal.cz