E-Commerce Platform Rebuild
Case study: rebuilding a legacy monolith into a modern React/Node.js platform for a Series B Dutch e-commerce company.
Reviewed by Igor Gazivoda, Co-founder & CEO of StepTo · Updated
Key Results
StepTo rebuilt a legacy Rails monolith (340,000 lines of code) into a headless Next.js storefront backed by three independent Node.js microservices for a Series B e-commerce company in the Netherlands. The project took 24 weeks with a 6-engineer team. Post-launch results measured over 90 days: LCP dropped from 8.2 seconds to 0.5 seconds (94% faster), conversion rate increased by 31%, and release cadence improved from bi-monthly to weekly (3× faster). Migration of 2.4 million product records and 8 years of order history completed with zero data loss and zero downtime, using a dual-write strategy with a 5-minute DNS rollback window. Total cost was under one third of a competing quote from a London agency for equivalent scope.
From 8-Second Load Times to 31% More Revenue
A Series B Dutch retailer had outgrown its Rails monolith. Product pages took 8+ seconds to load on mobile, the codebase was too fragile to release features safely, and Black Friday 2023 had caused three hours of downtime. They needed a complete rebuild, without stopping the business.
StepTo assembled a 6-person dedicated team in Belgrade and delivered a fully decomposed React/Node.js platform in 24 weeks, migrating 2.4 million product records with zero data loss and zero downtime.
What Results Did the Rebuild Deliver?
Measured 90 days after full production cutover
What Problem Was the Retailer Facing?
The client's platform had been built incrementally since 2015, a Rails monolith that had grown to 340,000 lines of code with no clear module boundaries. Every feature release required two weeks of QA because any change could break unrelated functionality. The engineering team of 4 was spending 60% of their time on maintenance and regression testing.
Performance had degraded to the point where mobile users saw 8–12 second load times. With 68% of traffic on mobile, this was directly impacting revenue. A Google PageSpeed audit gave the site a score of 14/100.
The client needed to rebuild the platform completely but couldn't pause trading. They also needed to do it at a cost that wouldn't threaten their runway, their previous quote from a UK agency was £1.2M for the same scope.
How Did StepTo Rebuild the Platform?
StepTo proposed a strangler-fig migration: decompose the monolith domain-by-domain while keeping the old system live, gradually routing traffic to the new services until the monolith could be switched off.
The new architecture used a Next.js storefront for the frontend (SSR for SEO, ISR for catalogue pages), backed by three independent Node.js services: catalogue, cart/checkout, and order management, each with its own PostgreSQL database. Redis handled session state and catalogue caching. AWS CloudFront served static assets globally.
Storefront
- Next.js 14 (SSR + ISR)
- React 18
- Tailwind CSS
- Algolia search
Backend Services
- Node.js (3 microservices)
- PostgreSQL (per service)
- Redis cache
- Stripe payments
Infrastructure
- AWS ECS (Fargate)
- CloudFront CDN
- RDS Aurora
- GitHub Actions CI/CD
How Long Did the Rebuild Take?
- Weeks 1–3
Discovery & Architecture
Audited the existing monolith, mapped data flows, designed the new service boundaries and migration strategy.
- Weeks 4–16
Core Platform Build
Built product catalogue, cart, checkout, and order management as independent services with a unified Next.js storefront.
- Weeks 14–18
Data Migration
Migrated 2.4M product records and 8 years of order history with zero data loss using staged dual-write migration.
- Weeks 18–22
Performance & QA
Load testing, Core Web Vitals optimisation, accessibility audit, cross-browser QA.
- Weeks 23–24
Launch & Handover
Phased traffic cutover, team training, full documentation handover.
Which Technologies Were Used?
“We were quoted £1.2M by a London agency for the same project. StepTo delivered it for less than a third of that, on time, and the results exceeded everything we projected. The team felt like an extension of our own engineering org, not a vendor.”
What Do Readers Ask About This E-commerce Rebuild?
How did StepTo handle migrating 8 years of order history without downtime?
We used a dual-write migration strategy: for 4 weeks before cutover, every write went to both the old and new database. This let us verify data integrity in production conditions before flipping traffic. The cutover itself was a DNS change with a 5-minute rollback window, the client never noticed.
Was the 31% conversion increase directly attributable to the rebuild?
The primary driver was load time. The old site averaged 8.2 seconds to LCP on mobile, below the threshold where most users abandon. After the rebuild, LCP dropped to under 500ms. We ran the new site as a 50/50 A/B for 30 days before full cutover to confirm causality.
How did you structure the dedicated team for this project?
The team was a 6-person dedicated squad: 2 senior React engineers, 2 senior Node.js engineers, 1 DevOps/infrastructure engineer, and a tech lead who acted as the client's primary point of contact. All based in Belgrade, working CET hours to overlap with the client's Amsterdam team.
Facing a Similar Challenge?
Whether you need a full rebuild, a dedicated team, or an architecture review, let's talk. We'll have a scoped proposal to you within 48 hours.
Start the conversationLet's talk about your project
Tell us what you're building and we'll get back to you within one business day with a no-obligation assessment.
Office hours
Send us a message
We'll reply within one business day.