Collins Kimani

Collins Kimani

@codercollo

Backend Developer · Go Engineer · Nairobi, Kenya

(•_•)

Backend engineering with Go.

I build systems, study how they work, and document what I learn. I enjoy understanding the fundamentals behind software: how data is stored and protected, how services communicate, how systems handle failure, and how good engineering decisions make software easier to maintain.

View projects → Explore engineering notes →

Projects

  • Simple Bank

    A backend banking API focused on account management, transfers, and transactions. The core challenge here is concurrency — ensuring that concurrent transfers don't corrupt account balances, using database transactions and careful lock ordering.

    Go · PostgreSQL · SQLC · JWT · Docker

  • GoTP

    An OTP service that sends and verifies SMS codes while helping prevent fraudulent SMS requests. Addresses the engineering problem of idempotency and rate-limiting: how do you ensure an OTP is used exactly once, and that the system can't be abused to send arbitrary SMS traffic?

    Go · SMS Gateway · Security · Rate Limiting

  • RentLoop

    A WhatsApp bot that automates rent collection — reminders, payment tracking, and tenant communication. Practical exercise in integrating with an external messaging API and handling asynchronous message flows reliably.

    Go · WhatsApp API · Webhooks · Automation

  • URL Shortener

    A simple URL shortening service. Clean API design, fast redirects, and an exercise in thinking about ID generation, collision avoidance, and keeping a service small and purposeful.

    Go · REST · PostgreSQL

loading…

Engineering Foundations

Areas I work in and continue to develop. No percentages or ratings — the projects above are a better signal of practical ability.

Backend Development

  • Go programming
  • API design
  • Request validation
  • Error handling
  • Concurrency
  • Background processing
  • Software structure

Data and Persistence

  • Relational database design
  • SQL and query design
  • Database transactions
  • Data integrity
  • Isolation levels
  • Schema migrations
  • Data consistency

Distributed Systems

  • Service communication
  • gRPC and REST
  • Microservice architecture
  • Timeouts and retries
  • Fault handling
  • Async processing
  • Service boundaries

Security and Reliability

  • Authentication and authorization
  • Token-based security
  • Input validation
  • Idempotency
  • Integration testing
  • Graceful shutdown
  • Failure handling

Infrastructure and Operations

  • Docker and containerization
  • CI/CD
  • Linux fundamentals
  • Structured logging
  • Observability
  • Production debugging
  • Deployment workflows

Engineering Notes

A personal knowledge index — concepts I encounter while building software, written down to sharpen my understanding. Browse all notes →

API and Service Design


Writing

Longer reflections on implementation experiences and engineering decisions. All writing →


Elsewhere

  • GitHub — where the code lives.
  • LinkedIn — professional details, occasionally updated.
  • X / Twitter — sporadic thoughts on Go and software.
  • Email — the best way to reach me.