The pain (client reality)
Seasonal traffic spikes broke assumptions: checkout had to stay fast, inventory had to stay truthful in real time, and the merchandising team could not babysit recommendations manually.
Web and mobile were drifting apart—duplicate logic, slower releases, and inconsistent catalog behavior.
The system (what we built)
An API‑first backend on CodeIgniter + MySQL, caching with Redis, and AWS hosting tuned for burst traffic. Payments (Stripe / PayPal) and inventory flows were unified so every channel reads the same source of truth.
An AI/ML recommendation layer plugs into product views and baskets—designed to lift AOV and repeat visits without slowing the critical path.
Before vs after
Before
- Fragile monolith patterns under load; fear of campaign traffic.
- Web/mobile parity gaps and duplicated business rules.
- Manual merchandising and weak personalization.
After
- Predictable performance for large catalogs + peak events.
- Single API contract—consistent catalog, cart, and orders.
- Recommendation-driven uplift without ops overhead.
Tech stack
CodeIgniter
PHP
MySQL
Redis
AWS
REST APIs
AI / ML APIs
Stripe
PayPal
Mobile consumers
Visuals
Results (metrics that mattered)
100K+
Active users supported
~25%
Attributed sales lift (AI recommendations)
<200ms
API p95 (critical paths)
- Unified API cut duplicate logic and sped up feature delivery for web + mobile.
- Caching + query discipline reduced DB pressure during busy periods.
- Recommendation flows increased average order value without a larger merchandising team.