back home

The Long Version

By age 9 I was running a small operation, burning modded game CDs and selling them at school so I could afford snacks. By 12 I was running game servers for thousands of players. By 19 I was doing university and full-time work simultaneously because someone had to pay tuition. Now I'm building tools I wish existed and shipping them to real users.

Ever since I got my first computer when I was around 5, I've spent most of my time playing video games. GTA, NFS, Barn Buddy consumed most of my childhood, but somewhere along the way I stopped just playing and started wondering how everything actually worked. I'd download mods, try to figure out how they changed the game, and eventually got decent at putting together my own modpacks. That small operation I mentioned? Yeah, I was a fat kid who needed snack money.

This curiosity about how things worked under the hood kept growing. At some point I decided I wanted to try this thing called Linux that I'd heard about online. I managed to get Ubuntu 10.04 installed, felt like a proper hacker for about five minutes, and then I realized I had done a full disk format that wiped every single photo my parents had collected over the years. They weren't happy about that one. But that's kind of how I've always learned, just getting my hands on things and breaking them until I understand how they work.

As I got older I moved on to multiplayer games like Age of Empires and Call of Duty 4. What fascinated me wasn't just playing them but understanding how the netcode worked. How everything stayed perfectly synced across players even though these games were made years ago on way less sophisticated infrastructure. The local COD4 servers in my region kept going offline because people would DDoS them constantly, and I figured if they can run servers, why can't I? Only problem was I didn't have any money. So I asked the people I played with for help. Most of them were older guys with actual jobs, and they pooled together enough to get me a 5 dollar a month DigitalOcean server.

I spent the next few weeks trying to figure out how to actually host a game server, following tutorials from sketchy forums that were probably outdated by the time I found them. Eventually I got something working. My servers got hit by DDoS attacks too at first, but instead of just accepting it I started learning how these attacks actually worked. Turned out most of the attackers were just script kiddies plugging IP addresses into free stress testing websites, which meant all the traffic was coming from single sources. Once I understood that, I put Cloudflare in front of the website and set up fail2ban to automatically block UDP floods. Nothing fancy, but it worked. While other servers in the region kept going down, mine stayed up, so people started asking if I could host servers for them too.

