Ruby on Rails Developer

Building reliable, human-centered software with Ruby.

I am Banura Randika Perera, a software engineer focused on Ruby on Rails, product design, and building systems that scale with empathy. I care deeply about clean architecture, developer experience, and shipping reliable products. I also enjoy mentoring teams and leading upgrades that keep platforms modern and stable.

Banura Randika Perera
Currently Exploring
Ruby 4, Rails 8.1, Kubernetes, Infrastructure as Code

Exploring modern Rails runtime upgrades alongside platform and infrastructure automation.

Ruby 4 Rails 8.1 Kubernetes IaC
Latest Writing
View all articles

Apr 25, 2026

Moving on from Heroku — Part 1

Evaluating OVH cloud for production. I work in a SaaS company with a strong foothold in the aviation industry. This article outlines an our evaluation proces...

heroku cloud-computing ruby-on-rails cloud-migration ruby
Moving on from Heroku — Part 1 — open article

Apr 13, 2026

Managing Rails Database Schemas Across Branches: A Practical Guide to db/schema.rb Conflicts

The Problem Every Rails Team Faces (But Few Talk About). You open a pull request. CI passes. Code review looks good. Then: git merge master produces this: CO...

ruby schema activerecord postgresql ruby-on-rails
Managing Rails Database Schemas Across Branches: A Practical Guide to db/schema.rb Conflicts — open article

Nov 14, 2023

Advanced uses of ‘select’ in Ruby

Advanced use cases for the ‘select’ method. In the world of Ruby programming, the select method is more than just a basic tool for filtering arrays. It’s ver...

programming ruby-on-rails software-development software-engineering ruby
Advanced uses of ‘select’ in Ruby — open article
Highlights
Ruby Craftsmanship

Crafting clean, expressive, and testable Ruby with a focus on performance, maintainability, and team-friendly conventions. Led major Ruby and Rails upgrades while keeping production stable.

Product Engineering

Delivering end-to-end SaaS features across backend, UI, and integrations, balancing speed with reliability and thoughtful UX. Comfortable leading delivery in distributed teams.

Systems Thinking

Designing resilient systems with observability, data integrity, and scalability in mind, from background jobs to APIs and caching. Built platform capabilities that support long-term growth.