All posts

· 4 min read · Architecture · Operations · Telecom

What “after launch day” means on a US telecom platform

Running a billing and MVNO platform with a team of twelve: how releases, logs, monitoring and error triage fit together.

Since 2021 our founder has been the lead architect of a US telecom platform: consolidated billing, mobile lines on the major national networks, a dealer network, customer and admin portals, mobile apps. More than twelve engineers work on it — backend, frontend, mobile and test automation.

A system like this is never finished. Carriers change their APIs, dealers find new ways to use the portal, and a failed payment at 3 a.m. is a customer without service. The build is the smaller half of the job.

What keeps it running

  • One pipeline per merge request: build, tests and review before anything reaches a shared branch.
  • A branch per environment, so what runs in production is always a known commit.
  • Structured logs in one place, searchable by customer, line or request, instead of reading files on servers.
  • Server monitoring with alerts on disk, CPU and the database before users notice.
  • Errors from production become tickets with the cause named in the code, in batches someone can actually fix.

What we learned

Most incidents were not exotic bugs. They were an integration that changed without notice, a job that silently stopped, a limit nobody had written down. The fix is boring and it works: make every external dependency visible, log the decision and not only the error, and keep one person accountable for each part of the system.

This is the way MARSO works for every client: the people who design the system are the ones who answer when it breaks.

Facing something similar?

Describe your system in a few lines. We reply with questions, not a sales deck.