How I Landed my First Job as a Software Engineer at Age 14

hudbeard
6 min readJun 20, 2024

--

Getting a 9–5 and real world experience before I could drive.

Photo by Peter Nguyen on Unsplash

Background

I have always been fascinated by technology. For as long as I can remember, I have wanted to use technology to make the world a better place. My coding journey started in 2nd grade. You see, in 2nd grade I picked up a magazine that changed my life. It was just your ordinary book catalog, the kind every school sends home, but this specific magazine had listed in its pages a book I will never forget. This one right here:

This book taught how to build websites using HTML and CSS. I remember thinking I could finally start using technology to build things, things that would change the world. Now, arguably HTML and CSS are not the best starter languages, but I did not know that at the time. All 8-year-old me knew was websites were cool and building websites would be even cooler. So I got to work. I downloaded my first IDE, built my first (local) website, and walked out not learning a thing. All I did was follow the book to the letter. Most of the information was above my 2nd grade mind, and thus I did not get most of it. This led to me trying a series of other languages, which looked like this:

  • HTML, CSS
  • Java
  • JavaScript
  • Python

I learned a little bit from each, but nothing really stuck, until I found Python. Python was the perfect mix of simplicity, flexibility, and power. It was an easier language to learn, without losing too much functionality. I bought book after book, wrote script after script, and over the course of 5 years finally reached a point where I was fluent.

I no longer had to think of the code I was writing, I just needed to think of what the code would do and it would write itself.

I did all of this in my free time, when I was not at school.

The Interview

As time progressed my dad started to notice my skill and he wanted to test my abilities. My dad mentioned me to the lead software engineer of the company he worked for. He asked if there was some sort of test I could take to see how good I really was. The lead software engineer sent me their onboarding interview question that every hired developer had taken. He sent both the question and the answer to me to see what would happen. This is the question and answer:

In addition, I was given the math proofs that explained the solution. All I had to do was show that 15 mins was the best answer. This question was unlike anything I had ever seen in my time coding. I was self-taught, but I had never used platforms like LeetCode or anything similar. I never looked up algorithms, I just came up with them on my own.

Feel free to read this article about my view on programming with Google

I had not even used an IDE for Python. I had been using the IDLE shell that shipped with Python for 4 years! There was no spell-check, no text prediction, or no warnings. I was a human code compiler.

The solution they sent required years of math knowledge that I did not have. So, I spent the next couple of days mulling over the problem, like I always did. Trying things here, other things there, until it hit me! I could run through every possible order of crossing, taking the minimum at the end.

For those of you thinking that this is a stupidly inefficient method to solve this problem, I agree. I was 14 years old and messing around on IDLE.

Eventually I did it. I could run through every combination in under five seconds and get the correct answer. Shocked, my dad told the lead software engineer what I had done. He organized a meeting with me the next day. I showed up with my laptop in hand ready to show them my solution. We gathered in a small office with about 4 or 5 other developers and the first thing they said to me was, “Your dad told us that you solved the interview problem. How did you figure out the college level math?” I said, “Math? I found a way to do it without math!” To which I presented my solution. They hired me on the spot.

Aftermath

I worked for them the rest of the summer as an intern. (As a 7th grader, school was my full time job so I was limited to a summer internship.) I built them a website and mobile app that they still use to this day. I also spent my time correcting code written by a former college intern and attending meetings. That internship was the single greatest thing that ever happened to my coding abilities. Not only did I need to write code that worked, but it needed to be efficient and readable. It has transformed the way I code today! My increased proficiency in Python also led me to better learning all of the other languages that I had previously tried!

Takeaways

After everything was said and done, there were 3 major lessons that I learned:

1. You Always Can Learn More

It is common to use the same language for years and feel that you have nothing else to learn. It is so easy to slip into this mindset, but I promise no matter where you are at, there is always something more for you to learn. It could be a new syntax, library, or even just a different project you are working on. To this day, I try to learn something new about programming every week. The most important thing is staying humble, admitting you are human, and always pursuing knowledge.

2. Use the Opportunities Around You.

My story is unique in the fact that the job found me, and not the other way around. This may not be the case for you but that does not mean that you are not good enough. Apply for a job, do LeetCode, or find something to test how good you really are. Get an accurate view of yourself and move forward from there. If an opportunity comes along, take it.

3. Age is not an Obstacle, It’s an Opportunity

To the young, I say starting at such a young age is hard. You cannot really make money on the internet until you are 18 years old, so money will almost never be a motivator. Until then your biggest motivator is learning for learning’s sake, and building for building’s sake.

To the old, it is never too late to start, or keep learning. Money will be a motivator, but try not to make it your sole motivator. Learn to be better, and how to better learn.

Ways to support hudbeard’s writing:

  • 👏 Clap 20x if you enjoyed this article!
  • 💡 You can clap 20x in one long press!
  • 🗨️ Comment your thoughts. Tell me if you have similar stories!
  • 👀 Follow me to see more content like this!
  • 📧 Subscribe to get my articles as emails!

Thanks for reading! Happy Coding!

More like this by hudbeard:

--

--

hudbeard
hudbeard

Written by hudbeard

Professional software engineer since age 14. Programming since age 6. Python is my love language. 🐍

Responses (3)