Indrico Jowensen Backend Software Engineer

I build backends that deliver — every message, every time.

6+ years building and running production systems for enterprise clients in banking, insurance, logistics and government. I specialize in omnichannel messaging, high-volume APIs, and the queues, webhooks and databases that keep them running.

  • Greater Jakarta, Indonesia
  • GMT+7 (WIB)
delivery-pipeline illustrative
Illustrative message-delivery pipeline Messages enter through a REST API or webhook, wait in a queue, are picked up by channel-specific workers and delivered through WhatsApp, SMS or Email. When WhatsApp fails, the message falls back to SMS. ingress queue workers channels fallback REST API + webhooks wa sms mail WhatsApp SMS Email
An illustrative simulation of the kind of delivery pipeline I design. It is not a real system or real data.
years building & operating production systems
6+
transactions a day on one messaging platform
100K+
of MySQL records tuned for high-volume workloads
Millions
channels: WhatsApp, SMS & Email
3
industries served, all enterprise clients
4

Built for enterprise clients in

  • Banking
  • Insurance
  • Logistics
  • Government

01 About

Most of my work happens where users never look.

The queue that absorbs a sudden spike. The webhook that quietly syncs a delivery status. The index that makes a heavy query fast again. That's where I do my best work.

For more than six years I've built and operated production systems for enterprise clients across banking, insurance, logistics and government. That includes a multi-tenant omnichannel platform that moves 100K+ transactions a day across WhatsApp, SMS and Email.

I like owning things end to end. I design the flow, write the code, ship it, and stay with it in production. That means tracking down database contention, draining worker backlogs, and fixing webhooks when they fail at the worst possible moment.

Employer and client names are withheld to respect confidentiality agreements.

02 Expertise

Areas I know inside out

Six areas I've owned in production, day in and day out.

Omnichannel messaging

WhatsApp, SMS and Email from one platform. Broadcast, scheduling, delivery tracking, inbox, ticketing and auto-reply, plus cross-channel fallback when a channel fails.

  • Broadcast
  • Delivery tracking
  • Fallback

APIs & webhooks

High-volume REST APIs and provider integrations: the WhatsApp Business Platform and third-party messaging gateways, with inbound webhooks that keep every delivery status in sync.

  • REST
  • Webhooks
  • Provider integration

Async processing & queues

Queue-based processing with workload-specific workers and a durable outbox, so no job silently disappears. Backlog monitoring raises an alert before users notice anything.

  • Queues
  • Durable outbox
  • Supervisor · PM2

Database performance

MySQL with millions of records. I do query and index optimization for high-volume workloads, and I hunt down contention and heavy queries in production.

  • MySQL
  • Indexing
  • Query tuning

Security & encryption

Database- and application-level encryption for sensitive enterprise data, built for clients in regulated industries like banking and insurance.

  • Encryption
  • Sensitive data
  • Multi-tenant

Infrastructure & Linux

Ubuntu, Nginx and KVM administration: networking, process supervision and monitoring, and moving legacy servers onto virtual machines without rewriting the app.

  • Ubuntu
  • Nginx
  • KVM

03 Selected work

Case studies, anonymized

Real production work, without the names. The only figures here are ones from systems I actually worked on.

02 Architecture · Reliability

Queue architecture with a durable outbox

Challenge
Workloads have different urgency. A large broadcast shouldn't hold up a time-sensitive message, and no job may silently disappear.
What I did
Designed queue-based async processing with workload-specific workers, durable outbox processing, backlog monitoring and operational alerts through Sentry and Telegram.
Outcome
Isolated workloads, and backlogs or failures that arrive as alerts instead of surprises.
  • Queues
  • Outbox
  • Sentry
  • Telegram alerts
03 Data · Performance

Keeping a multi-million-row MySQL fast

Challenge
High-volume workloads on tables with millions of records led to heavy queries, database contention and worker backlogs.
What I did
Optimized queries and indexes for the hot paths, and investigated contention and application performance directly in production.
Outcome
Resolved production issues involving contention, heavy queries and worker backlogs, fixed at the root rather than patched over.
  • MySQL
  • Indexing
  • Profiling
04 Infrastructure · Migration