Over time our clan's public server grew and served a lot of players. People kept asking me to set up servers for them, and I'm the type of person who would rather spend 10 hours automating a 10-minute task than do the same thing twice. So I built a small web app with Django that would auto-provision servers (looking back, this was basically a textbook remote code execution vulnerability waiting to happen, but I didn't know any better). I even dug into the IW engine code to make the servers run smoother. At some point I even found a SQL injection vulnerability in B3, one of the popular open source COD4 server management tools, and submitted a fix for it. Since I didn't have a bank account (I was around 12 or 13 at this point), I just asked people to pay me in Riot Points so I could buy League of Legends skins. I had absolutely no concept of how money worked back then, which in hindsight explains a lot.

Around this same time robotics competitions started popping up all over Sri Lanka. They began with simple line following challenges but each year they got more complicated, going from maze solving to picking up and moving objects. Most people were using IR sensors and just kept hacking more edge cases on top to handle whatever new challenge came up. I started the same way, messing around with Arduinos and IR sensors, trying different configurations. Probably burned through more than 10 Arduino chips during this period and shocked myself more times than I can count. Eventually I got tired of dealing with all the edge cases and wanted to try something different. I got a Raspberry Pi, stuck a cheap webcam on top of the robot, and wrote a simple simulation that could generate thousands of random mazes. Then I trained a very basic machine learning classifier that would look at the camera feed and decide whether to go left or right. After enough training it could solve mazes and even pick up small objects using a robotic arm I'd cobbled together from cheap servo motors. It was extremely slow compared to the IR sensor robots and not particularly accurate, but I was happy with it. Winning was never really the goal. I just wanted to see if I could make it work.

After finishing school I had to figure out what to do next, which turned out to be more complicated than I expected. Government unis in Sri Lanka took around 6 years to graduate back then, which felt like an eternity. Private unis were more expensive and had less reputation but you could finish in under 4 years. I didn't really know which path made sense, so I started asking around, talking to anyone in tech who would give me the time of day. One of them happened to run a startup, and after I told him about the server hosting and all the random stuff I'd built over the years, he offered to let me help design their cloud infrastructure. Looking back it was a lot of trust to put in someone who had literally just finished school, but I think he could tell I'd figure things out the same way I always had.

My parents weren't rich, so the job wasn't just about getting experience. It was how I paid for uni. I ended up doing both full time, which sounds insane when I say it out loud, but that's just how it worked out. I'd be sitting in lectures with my laptop open working on infrastructure stuff, constantly trying to balance deadlines from both sides. Lots of sleepless nights living off kotthu. It was exhausting and I definitely wouldn't recommend it, but I learned to manage my time in ways I never would have otherwise. By the time my official placement year came around, I wasn't really an intern anymore. I was just a regular engineer doing regular engineer things (except younger and more sleep deprived).

Uni wasn't just about the job though. I went to way too many hackathons, probably more than was healthy for my grades. But that's where I met most of my friends and built some of the coolest things I've ever worked on. There's something about staying up all night with a group of people, running on energy drinks and desperation, trying to make something work before the deadline that bonds you in a weird way. I genuinely learned more from those sleepless weekends than from a lot of my actual coursework.

Somewhere in the middle of all this chaos I applied to Google Summer of Code and got in with SUSE. They paired me with an engineer who mentored me through building a Kubernetes operator from scratch. It was the first time I'd worked with someone at that level who actually took the time to explain how open source projects work from the inside. The things he taught me about writing operators and thinking about distributed systems stuck with me long after the program ended.

For my final year thesis I wanted to do something that combined distributed systems and AI, specifically trying to figure out if you could automatically detect what went wrong when things fail in complex systems. While researching how to collect the data I needed without instrumenting every application, I stumbled onto eBPF and it genuinely seemed like magic. You could hook into the kernel and observe everything happening on a system without touching the application code at all. I ended up building a system that used eBPF to collect telemetry data and then used machine learning to help find the root cause of failures. As part of the research we had to get feedback from industry experts to validate the approach. One of the people I showed it to happened to be a solutions architect at WSO2. I just wanted honest feedback on whether what I'd built actually made sense. He asked if he could refer me internally.

WSO2 had been on my radar since I was 17. In Sri Lanka it's kind of like Google, the place where a lot of strong engineers end up. I remember looking at their careers page back in school thinking that's where I'd learn to build at scale. So when that referral actually turned into an offer, before I'd even finished my final year, it felt like everything was clicking into place.

Now I work on Choreo, an internal developer platform that helps developers and platform engineers do their jobs without getting buried in infrastructure complexity. I get to work on the kind of problems I used to read about online and wonder how people even approached them. But I'm not done building.

Outside of work, I'm shipping products people actually use. Enki started as a bookmarking tool I built for myself and now has 1,200+ users. TopPics is on the Chrome Web Store helping people clean up their Google Photos. And Forge is my biggest bet yet, a batteries-included framework for shipping SaaS without drowning in infrastructure. Auth, jobs, workflows, observability, all out of the box. The same instinct that had me automating game server provisioning at 12 is still there. I see a problem, I build a solution, I ship it.

About Isala Piyarisi

Builder and platform engineer with a track record of shipping products from scratch and seeing them through to scale. Works across the full stack from kernel to user interface.

AI & Machine Learning

Builds AI infrastructure and local-first AI systems. Experience with PyTorch, ML pipelines, RAG architectures, vector databases, and GPU orchestration. Created Tera, a local-first AI assistant built with Rust. Passionate about privacy-preserving AI that runs on-device.

Technical Range

Work spans: AI Infrastructure (local LLMs, ML pipelines, RAG, PyTorch), Platform Engineering (Kubernetes, observability, service mesh, GPU orchestration), and Systems (eBPF, Rust, Go, Linux internals).

Founder Mindset

Founded and ran a gaming community for 6 years, building infrastructure that served thousands of users. Built observability tools now used by developers daily. Approaches problems end-to-end, from design to production to on-call. Prefers building solutions over talking about them.

Current Work

Senior Software Engineer at WSO2, building Choreo developer platform. Architected eBPF-powered observability processing 500GB/day. Led Cilium CNI migration on 10,000+ pod cluster. Speaker at Conf42, KCD, and cloud-native events.