I am not a traditional CS undergrad. People often ask me how I ended up in a CS PhD program, so I figured it was time to write it all down. Partly to share the long story, and partly to remind myself exactly where I started. Grab a seat! :]
I actually got my start with a civil engineering degree from the University of Nottingham Malaysia. Back then, my research involved physically casting structural concrete beams, reinforcing them externally, and then destroying them in the lab. Good times.
guess who the Prof is!
Then COVID-19 hit. The labs shut down, physical experiments were put on indefinite hold, and I had to pivot my final year project (FYP). I shifted to using finite element analysis software to model soil slopes. To make sense of the data, I taught myself Python using MIT OCW, writing scripts to extract and analyze the results. It worked so well that my supervisor actually excerpted my FYP and got it published. That was my first real taste of computational research.
Why I Left Civil Engineering Research
So why didn't I stick with civil engineering? Honestly, while I loved the research process itself, it felt disconnected from industry reality—it lacked grounding. Building physical experiments is hard, expensive, and intensely labor intensive. Plus, even when you invent something groundbreaking, the construction industry has a deeply risk averse culture. Adopting new materials or methods is a massive liability. I realized I wanted my research to actually be applied, not just sit in a journal.
I decided to enter the workforce instead. Between the grueling construction sites and the design office, I chose the latter. When you are in the industry, you become hyper-aware of every single construction disaster, like a crane collapsing, thanks to the Baader-Meinhof phenomenon. Honestly, until we have autonomous robots out there doing the heavy and dangerous lifting, I am keeping my distance. Or, you know, maybe I just fiercely wanted to protect my Saturdays from overtime :P
I started out as a geotechnical engineer, but it didn't take long to realize I loved the R&D aspects way more than my actual day job. I started writing Excel VBA scripts to automate workflows, getting a total rush out of the idea that code could make everyone's life easier. The real turning point came when I was handed the ultimate soul-crushing task of manually entering data from thousands of pages of scanned soil tests. I knew a digital version had to exist somewhere, but my seniors just wanted me to type it all out by hand.
Nope. Computer vision was booming at the time, and I had been seeing all these cool projects online. So I leaned on the Python skills I had picked up, taught myself OpenCV and PyTesseract, and built an OCR tool. This was before ChatGPT 3.5, so there was no LLM around to magically debug my code! It wasn't the most elegant piece of software, but it worked. Experiencing the sheer leverage of computation was intoxicating. Coding felt approachable, rewarding, and incredibly powerful. Driven by this newfound passion, I decided to pivot entirely into tech and enrolled in the MCIT online program.
Finding My Place in CS
During the MCIT program, I crossed paths with my current advisor, Prof. Boon Thau Loo. Knowing I already had a bug for research from my civil engineering and geotechnical days, I wanted to see what CS research looked like in practice. He gave me an incredible opportunity to collaborate with his students on an LLM serving project. Working on inference multiplexing completely solidified my drive to pursue computer science research long term.
Having stood on both sides, here is my takeaway on why CS research is different:
You are the ultimate builder: When people doubt if your new technique works, you don't need to pour concrete. You just compile and run the code. It is infinitely easier to prove your work, iterate, and put it into production.
The fruit isn't just low hanging, the whole tree is growing: In civil engineering, no matter how complex your analysis is, the industry defaults to rebar, concrete, and steel. In computer science, hardware is constantly evolving, unlocking use cases that were literally impossible a few years ago. There are endless new workloads, fresh challenges, and high impact problems just waiting to be solved.
And that brings me here, admitted into the UPenn CIS PhD program. This is my journey from Infrastructure (The Concrete Kind) to Infrastructure (The Cloud Kind), and it has just started.