Startup to Enterprise: what 5 countries taught me

After 5 years coding from startups to enterprise, scaling taught me one thing: the real nightmare isn't the code, it's the blast radius.

RM
Rabie Menad
5 min read

I’ve been building digital products for 5 years now. I’ve had the chance to see a bit of everything: the organized chaos of startups, the endless rush of web agencies, and finally, the big leagues in enterprise tech.

In September 2024, I set up camp at Decathlon Digital as a freelancer. For two years, our team (which went from ODVC to Teamwear, and finally MyClub) had one clear mission: build a killer product customization experience for pros and sports clubs.

I’ll be honest: I was nervous. Not about the code, but the sheer scale of Decathlon.

The power of focus

Before this, especially back at IVS, I was a total Swiss Army knife. I was the kind of dev who would fix a critical prod bug in the morning, run tech interviews in the afternoon, and find myself pitching the app at a booth during an open house event in Lille the next day. It's a great way to learn, but you're always skimming the surface.

Decathlon's enterprise environment taught me a massive cheat code: focus.

I finally had the time to grind Next.js until it had absolutely zero secrets left for me. I was basically channeling Satoshi Nakamoto writing the Bitcoin whitepaper: locked in, filtering out the noise, entirely focused on architecture, and executing with absolute precision. Dropping blog build times to nothing, dynamically rendering a route just by reading a cookie, dissecting how Next optimizes images under the hood (WebP, AVIF, sizes attribute), or mutating server cache with Server Actions... It became my playground.

We were running Next.js 16, React 19, an Iframe integration for designs, and for our V2, we're even giving Shopify a run for its money with Medusa, its open source alternative.

A quick flex

I know, "lines of code" isn't the ultimate metric. But we rewrote the entire headless architecture, and I look back at it with a little smirk: I ended up on the podium of the project's top contributors.

Contributor statistics showing my second place

But deep down, that volume of code wasn't my biggest culture shock.

The final boss: blast radius

At a small scale, you code, you break something, you fix it, nobody notices. At Decathlon's scale? Your blast radius is massive. One dumb mistake, and 5 countries, 5 currencies, and 5 different business contexts blow up in your face.

I really understood this when I watched how we handled support. At first, when a specific country reported a bug, you had that "hero dev" reflex: you wanted to jump in and fix it directly. Huge mistake. As soon as a country realizes you'll instantly patch their specific problems, it's game over. You become their personal tech support and it's hell.

The real turning point? When the PMs enforced a strict ticketing system. The goal wasn't to be fast anymore; it was to step back and look at the bigger picture.

How you survive

Ship every day (literally)

Instead of sweating through complex per-country deployments, we went with the brute-force, yet safest method: ship to everyone at once, all the time.

Our releases were named 26-07-30 (Year-Month-Day). The goal? Force ourselves to ship as often as humanly possible. The PM validates, we push to 5 countries simultaneously. When deploying to production becomes a boring, daily routine, the fear vanishes.

i18n isn't Google Translate

Across 5 countries, the real tech debt isn't technical; it's functional. Translating text? Easy. Formatting dates? A library does that in seconds. But per-country business rules? That’s a whole different story. A customization rule that flies in France but is strictly forbidden in Germany cannot be factored out. You have to document it, test it (bless Vitest and GitHub Actions), and pay the price for it on every new feature.

Thinking like a PM

One of my biggest wake-up calls didn't even happen in VS Code. One day, I took the initiative to host the team’s retro (the famous "Sprint 33").

To make it a bit special (and because Christophe and Mehdi were flying out to the US soon), I ran a "Special Edition" entirely in English. The vibe: "No pressure, no judgment, just good vibes".

Sprint 33 retrospective presentation in English

Prepping for this forced me to take off my developer hat and put on the PM one. I had to look at the metrics that actually matter: how our real velocity was calculated, and why setting actual sprint goals is vital, rather than just burning through tickets like zombies.

What I kept from it

I used to be all "Agile, Jira, processes" at work, and "YOLO let's see what happens" for my personal projects. Today, the two have merged.

The highly structured environment at Decathlon completely rewired my brain. For my current SaaS, Prospect Tracker, I work with the exact same rigor:

My Linear board for Prospect Tracker

  • Linear became my best friend: I set up sprints and lock in specific goals.
  • Solo Retros: Yeah, I run retrospectives with myself. If I miss a goal, I figure out why. If I crush it, I ask if I wasn't ambitious enough. I even leave comments on my own tickets for my future self to read.
  • ADRs (Architecture Decision Records): I picked this up from the Decathlon Design System team. Writing down why I pick a tech stack stops me from reinventing the wheel every 6 months just because of a new trend. The goal is to ship fast.

At the end of the day, two years at Decathlon teaches you how to code solid platforms. But more importantly, it teaches you that to actually make an impact, a dev has to understand the product and the organization. And that's a skill that works everywhere, even when your only user is you.

RM
Rabie MenadFreelance & Entrepreneur

I design and ship high-performance web products with React & Next.js. Let's talk about your project.

More posts