Backend Engineering Primary
C# / .NET Core
Since 2018, when a college friend dropped me into a live PPOB codebase on day one. Payment APIs, background workers, transaction flows.
.NET Framework
The legacy half of the job: Bukopinet and the Octopus switching core still run on it. Getting them off is my current project.
ASP.NET Core Web API
REST endpoints built for payment partners who read the docs closely and retry aggressively. PayAja's API talks straight to the mobile app.
Entity Framework Core & LINQ
ORM where it helps, raw SQL where it doesn't. Knowing when to switch is the actual skill.
API Security
JWT and OAuth2 flows, hardened over years of fintech integrations and partner audits.
Transaction Systems
High-volume payment processing where a lost record is not an option: idempotency, reconciliation, audit trails.
Background Jobs & Automation
Schedulers that run thousands of transaction jobs a day so the operations team doesn't have to.
Database Engineering Core
SQL Server
My first and longest database, since 2018. The one whose query plans misbehave at 2 a.m.
T-SQL & Stored Procedures
Business logic that lives close to the data, versioned and reviewed like any other code.
Query Optimization
The part of the job I enjoy most: reading execution plans and shaving milliseconds off queries that run a million times a day.
PostgreSQL
The newer half of my database work, since 2021, on e-commerce catalogs and then high-volume financial data.
PL/pgSQL & Partitioning
Keeping big transaction tables queryable by splitting them before they become a problem.
MongoDB
The Qodyra year: UMKM product catalogs — clothes, shoes, everything — modeled as documents because they refuse to fit in rows.
SQL / NoSQL Data Consistency
Keeping data honest when it lives in two different kinds of stores at once.
Payments Domain Fintech
Payment Gateway Integration
Wiring apps to banks, aggregators, and Xendit — and handling every weird thing they send back.
PPOB Billing Systems
Bill payments at national scale: electricity, telco, university tuition. My least favorite part is still real — new supplier, huge catalog, every product and fee added to the switching core one by one.
EDC Terminal Backends
The server side of MiniATM devices — the connection that turned PayAja Bisnis into BayarBayar. Fast responses, tight security, no second chances.
Reconciliation & Data Integrity
Making sure every rupiah that enters the system can be accounted for on the way out.
Tooling & Process Daily
Docker & Linux
The destination of our current re-platform: .NET Framework services rebuilt on .NET Core so they can leave Windows and run in containers.
Legacy Migration
Moving systems that can't afford downtime: staged cutovers, rollback plans, nervous stakeholders.
AI-Assisted Development
Full convert to Claude Code. It does a lot of the typing now; I do the judging.
Swagger / OpenAPI
API documentation partners can actually integrate from, kept in sync with the code.
Git, Azure DevOps & Trello
Azure DevOps from day one at Arranet, repos and boards both — with a Trello era when the license got too expensive. Same discipline, free tier.
ISO 9001:2015 Workflow
Years of working inside a certified quality process: decisions documented before they become mysteries.
Technical Documentation & PRDs
Writing specs other engineers can build from without a meeting to decode them.
IT Operations & Troubleshooting
Where I started in 2014, upgrading bank office PCs. Old habit that still pays off every time production hiccups.
Web Technologies Supporting
HTML / CSS
Enough to build this site by hand, which is how it was built.
JavaScript (ES6+)
Vanilla for the front of things: fetch, DOM, no framework unless the job actually needs one.
Bootstrap
For internal tools that need to look decent by Friday.
Laravel / PHP
The Qodyra year: an UMKM e-commerce backend with Xendit payments, learned from zero on the job.
Xamarin
Took Bukopinet from web to mobile with it — the app, the API behind it, and the dashboards around it.