~/blog
Blog
Notes on backend engineering, distributed systems, databases, and running software in production.
9 posts · rss
- php
- software-architecture
- symfony
- doctrine
- backend-development
- performance
- refactoring
- authorization
- best-practices
- caching
- clean-code
- containers
- database
- devops
- devsecops
- distributed-systems
- docker
- idempotency
- legacy
- maintainability
- production
- redis
- reliability
- scalability
- secure-design
- security
- shift-left
- testing
- threat-modeling
Pinned
Welcome
A personal space where I share my work and write about PHP, Symfony, backend architecture, reliability, security, and practical software engineering.
1 min
2026
Before Adding PHP-FPM Workers, Find Out What’s Actually Slow
Learn how to diagnose and fix PHP-FPM performance bottlenecks under real production traffic instead of blindly scaling replicas. This guide covers checking FPM status, enabling slow logs, inspecting container resources, and sizing workers based on evidence.
#php #docker #containers #performance #production #devops
9 min
When Symfony Messenger Is the Wrong Tool
Symfony Messenger is powerful, but not every slow operation needs a queue. I explore six situations where asynchronous processing creates more problems than it solves, covering transactions, retries, idempotency, and simpler alternatives with practical PHP examples.
#php #symfony #software-architecture #best-practices #backend-development
15 min
Why Moving Code into a Service Doesn’t Improve the Design by Itself
Moving code into a service can shrink a controller without fixing the design. This article looks at responsibilities, dependencies, transaction boundaries, side effects, and tests that show whether a refactor created a meaningful boundary.
#php #symfony #software-architecture #refactoring #doctrine #clean-code
6 min
Why I Shift Security Decisions Left, Not Just Security Checks
Shifting security left means more than running scanners earlier. It means making authorization, data-flow, and execution decisions early enough to shape the design before they become expensive to change.
#security #shift-left #secure-design #threat-modeling #authorization #software-architecture #backend-development #devsecops
6 min
Why Adding Redis Doesn’t Automatically Fix Performance
Redis can improve PHP application performance, but only when it addresses a measured bottleneck. This article looks at inefficient read paths, cache hit costs, stampedes, fallback behavior, and how to decide whether caching will actually improve the system.
#php #redis #caching #performance #symfony #doctrine #scalability
7 min