🧑🏽‍💻 My Journey

From a 12-year-old fascinated by HTML customizations to building mission-critical systems, my path to software engineering has been anything but linear. It’s a story of early curiosity, academic struggles, unexpected detours, and the persistent flame of wanting to solve problems through code.

The Spark

I was 12 when my friend Brad showed me something that changed everything: he could customize his Xanga profile with HTML, CSS, and JavaScript. Those few lines of code that made text bold or changed a background color felt like magic. I was hooked.

The Rabbit Hole

What started as curiosity about web customization quickly spiraled into an obsession with understanding how computers really worked. For the next couple of years, I devoured everything I could find about programming languages, frameworks, and the technologies that powered the internet. The challenge wasn’t just learning to code—it was figuring out how to learn and where to find reliable resources.

My first attempt at “real” programming was wonderfully naive. I wrote a “Hello, world!” program in C using Windows Notepad, saved it as main.c, and then… renamed it to main.exe. I genuinely thought that would work. When nothing happened, I spent hours trying to figure out what I was missing. That frustrating experience taught me about compilers, interpreters, and the fundamental difference between source code and executable programs.

Finding My Footing

By high school, PHP became my gateway drug to actual programming. Unlike C, I could install the interpreter, write code, and see immediate results. I built my first web server at home and started creating websites—first for fun, then for StarCraft clan communities who wanted a digital presence. These weren’t paying gigs, just trades for endorsements that led to more opportunities.

Each project pushed me further. I automated my development workflows, built IRC bots for online communities, and eventually moved beyond web development to desktop applications with Visual Basic and Delphi. Every new language and framework was another piece of the puzzle.

The Detour That Taught Me Everything

When I started college, computer science felt almost too easy. The first few semesters were a breeze—most of the introductory material I’d already taught myself during high school. I cruised through without developing real study habits, which worked fine until I hit theoretical computer science and data structures & algorithms.

These courses were different. Abstract. They required a type of rigorous thinking I wasn’t used to. For the first time in my academic life, I couldn’t just figure things out intuitively. I struggled, then failed, and almost gave up entirely on computer science.

So I switched to mechanical engineering, and honestly? I loved it. Physics, thermodynamics, understanding how the physical world works—it was all fascinating. But as I got deeper into the program, I realized the career paths didn’t excite me. HVAC systems and industrial settings felt limiting compared to the endless possibilities I’d glimpsed in programming.

Two years later, I found myself one course away from a computer science minor. My mindset was simple: might as well finish it. The class was web development, and I was paired with Juan—a classmate who became a lifelong friend. Working together on our group project, something clicked. It wasn’t just writing code; it was the entire process of taking a problem description and designing, then implementing, a complete solution.

That experience reignited everything I’d felt at 12 years old. The mechanical engineering detour taught me discipline, showed me how to work through difficult concepts, and gave me a broader perspective on problem-solving. More importantly, it made me certain that software was where I belonged.

Making It Professional

After rediscovering my passion for software development, I did what every new grad does: cold applications, university job fairs, and lots of rejection emails. One application to NCR for a summer internship led to an interview that changed everything. I must have impressed them because what started as a three-month summer position turned into part-time work through my final year of school, then a full-time offer immediately after graduation.

That 12-year-old fascination with making computers do interesting things has never left me. Today, I channel that same curiosity into building systems that solve real business problems—from automating underwriting processes to designing migration strategies for complex applications.

The tools have evolved dramatically since those early Xanga days, but the core excitement remains: there’s still nothing quite like the moment when your code does exactly what you envisioned.