home / writing / mentorship

From zero to 5G — my Magma mentorship experience

A few weeks ago I had never touched a mobile core network. I didn't know what an EPC was, what AGW stood for, or why anyone would run a 4G stack on their laptop. Today I've deployed one, fixed a production bug in it, and submitted a PR that's now part of the codebase. Here's how that happened.

## what is Magma?

Magma is a Linux Foundation Networking project — an open-source mobile core network platform that lets you deploy 4G and 5G infrastructure without expensive proprietary hardware. Think of it as the software that sits between your phone and the internet when you're on a cellular network.

I joined as a mentee with basically zero knowledge of telecom. What followed was one of the most intense technical learning experiences I've had.

## what I actually did

### deploying the 4G/5G stack

The first challenge was just getting the thing running. Magma's Access Gateway (AGW) runs inside Docker containers, and the setup involves coordinating a lot of moving parts — orchestration, subscriber databases, the gateway itself. Getting through that process from scratch forced me to understand what each component actually does.

### finding the Ubuntu 24.04 breakage

Once the environment was running, I started auditing the Dockerfiles. The project had accumulated dependencies that silently broke on newer Ubuntu. Specifically:

These aren't the kind of errors that scream at you. You have to actually look at what the Dockerfile is requesting and check whether it still exists in the target OS.

### the fix: 14 files, one PR

The fix wasn't just swapping package names. It involved:

The CI matrix strategy means future contributors will catch OS-specific breakage before it ships. That felt meaningful — not just fixing something, but making it harder to break again.

## what surprised me

The biggest surprise was how much of open-source maintenance is just archaeology. Code accumulates assumptions — about the OS, about what packages exist, about what version of Python is installed. Nobody documents these assumptions because at the time they were obvious. Finding and fixing them requires reading carefully and thinking about what the code expects, not just what it does.

The second surprise was how approachable it all was once I started. Telecom infrastructure sounds intimidating. But it's just software, running in containers, with logs you can read.

## what I'm doing next

Continuing to contribute to Magma while going deeper on the ML side — agentic AI frameworks, reading research papers, and building projects that connect both worlds. Writing about all of it here.

## Mentorship program -Graduated

Finally after all this learnings and the contributions my Linux Magma Mentorship for the spring of 2026 was over. I received the badge of completion of the project as a mentee.The credentials and the Badge is here https://www.credly.com/badges/adad8227-2748-4473-8297-faa8493f1704/public_url Grateful for the help i received during the mentrship ! On to the next one

← all posts karthik unnikrishnan · 2025