Problem

Gojek's transport business was GoRide and GoCar. The company wanted public transportation in the mix, and every ride needed to carry monetizable add-ons — insurance, carbon offsets — without slowing a booking flow used by millions of people daily.

Outcomes

  • 01Scaled transport bookings across 4 countries on the payments side
  • 02Station API latency 1.3s → 120ms; trip updates 2.36s → 40ms
  • 03End-to-end owner of Carbon Offset across gofood, gosend, pricing, and external partners
  • 04Shipped public-mobility trip planning to Jakarta as a new line of business

The work, chapter by chapter

01

GoTransit — public mobility, as the first engineer on it

A new line of business letting users plan trips on existing public transportation, not just GoRide/GoCar. I joined as an early backend engineer and grew into owning the project end to end — including a long stretch with no TL.

  • Built trip planning with recommended routes, plus Save Time and Money comparisons so users could weigh options per trip.
  • Integrated real-time vehicle data from Trafi and added angkot as a new vehicle type, with real-time updates across explore, station, and line screens.
  • Shipped first-mile/last-mile recommendations and third-party mode integration to close gaps between transit stops and doorsteps.
  • Added serviceability controls for the Jakarta launch, search-history recommendations, and a COVID info surface (cases, hospitals, helplines).
  • Ran the project without a TL: drove specs, kept HoP and stakeholders aligned, and set up the team's code-review and deployment processes along the way.
1.3s → 120msStation API latency
Before
After
2.36s → 40msTrip update latency
Before
After
Jakarta firstLaunch scope
02

Insurance premium — insuring rides in Indonesia

Backend for a ride-insurance feature so users in Indonesia could insure their trips against mishaps, built as a clean-slate service.

  • Built the insurance premium service following team best practices from day one, starting paired and growing into independent ownership of stories.
  • Integrated third-party insurance APIs plus internal segmentation and email services for policy delivery.
  • Drove tech-spec discussions across multiple teams before a line of code was written.
03

Carbon Offset — greener rides, end to end

An opt-in feature planting trees for every booked ride. My first cross-platform project led end to end — from ADR sign-off to weekly stakeholder updates.

  • Led E2E delivery as PIC: ADR sign-off, tech spec, risk/timeline tracker, and weekly updates that kept leadership from ever needing to chase status.
  • Collaborated across gofood, gosend, pricing, Kong, CCU, and external tree-planting partners (Jejak, ICP) to make contributions work across services.
  • Managed the backend service with two teammates, unblocking them with well-defined tasks so delivery never bottlenecked on me.
04

Payments & pricing — Ironbank

Moved into the payments domain, managing transport-booking payment flows across 4 countries on the Ironbank platform.

  • Owned pricing/payment flows for transport bookings across 4 Southeast Asian countries.
  • Fixed a PDL bug deep in core pricing flows: wrote the spec, ran the cross-team pricing review, and owned the fix end to end.

Lessons

  • Owning communication is half of owning a project — weekly written updates buy engineering focus.
  • Third-party data quality is part of system design, not an integration afterthought.
  • Latency improvements need user-visible context to matter.
  • Writing the spec before the meeting is how you win the meeting.