Portfolio No. DSR / 2026 · 20+ Years in Practice

Dhanesh S R

Software Architect · Technical Lead · Full-Stack Engineer

I build, modernize, and scale web applications and digital platforms - spanning the full lifecycle from business requirements and system architecture through development, infrastructure, performance, and ongoing improvement.

A - Design System Architecture Data models, workflows and services built to evolve.
B - Build Full-Stack Delivery Hands-on from APIs and integrations to UI.
C - Scale Performance & Search Caching, query tuning, load testing and search.
D - Operate Cloud & Reliability AWS infrastructure, security and monitoring.
Domains Event Ticketing Booking Payments Search Enterprise Integrations

NowModernizing production platforms and building AI-assisted engineering workflows - with review, testing and validation built in.

Where I help
  • Architecture reviews
  • Platform modernization
  • Performance & scaling audits
  • Technical leadership
  • Search implementation
  • Cloud migration on AWS
20+Years of experience 6Layers, end to end AIAssisted engineering
Fig. 1 - Stack SectionEdge → Platform
  1. L1Edge & Delivery
    CloudFrontAkamaiRoute 53WAF / SSLELB
  2. L2Interface
    JavaScriptHTML / CSSjQueryCore Web Vitals
  3. L3Application
    PHP / MVCGoREST APIsAuth & SSO
  4. L4Search & Cache
    SolrElasticsearchAlgoliaRedis
  5. L5Data
    MySQLPostgreSQLMongoDBAurora / RDS
  6. L6Platform
    AWSDockerNginx / PHP-FPMCloudWatch
Scale: production · Rev. 2026
Featured Build

BudSplit - Free Expense Splitter with UPI Settle-Up

Share the cost, keep the memories.

BudSplit is a free expense-sharing app I designed and built for friends, flatmates and groups of travellers. Add expenses in seconds - hotels, fuel, meals, tickets - see who owes whom, and settle up in one tap with UPI through GPay, PhonePe, Paytm or any UPI app.

  • Split equally, by exact amounts or by percentages - accurate to the last paisa
  • One expense, several payers: record exactly who paid what
  • Simplify debts finds the fewest payments to settle the whole group
  • UPI Pay button opens your UPI app with the payee and amount filled in
  • Trip summary with spending per day, saved as PDF or exported to CSV
Weekend Trip · 4 friendsExample
Homestay - Asha₹8,000
Fuel - Kiran₹3,200
Dinner - Meera₹2,400
Tickets - Arjun₹1,600
Total · ₹3,800 each₹15,200
Arjun → Asha₹2,200 Pay · UPI
Meera → Asha₹1,400 Pay · UPI
Kiran → Asha₹600 Pay · UPI
Fig. 2 - Simplified debts, settled through any UPI app
BudSplit dashboard showing total balance and Pay with UPI buttons for each group
Dashboard Balances across groups, with one-tap UPI Pay
BudSplit group balances with simplified suggested payments for a Goa trip
Balances Who owes whom, with simplified payments
BudSplit add expense form: paid by and split equally between four friends
Add expense Paid by anyone, split any way
BudSplit trip summary with who paid what, CSV download and PDF export
Trip summary Who paid what, PDF and CSV export

Screens from the live app with demo data.

01 · Groups

Trips, flats & events

Start a group, pick its currency and invite friends by email. They can sign up right from the invitation.

02 · UPI

One-tap UPI settle-up

Add your UPI ID once. Friends who owe you see a Pay button that opens GPay, PhonePe or Paytm, with the amount already filled in.

03 · Splits

Fair, exact splits

Equal, exact or percentage splits. Any leftover paisa or cent is assigned in a fixed order, so totals always match.

04 · Debts

Fewer payments

Simplify debts suggests the smallest set of payments that clears every balance, or you can see who owes whom expense by expense.

05 · Summary

Trip summary & export

See who paid what, spending per day and every expense. Save it as a PDF or download a CSV.

06 · History

Nothing gets lost

Every edit is kept in history, deleted expenses can be restored, and finished trips can be archived.

Free to use 28 currencies UPI for INR groups Installable app on phone (PWA)
§ 01

Three Pillars

I

Architecture

Designing systems that can evolve.

II

Engineering

Building and debugging real production software.

III

Knowledge

Sharing lessons learned from solving difficult engineering problems.

§ 02

How I Approach Technology

Good architecture is not just about choosing technologies. It is about understanding the business problem, users, data, workflows, constraints, and future requirements before deciding how a system should be built. My approach is practical and engineering-driven.

Understand the business and functional requirements.

Design systems around clear responsibilities and well-defined workflows.

Build solutions that can evolve as requirements change.

Consider performance, security, scalability, and reliability from the beginning.

Validate architecture through real implementation and testing.

Identify edge cases and failure scenarios before they become production problems.

Continuously improve existing systems rather than treating architecture as a one-time activity.

§ 03

Technical Experience

Hands-on experience across the layers a production system actually touches - application, interface, data, and infrastructure.

Backend & Application Development

PHP / MVC Go REST APIs MySQL / PostgreSQL MongoDB Redis Auth & SSO Payments & Webhooks Enterprise Integrations

Frontend & User Experience

JavaScript jQuery HTML / CSS Responsive UI SEO & Core Web Vitals Booking Workflows

Search & Performance

Solr Elasticsearch Algolia Redis Caching DB Optimization Load Testing API Performance

Cloud & Infrastructure

AWS / S3 Aurora / RDS CloudWatch ELB CloudFront Route 53 IAM Nginx / PHP-FPM Docker WAF / SSL
§ 04

Architecture Through Real-World Systems

Detail - Event Ticketing Platform

A significant part of my experience comes from working on systems where architecture has to survive real-world complexity. An event ticketing platform is not simply an application that sells tickets.

Designing such systems requires looking beyond individual features and understanding how the entire system behaves as one product. That is the approach I bring to software architecture.

Event Management Pricing Rules Inventory Payments Coupons GST Booking States QR Codes Ticket Scanning Partial Entry Cancellation Policy Notifications Search Caching Admin Workflows
§ 05

Engineering With AI

I actively use AI-assisted development and engineering workflows to accelerate development, investigate complex problems, review implementations, generate technical specifications, and improve existing systems.

AI-Based Architecture

I use AI to explore multiple system designs quickly, stress-test data models and workflows against edge cases, and generate technical specifications before a single line of production code is written - so architectural decisions are pressure-tested early, when they are still cheap to change.

Vibecoding, With Guardrails

For prototyping and rapid iteration, I work conversationally with AI to move from idea to working code fast. But vibecoded output never ships as-is - it goes through the same review, testing, and validation as any other code before it touches production.

I see AI as an engineering partner - not a replacement for engineering judgment. The implementation still needs to be reviewed, tested, validated against the actual system, and measured against real requirements.

§ 06

Beyond Code

My interest in technology goes beyond writing code - understanding why a system behaves the way it does, finding the underlying cause of problems, simplifying complicated workflows, and designing solutions that remain practical to operate and maintain.

“Good software is ultimately about creating systems that are useful, dependable, understandable, and capable of evolving with the business.”

- Dhanesh S R