Mobile Engineering / Expo React Native

Controlling App Size for LancerPay

A case study on managing build size in an Expo React Native product where offline storage, PDF generation, and growth-focused features created pressure on the installation footprint early in the product lifecycle.

bundle discipline
+1 release policy
asset weight
reduced
build review speed
faster
feature scope clarity
+high

The Context

LancerPay was positioned as a lightweight freelancer product, so app size was not a cosmetic concern. A larger binary would directly conflict with the promise of speed and simplicity, especially for users on limited storage or unreliable connectivity.

The Problem

As the product scope expanded to include SQLite-based local storage, PDF generation, reminder workflows, biometric locking, and branded assets, the Expo app started trending toward unnecessary bulk. The risk was clear: a supposedly lightweight freelancer tool could become harder to install, slower to distribute during QA, and more expensive to maintain as features accumulated.

Waterfall latency diagram

The Approach

The solution was to treat build size as a product constraint, not just a technical cleanup task. Each dependency, asset class, and native capability was reviewed based on whether it meaningfully improved the user experience relative to the cost it added to the final build.

Dependency Audit First

Large libraries were reviewed for overlap, especially where a narrow utility could replace a broad package with unused surface area.

Asset Compression and Scope Control

Images, onboarding visuals, and exported resources were optimized so the app shipped only what was necessary for the core experience.

Feature Gatekeeping

Nice-to-have capabilities such as heavier media or advanced native integrations were delayed unless they supported the MVP directly.

Before vs. After

The biggest gain came from shifting engineering behavior: app size became a design and release metric rather than an afterthought.

release footprint riskMOBILE PERFORMANCE
Before: growing
After: controlled
Optimized e-commerce UI

Frontend Optimization

Smaller App, Stronger Product Discipline

The result was not only a leaner build, but a clearer decision framework for every new feature added afterward.

Lessons Learned

01

Every dependency is a product decision

In Expo apps, convenience during development can quietly turn into long-term bloat if packages are added without budget discipline.

02

Offline-first does not have to mean heavyweight

Local data capability should be carefully modeled so the app remains resilient without shipping unnecessary complexity into the client.

03

Build size should be reviewed continuously

The easiest time to manage mobile footprint is during feature planning, before architecture debt and dependency creep accumulate.

Next Case Study

Improving Online Property Discovery

How better listing structure and filtering improved search quality in a marketplace product.

View Project

Need a mobile product that stays lean as it grows?

I can help shape the architecture, trade-offs, and delivery discipline behind a faster mobile product.

thewebse | Software Engineering & Technology Solutions