- July 18, 2025
What 5 Job Offers Taught Me About the Software Industry in 2025
- April 14, 2025
5 Common Rate Limiter Algorithms
- March 26, 2025
Resolving the Jenkins "wrapper script does not seem to be touching the log file" issue
- April 14, 2024
Add Mermaid Support to Mkdocs in Backstage
- March 20, 2024
Creating the Smallest Possible Docker Image for Go Applications
- January 17, 2024
Saga Pattern: Part 2 - Choreography
- January 16, 2024
Saga Pattern: Part 1 - Orchestrator
- October 11, 2023
Deploy a webapp to AWS Lambda with Serverless Framework
- April 13, 2023
Running Docker in Docker in Jenkins pipelines
- March 6, 2023
Regular expression Denial of Service (ReDoS) Attack
- February 1, 2023
Remove Create Privilege on Public Schema In Postgresql12
- October 27, 2022
Install Zsh and Oh-My-Zsh on WSL2
- September 20, 2022
Download Files in Jenkins with Groovy
- August 17, 2022
Building Custom AMIs with Packer and Ansible
- May 13, 2022
Jenkins shared library: Static YAML methods with NonCPS
- April 15, 2022
Build a Container from scratch with Go
- October 23, 2021
VPC Endpoints: A Cost-Effective Way to Access AWS Services
- September 9, 2021
Jenkins job configs as code with Jenkins Job Builder
- August 31, 2021
Deploy Localstack to Kubernetes for AWS integration tests
- June 7, 2021
Python Concurrency and Parallelism
- May 12, 2021
Terraforming Zabbix configs
- August 8, 2020
Freeze Python requirements with pip-compile
- March 20, 2020
RabbitMQ Basics: Simple Message Queue System
- January 13, 2020
Mutable vs. Immutable Infrastructure
- August 30, 2019
Use JSON schema to unit test YAML files
- January 15, 2018
CentOS joins Ubuntu AD DC with Samba Winbind
- October 27, 2017
SELinux 101