DEV Community

Cover image for If I Were Starting Today How'd I Learn Programming And Get a Job
OnRampDev
OnRampDev

Posted on

If I Were Starting Today How'd I Learn Programming And Get a Job

A little about myself so you can decide if this post would be helpful to you...

Circa 2011 or so, I was dead broke and figured out this programming thing might be a good fit for me. I had no mentors and no connections to the industry. It looked like it paid well so I wanted in.

I bought some books and dug in. Then I started watching some videos and following tutorials. Honestly, not much of it stuck. But little by little I started to pick things up. Eventually I applied to an apprenticeship program in Chicago where I was paid to learn. It was incredible. Fast forward 11 years and I do this for a living. I'm not bad at it either. I was not particularly good at math, had only some community college exposure to programming, and lived in a city not known for being a tech hub but I managed to bootstrap enough knowledge to get an entry-level job.

This post is a reflection on my journey and how I may have shortcut my way to my current position had I known better. It's not a guaranteed way to land a job, just some pointers I wish I had 10 years ago.

Most Important Moments

With the benefit of hindsight, these are the highest leverage moments before I had a job:

  1. Working through most of Think Python
  2. Building a trivial airline reservation system in Java
  3. Discovering that apprenticeship programs existed
  4. Writing Tic Tac Toe for my job application

I would basically work backwards from this list.

  1. Find entry-level jobs in your area or remote. Better, find jobs that pay you to learn. There are programs from companies like Microsoft and Twilio that operate similar to the apprenticeship I went through. Find as many of these as you can.
  2. This is related to point 1, but join Slack groups, Discord servers, Facebook groups, and hang out on Twitter. I often see tweets in my network like "Looking for motivated junior developers". This is one way to hear about new opportunities early.
    • I'll admit this step is a little more difficult when starting out because there's a lot of spam and BS floating around but it's worth fishing for the good ones. Try to follow experienced developers or people writing about programming, rather than company accounts.
  3. Try to deeply understand what the companies from step 1 are looking for in candidates and what the application timelines are. You likely won't be ready for a while but setting some target dates will give you motivation.
  4. Build challenging projects in whatever technologies are required by those companies. If no specific technologies are required then just learn Python and start building stuff.

Summary

In a nutshell that's it. But it's easy to talk about and hard to do. The other big piece of advice I wish I could give my former self is to try to sit down and focus on one thing at a time. It's so tempting to zig-zag between tutorials and projects, hoping that there's a magic one that will be 10x better and land you a dream job tomorrow. As much as I wish it were true it doesn't happen that way. Pick a path then hunker down and do the hard work.

Hope this helps. By the way, don't forget to join my mailing list for more tips and advice like this.

P.S. This is reposted from my main site at https://onrampdev.com/ - check it out for insights.

Top comments (1)

Collapse
 
ifeanyichima profile image
Ifeanyi Chima

Really great piece.