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
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 →
Data and Persistence
Go and Backend Engineering
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.