<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Blog — Toni Kusnandar</title><description>Blog teknis, opini, dan case study oleh Toni Kusnandar — backend, cloud, DevOps, dan AI.</description><link>https://toni.kusnandar.dev/</link><language>id</language><item><title>AWS Secrets Management: Secrets Manager vs Parameter Store</title><link>https://toni.kusnandar.dev/blog/aws-secrets-management-secrets-manager-vs-parameter-store/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/aws-secrets-management-secrets-manager-vs-parameter-store/</guid><description>A practical guide to choosing between AWS Secrets Manager and SSM Parameter Store for storing credentials, API keys, and config values in production systems.</description><pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>5 Security Holes in CI/CD Pipelines I Keep Finding</title><link>https://toni.kusnandar.dev/blog/cicd-pipeline-security-holes/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/cicd-pipeline-security-holes/</guid><description>Five recurring CI/CD security vulnerabilities from real pipeline audits: exposed secrets, overprivileged roles, unverified images, missing approval gates, and poisoned dependencies.</description><pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>From Manual Deploy to GitOps: A Practical Migration Journey</title><link>https://toni.kusnandar.dev/blog/from-manual-deploy-to-gitops/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/from-manual-deploy-to-gitops/</guid><description>How to evolve from SSH deploys and manual steps to a full GitOps workflow where Git is the single source of truth for infrastructure and application state.</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>Building a RAG System with Go and OpenAI: Step by Step</title><link>https://toni.kusnandar.dev/blog/building-rag-system-go-openai/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/building-rag-system-go-openai/</guid><description>A step-by-step tutorial for building a Retrieval-Augmented Generation system in Go using OpenAI embeddings, pgvector for vector storage, and similarity search for context-aware AI responses.</description><pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>AI Integration for Backend Engineers: A Practical Playbook</title><link>https://toni.kusnandar.dev/blog/ai-integration-backend-engineers-playbook/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/ai-integration-backend-engineers-playbook/</guid><description>A practical guide for backend engineers integrating AI and LLMs into production systems covering architecture patterns, rate limiting, prompt management, RAG, caching, and cost optimization.</description><pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>Error Handling in Go Microservices: Patterns That Scale</title><link>https://toni.kusnandar.dev/blog/go-error-handling-patterns-microservices/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/go-error-handling-patterns-microservices/</guid><description>Practical error handling patterns for Go microservices covering custom types, wrapping, propagation across service boundaries, structured logging, and client-facing responses.</description><pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>gRPC vs REST: A Practical Decision Guide for Backend Engineers</title><link>https://toni.kusnandar.dev/blog/grpc-vs-rest-when-to-use-which/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/grpc-vs-rest-when-to-use-which/</guid><description>A hands-on comparison of gRPC and REST covering performance benchmarks, code examples, tooling, and a clear framework for choosing between them.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>Building Production-Ready Go APIs: The Complete Guide</title><link>https://toni.kusnandar.dev/blog/production-ready-go-api-guide/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/production-ready-go-api-guide/</guid><description>A comprehensive guide to building production-grade Go APIs with clean architecture, database pooling, graceful shutdown, health checks, and testing strategies.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>Terraform Lessons from 40+ Production Projects</title><link>https://toni.kusnandar.dev/blog/terraform-lessons-40-production-projects/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/terraform-lessons-40-production-projects/</guid><description>Hard-won Terraform lessons covering module strategy, state management, environment separation, secrets handling, drift detection, and anti-patterns from real client codebases.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>Docker Multi-Stage Builds: Smaller Images, Faster Deploys</title><link>https://toni.kusnandar.dev/blog/docker-multi-stage-builds-production/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/docker-multi-stage-builds-production/</guid><description>A hands-on tutorial for Docker multi-stage builds covering Go, Node.js, and Java examples with security hardening, caching strategies, and CI/CD integration for production deployments.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>CI/CD on AWS: GitHub Actions to ECS Deploy Pipeline</title><link>https://toni.kusnandar.dev/blog/cicd-github-actions-ecr-ecs-deploy/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/cicd-github-actions-ecr-ecs-deploy/</guid><description>A step-by-step tutorial for building a production CI/CD pipeline with GitHub Actions, ECR, and ECS Fargate using OIDC authentication and blue-green deployments.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>DevOps for Small Teams: A Practical Guide Without a Platform Team</title><link>https://toni.kusnandar.dev/blog/devops-small-teams-practical-guide/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/devops-small-teams-practical-guide/</guid><description>A practical DevOps playbook for teams of 1-5 engineers covering minimum viable CI/CD, monitoring, infrastructure as code, security, and incident response without dedicated platform engineers.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>Lambda vs ECS Fargate vs App Runner: Which AWS Compute to Choose</title><link>https://toni.kusnandar.dev/blog/lambda-vs-fargate-vs-app-runner/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/lambda-vs-fargate-vs-app-runner/</guid><description>A detailed comparison of AWS Lambda, ECS Fargate, and App Runner covering cold starts, pricing, scaling, and when to use each for your workload.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>AWS Architecture Patterns for Small Teams</title><link>https://toni.kusnandar.dev/blog/aws-architecture-patterns-small-teams/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/aws-architecture-patterns-small-teams/</guid><description>A practical decision framework for choosing the right AWS architecture when your team is small and your budget isn&apos;t infinite.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate><language>en</language></item><item><title>800 Peserta, 1 Mentor: Gimana Mastiin Mereka Praktek?</title><link>https://toni.kusnandar.dev/blog/800-peserta-1-mentor-gimana-caranya-mastiin-mereka-praktek/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/800-peserta-1-mentor-gimana-caranya-mastiin-mereka-praktek/</guid><description>Cerita gimana gue handle assessment 800+ peserta shortcourse dengan bikin PDF similarity checker pakai TF-IDF dan cosine similarity.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate><language>id</language></item><item><title>Pengalaman Jadi Mentor Shortcourse AI for Future SE</title><link>https://toni.kusnandar.dev/blog/pengalaman-jadi-mentor-shortcourse-ai-for-future-software-engineer/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/pengalaman-jadi-mentor-shortcourse-ai-for-future-software-engineer/</guid><description>Cerita dan insight dari pengalaman ngajar shortcourse AI for Future Software Engineers di Universitas Pamulang, 4 sesi intensif.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate><language>id</language></item><item><title>Kenapa Gue Pilih ECS Fargate, Bukan Kubernetes</title><link>https://toni.kusnandar.dev/blog/kenapa-gue-pilih-ecs-fargate-bukan-kubernetes/</link><guid isPermaLink="true">https://toni.kusnandar.dev/blog/kenapa-gue-pilih-ecs-fargate-bukan-kubernetes/</guid><description>Perbandingan jujur ECS Fargate vs Kubernetes dari sisi operational cost, complexity, dan kapan masing-masing cocok dipakai.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate><language>id</language></item></channel></rss>