Skip to content

Docker

Payment Events at Scale: Building a Robust Kafka Event Bus 🚌

When I joined the company, I was tasked with building a payment system from the ground up πŸ’³ β€” and from day one, the specs were clear: we were selling B2B plans, meaning real money from real businesses was on the line. We're talking plans that can go well over €10,000 for a single monthly payment β€” not the kind of transaction you want quietly dropping into the void. Every time a card payment was validated, an event needed to reach its destination β€” no exceptions. A single missed event could mean a lost invoice, an unpaid subscription, or a client questioning where their money went. And as you can imagine, when there's money flowing, events tend to pile up fast. Delivering these events couldn't just work most of the time β€” it had to work every single time, with robust retry mechanisms that never let a failure go unhandled. So we introduced an event bus 🚌, ensuring every event was durably stored, reliably delivered, and resiliently retried on failure ⚑. This post is about that journey: how to build a scalable and robust architecture to guarantee every payment event reaches its destination, no matter what πŸš€.

From AWS to DIY: Building a Cost-Effective πŸ’Έ Home Server with Ubuntu Server, Docker, Portainer, Traefik & CrowdSec on a High-Performance Mini PC! πŸš€

As a software engineer, I’ve relied on AWS for cloud computing for some time, but the rising costs finally pushed me to rethink things πŸ’Έ. During Black Friday, I jumped on a deal I couldn’t resist πŸŽ‰ and built a home setup around a GMKtec mini PC with an AMD Ryzen 7 8845HS, paired with 2 x 48GB of DDR5 5600MHz Crucial RAM and two 4TB Samsung 990 PRO PCIe 4.0 NVMe M.2 SSDs. The whole setup cost me €1,100 (about $1,200 USD) and runs at only 35W βš‘β€”that’s roughly €4.30 ($4.60 USD) a month in electricity here in France πŸ‡«πŸ‡·. Compare that to the $517 per month I’d pay to run an AWS EC2 m8g.4xlarge instance. Now, I’ve got 16 CPUs (8 cores, 16 threads) πŸ’», 96GB of speedy RAM βš™οΈ, and 8TB of PCIe 4.0 NVMe storage πŸ’Ύ for demanding workloads. It’s a massive money-saver πŸ’° and the perfect base for a home lab running Ubuntu Server 🐧. Tools like Portainer make container management easy πŸ› οΈ, and Traefik with CrowdSec enhances reverse proxying & security πŸ”’. If cloud costs are draining your budget, making the switch is well worth it πŸš€!

From AWS to DIY: Building a Cost-Effective πŸ’Έ Home Server with Ubuntu Server, Docker, Portainer & Nginx on a High-Performance Mini PC! πŸš€

As a software engineer, I’ve relied on AWS for cloud computing for some time, but the rising costs finally pushed me to rethink things πŸ’Έ. During Black Friday, I jumped on a deal I couldn’t resist πŸŽ‰ and built a home setup around a GMKtec mini PC with an AMD Ryzen 7 8845HS, paired with 2 x 48GB of DDR5 5600MHz Crucial RAM and two 4TB Samsung 990 PRO PCIe 4.0 NVMe M.2 SSDs. The whole setup cost me €1,100 (about $1,200 USD) and runs at only 35W βš‘β€”that’s roughly €4.30 ($4.60 USD) a month in electricity here in France πŸ‡«πŸ‡·. Compare that to the $517 per month I’d pay to run an AWS EC2 m8g.4xlarge instance. Now, I’ve got 16 CPUs (8 cores, 16 threads) πŸ’», 96GB of speedy RAM βš™οΈ, and 8TB of PCIe 4.0 NVMe storage πŸ’Ύ for demanding workloads. It’s a massive money-saver πŸ’° and the perfect base for a home lab running Ubuntu Server 🐧. Tools like Portainer make container management easy πŸ› οΈ, and Nginx Proxy Manager simplifies reverse proxy configurations πŸ”„. If cloud costs are draining your budget, making the switch is well worth it πŸš€!

Introducing TARP Stack β›Ί – Tapir, React and PostgreSQL

I landed my first job as a Data Engineer using Scala. It's been over 3 years now, approaching 4 years. The more experience you gain, the more you want to spread your wings πŸͺ½ to tackle even bigger and more complex projects than just data pipelines, like developing full-stack web data applications. But, I really do not want to dissipate myself too much on all the programming languages, libraries, or frameworks out there 😣. These are just tools. What's important is how efficiently you can use them for the product or feature you envisioned πŸ¦„πŸŒˆ. Sooo! For me, it's currently the TARP tech stack!