Rescuing a legacy Ubuntu production server

Challenge
A production system on a legacy Ubuntu release. The original developer had left, and there was little room to change the application.
What I did
Migrated the system into a KVM virtual machine and configured networking, IP assignment and automatic VM startup.
Outcome
The legacy application kept running with minimal application changes, on infrastructure that can be managed and restarted predictably.
  • KVM
  • Ubuntu
  • Networking
05 Frontend · Modernization

Modernizing a legacy React frontend

Challenge
A React app still built on Create React App, which is no longer maintained, with a dependency tree that no longer resolved cleanly.
What I did
Migrated it to React 19 with Vite, replaced incompatible libraries, and used automated parity testing to preserve the existing UI and behavior.
Outcome
Validated 200+ automated tests and production builds while preserving the existing UI and behavior.
  • React 19
  • Vite
  • Dependencies
  • Testing

04 Experience

Experience & education

  1. 2020 — Present

    Software Engineer

    Enterprise software company name withheld · NDA

    • Develop and operate production systems for enterprise clients in banking, insurance, logistics and government.
    • Build and maintain a multi-tenant omnichannel platform (WhatsApp, SMS, Email) handling 100K+ transactions per day.
    • Own messaging workflows end to end: broadcast, scheduling, queues, delivery tracking, webhooks, inbox, ticketing, auto-reply and cross-channel fallback.
    • Design queue-based async processing with workload-specific workers, a durable outbox, backlog monitoring and alerts.
    • Manage and optimize MySQL databases with millions of records. Implement database- and application-level encryption.
    • Migrated a legacy Ubuntu production system to KVM virtualization with minimal application changes.
    • Modernized a legacy CRA-based React app to React 19 with Vite, replacing incompatible libraries and using automated parity testing to preserve existing UI and behavior; validated 200+ automated tests and production builds.
    • Modernized a legacy Laravel application from PHP 7.4 and Laravel 8 to PHP 8.5 and Laravel 13, updating dependencies, adapting application code, configuring PHP-FPM/CLI runtimes, and validating workers, schedulers, and critical workflows with backup and rollback procedures.
    • Banking
    • Insurance
    • Logistics
    • Government
  2. 2020

    Bachelor of Information Technology

    Universitas Buddhi Dharma

    • Graduated with a 3.89 GPA.
    • Served as a lecturer assistant for Business Intelligence courses.

05 Stack

Tools I reach for daily

Proven, well-understood technology, used deliberately.

Backend

  • PHP
  • Laravel
  • Node.js
  • REST APIs
  • Webhooks
  • API integration
  • Async processing

Messaging

  • WhatsApp
  • SMS
  • Email
  • Delivery tracking
  • Fallback

Database

  • MySQL
  • SQL optimization
  • Large-scale data
  • Encryption

Architecture

  • Multi-tenant systems
  • Queues
  • Provider integration
  • Durable outbox

Infrastructure

  • Ubuntu
  • Docker
  • Nginx
  • KVM
  • Networking
  • Linux administration

Frontend

  • JavaScript
  • React
  • React Query
  • Vite
  • Tailwind CSS

Tooling & ops

  • Git
  • Postman
  • Supervisor
  • PM2
  • Codex
  • Claude
  • Telegram monitoring

“Reliable systems are built from tools you understand deeply, not from whatever is newest.”

06 How I work

Four habits I bring to every system

01

Own it end to end

From the first commit to production troubleshooting, I build it, run it, and fix it when it breaks.

02

Design for failure

Providers go down and webhooks arrive late. Queues, outboxes and fallbacks turn that into a non-event.

03

Observable by default

If a backlog grows or a worker dies, I want to know first. Monitoring and alerts ship with the feature, not after the incident.

04

Protect the data

Clients trust us with their data. Encryption and careful access control are defaults, not add-ons.

07 Contact

Let's build something reliable.

Want to talk backend systems? Tell me about your team and what you're building. Messages from this form go straight to my inbox.

  • Based inGreater Jakarta, Indonesia
  • TimezoneGMT+7 (WIB)
  • FocusBackend · Messaging · Data
  • Core stackPHP · Laravel · Node.js · MySQL

Your details are only used to reply to you. No newsletters, no tracking.