← All case studiesMercadoLibre / Apr 2020 - Nov 2021

Connecting feature ownership to platform reliability

Built shared resources and virtual credit-card flows, connecting API contracts, reusable components, customer journeys, and application observability.

Senior Android Engineer

Product context and challenge

At MercadoLibre, product teams owned modules within a larger application and contributed to common libraries. I worked on virtual credit-card flows and shared resources, including integrations with Andes UI Components and Andes Images.

A feature had to fit a platform used by many teams. Contracts, UI behavior, edge cases, and telemetry needed to stay coherent when modules came together in release trains.

My scope and ownership

  • Built a small resource-handling SDK for shared assets.
  • Helped define mobile and middle-end contracts for screen payloads and customer interaction events, contributing middle-end changes when needed.
  • Created and registered UI components, documented complex behavior, and prepared components for shared use when reuse justified it.
  • Used FLEX dispatchers and stores for complex server-driven flows with explicit state and event paths.
  • Defined engineering and product metrics and collaborated with the architecture team on application-wide observability.

Decisions and trade-offs

  • Feature-specific behavior stayed in its owning module. Shared components needed a clear reuse case because API evolution, compatibility, and governance affected other teams.
  • Server-driven composition supported flows that benefited from middle-end control. FLEX made state transitions explicit without requiring every screen to become dynamic.
  • Module autonomy made release-train validation essential. Integration edge cases became inputs to shared observability improvements.

Quality, validation, and delivery

  • Tested module behavior and edge cases against required coverage expectations.
  • Defined latency percentiles from P50 through P99 alongside customer-journey progression and payment timing signals.
  • Investigated alerts and weak product metrics with the team, sharing discoveries and clarifying initially incomplete use cases.

Outcomes

  • Delivered resource handling and components intended for consumption across product teams.
  • Connected mobile payloads, customer events, and telemetry within complete product flows.
  • Identified release-train edge cases and worked with the architecture team on observability improvements.

Supporting technologies

KotlinAndroidFLEXUDFServer-driven UIAndesAPI designObservability