Hi, I'm

Ali Rıza Aynacı

Computer Engineering student at Erciyes University. Backend developer focused on Go, distributed systems, and building scalable infrastructure. Open source contributor & technical writer.

Recent Posts

#software-architecture#golang#hexagonal-architecture

Hexagonal Architecture: Nedir, Neden Önemlidir, Go’da Interface ve Struct’lar ile Nasıl Kurgulanır?

Mülakatlara hazırlanırken birçok konuyu PoC (proof of concept) olarak uygulamaya çalışıyorum fakat şu ana kadar çalıştığım konular içerisinde beni en çok zorlayan ve sıfırdan tasarlayıp kurması gerçekten zor hissettiren bir konu olduğundan ileride tekrar okuyup hatırlamamı kolaylaştırmak adına aslın

Read more
#consensus-algorithm#software-engineering#distributed-systems

Implementing Raft in Go: 3 Concurrency Lessons from a Proof of Concept

Click to read the full article on Medium...

Read more

Redis Sharding in Go: From Single Node Bottleneck to Horizontal Scale

When I was building RLaaS (Rate Limiting as a Service) , something critical dawned on me. My project is built for developers to embed into their own systems. But those systems have their own users — potentially thousands. Even if I serve just 100 developer clients , and each of them has 100 users, t

Read more
#google-cloud-console#oauth2#golang

Google OAuth2 Login in Go: A Minimal and Complete Guide

While building my side project RLaaS (a multi-tenant rate limiting service in Go), I needed a simple and secure way to authenticate users — ideally using their existing Google accounts. That’s when I decided to implement Google OAuth2 Sign-In from scratch, using just net/http and the official Go lib

Read more
#distributed-systems#software-development#software-engineering

Designing a Scalable Rate Limiter: Algorithms, Architecture, and Distributed Challenges

Introduction In today’s internet-scale applications, controlling how often a user or system can hit your API isn’t optional — it’s survival. Rate limiting acts as the first line of defense against abuse, outages, and performance issues. Here’s why it matters: ✅ Prevents system overload from sudden t

Read more
#golang#mongo#mongodb

Go Programlama ile MongoDB Bağlantısı: Başlangıç Rehberi

Son zamanlarda Go programlama diliyle ilgilenirken, proje içinde kullanacağım bir serviste MongoDB bağlantısı yapmakta birkaç hata ile karşılaştım. Bu hataları çözdükten sonra, hem yeni başlayanlar için yol gösterici olabileceğini düşündüm hem de ileride tekrar dönüp bakabileceğim bir yazı hazırlama

Read more
#golang#concurrency

Concurrency and Synchronization in Go: Using Goroutines, Mutex, and WaitGroup

Recently, while researching various topics related to Go, one of the areas I’ve focused on the most is concurrency. In this article, I will discuss Go’s approach to concurrency, its tools in this area, and its importance in software development, based on my perspective and the research I’ve conducte

Read more
#cqrs-pattern#design-patterns

CQRS (Command Query Responsibility Segregation): Detaylı Bir İnceleme

https://www.geeksforgeeks.org/cqrs-command-query-responsibility-segregation/ Yazılım mimarilerinde sürdürülebilir, modüler ve ölçeklenebilir sistemler geliştirmek oldukça kritik bir hedeftir. Daha önce Onion Architecture gibi katmanlı mimarilerle sistemlerdeki bağımlılıkları nasıl azaltabileceğimizd

Read more
#software-architecture#onionarchitecture

Onion Architecture: Yazılımda Esnek ve Sürdürülebilir Bir Mimari

Yazılım geliştirme projelerinde doğru mimariyi seçmek, uygulamanın sürdürülebilirliği ve gelecekteki değişikliklere kolay adapte olabilmesi açısından hayati öneme sahiptir. Onion Architecture katmanlı yapısıyla uygulamanın en önemli bileşeni olan iş kurallarını, yani domain katmanını dış bağımlılıkl

Read more
#software-development#design-patterns#strategy-pattern

Yazılım Tasarımında Strategy Pattern: Esneklik ve Bakım Kolaylığı

Yazılım geliştirme dünyasında, karmaşık sistemlerin esnek ve bakımının kolay olmasını sağlamak büyük önem taşır. İşte bu noktada, davranışsal yazılım tasarım modellerinden biri olan Strateji Tasarım Deseni devreye girer. Bu desen, bir algoritma ailesini tanımlayıp her bir algoritmayı kapsülleyerek v

Read more