Any software engineers willing to share their journey?

Hey guys, beginner here. I’d like to know what happened in between learning your first language and getting your job.

How did you come up with a project to build. Did you search online or did you always have something in mind?

1 Like

There are several software engineers here who have shared their stories both on the forum and through the freeCodeCamp publication.

Hey there :wave:

My story is quite long but I’ll attempt to share a condensed version here :slight_smile:

When I first decided that I was going to be a programmer I looked for tutorials on how to make simple games. I started to see YouTube videos come up showing how to make trivia games using Batch which is a scripting language on Windows systems with the main purpose to automate tasks.

It’s definitely not something you should learn but I did and I made a bunch of simple games and would keep adding to them. Gradually the complexity would go up until I hit a point where I couldn’t make changes to the code without breaking something.

What was cool about making programs with .bat files is that the company I worked for at the time provided me with a computer near my workstation so I could access SAP (I was a CNC programmer and operator at the time, and I don’t really count CNC as programming when reflecting on my career btw).

So I was able to get away with coding sometimes between cycle times since all Windows PC’s have Notepad and Batch :smiley:

But I soon moved on to searching for more game dev tutorials and stumbled on a series that showed how to create simple RPG games in Visual Basic. So I followed along and tried to take what I learned from that to create my own RPG game, eventually hitting a point where I caused a literal Stack Overflow Exception and I kid you not… that’s how I found stackoverflow.com

I kept getting stuck all of the time because my games would get too complicated and my code was too messy for me to understand. I’d make a change and things would keep breaking, I’d get frustrated and start over.

Eventually I discovered some really good game dev tutorials for XNA which was a framework for making indie games on Xbox 360. Combined with YouTube videos and a ton of amazing free courses provided by Microsoft Virtual Academy I was able to become quite proficient in C# and the XNA framework to the point where I started feeling pretty ok about my code and was able to create more complicated games without coding myself into a corner as quickly.

Of course, not knowing much about software design, or practices like TDD I still would code myself into a corner.

That’s when I started searching for resources that would teach me how to design software better and I found CS106a from Stanford which was fully available online with the entire curriculum, course materials, assignments and lectures.

It was taught using Java so I followed along the entire course and learned some Java along the way.

By the end of that I was feeling a lot more confident about some higher level concepts but was unsure about where to go next. I was still thinking that I wanted to do game dev full-time one day but didn’t think Java was the best tool for that so I went back to C# and XNA and continued building projects with that.

Once I learned that Microsoft was going to kill the XNA project I decided to pivot to Unity since it’s main language is C# and took a few courses on Udemy to ramp up. Around this time I started feeling really good about some of the games I was making and thought I was ready to pursue publishing one soon.

Then my hard drive crashed and I learned the hard way that you should always have a backup of your data :cry:

During all of this time, job security wasn’t great for me and I was jumping job to job a bit eventually landing on a job as a labourer in construction where I built electrical substations for wind and solar farms. The hours were so intense and I was working on the road so much, that eventually I wasn’t able to sustain learning on the side.

So I more or less paused my learning and briefly thought maybe I’d try to get an electrical apprenticeship instead and possibly get into programming SCADA systems or working on PLC’s which given the field and the company I was in, were definitely possible career paths for me.

Eventually due to company restructuring I was let go and found myself unemployed again and had a lot more time on my hands. Just sort of naturally I found myself getting back into coding for fun and realized that this is absolutely what I want to do and needed to figure out how to make it happen.

At this time the free education space for coding had really exploded and there were sites like https://www.khanacademy.org/ and https://www.codecademy.com/. This was 2015 and it had been a little over 3 years at this point since I had started teaching myself to code.

This time around I was thinking maybe web would be an easier entry point for me so I was taking a lot of web courses on KA and codecademy and eventually later that same year would find freecodecamp.com!

I also discovered https://www.uopeople.edu, enrolled, and started pursuing a CS degree online. By the time I was at UoPeople I had already started maintaining a blog to try and level up on the web side of things but also was still messing around with game dev and had the idea that maybe if I started publishing my own mobile games I could generate enough of a side income to get by on a part-time job while I continued to pursue my passion to be a career programmer.

Luckily I met someone at UoPeople who talked me into keeping focused on web which was amazing advice and he helped mentor me through learning the MEAN stack all the while I was still very active on Khan Acdemy.

Through a stroke of luck, after about 4 years of self-learning a few months studying CS online, I got an email from one of the course creators working at Khan Acdemy at the time that said something along the lines of “Hey! You’re really helpful in the forums here. Are you interested in a paid gig here? It’s contract and fully remote.”

And I of course was like “HECK YES!!!”. There was a fairly short interview along with a couple code challenges and I landed the contract!

Since it was only part-time and contract based, I was still looking for full-time employment while still continuing my CS studies and continuing to learn web and programming outside work and my studies.

Eventually through the local freeCodeCamp meetup in my area I would be notified of a position opening up at a local web agency before the job posting even went up so I was able to get my resume in before there were any applicants and ended up getting the job!

So for a short while I was still studying CS online, working part-time at Khan Academy and working as an full-time employee for this web agency (https://reddingdesigns.com/).

Eventually I would transition into working for Redding only and my contract with KA would end and that’s basically the point that I consider to be the true start to my career.

And yeah… that’s the condensed version lol!

Cheers,

Dan

1 Like

Hi @grimmhue !

Welcome to the forum!

I wrote about my whole journey here and how I came up with a project to build.

Good luck on your journey! :slight_smile:

1 Like

It’s great to read your story! Very inspiring. It’s incredible you were able to start your new career so quickly. You absolutely deserve to be where you are today!

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.