How long did it take you to become employable?

I worked in project management and manual QA to start out (2 years), and this was without a degree in CS/CompE (unrelated BA degree).

It wasn't long until I started teaching myself programming (I wanted to automate my boring QA work). I lacked direction though. I blundered through codeacademy and codeschool.com, ruby on rails tutorials, etc. Things didn't really start making sense to me though until I read a textbook on a specific language ("The Well Grounded Rubyist"). I guess this would be equivalent to taking a CS101 or 102 course.

From the time I started teaching myself to the first paid gig I got where my main duty was to write code, I'd say it was about 1.5 years (landed a software developer internship). Right at that time I also decided to quit my PM gig and go back to school for computer engineering. I'm starting my 3rd internship in 2 weeks.

The first gig was mainly automation work. The second one involved more "real development" work (working with a RESTful webservice, doing some AngularJS work), but was still kind of basic. I however also started working on a big side project with 2 of my co-workers at the 2nd internship which helped develop my skills a lot. My upcoming internship I'll be mainly doing Angular/Java development and the tasks will be more involved than at my last 2 gigs. So it started off basic and as time went on, the work got more involved (and more interesting to me) as time went on and as I got more experience.

Since I started teaching myself to present day, It's now been about 2.5 years. Going back to school has drastically increased the speed of my learning and has opened up new opportunities for sure. For me it was the right choice, but we're all different.

So it definitely does take consistent work for a good amount of time to get to a point where you'll be useful with your skills. But don't overwhelm yourself and never compare where you are today to where someone else with a bunch of experience is. I tried too hard to learn everything at once instead of focusing on one thing in the beginning which wasted a lot of time. Just take it one step at a time and make sure you don't undervalue fundamentals. Be consistent in your studies and do what you can to apply the things that you learn.

I remember struggling so much when I first started and talking to my friend who's a software engineer about it. I was doubting myself and thinking maybe I wasn't cut out for it all. He told me "this stuff isn't magic, we all start somewhere and it all comes with time and practice". Stick it out for the long haul and work hard and good things will come your way!

/r/cscareerquestions Thread