Hacker News new | ask | show | jobs
by rustywicket 3041 days ago
What would you suggest to people looking to become or retrain as a developer? Because it seems this is something that's more of an issue these days than even a few years ago...
2 comments

Yes, it is much worse now because of bootcamps.

The first thing to do is ask yourself if you really want to become a programmer. Do you like programming? Have you ever tried it before? How comfortable are you with computers? You might be the go-to guy/girl for your friends and family, but are you 40 hours a week comfortable? How much time are you willing to spend debugging a confusing error message before running for help? Do you get any internal gratification from writing a computer program that runs successfully? What's going to keep you going when nothing you try works and you've been bashing your head on the same problem for a week?

The reason is that there are tons of jobs within the software industry at all salary levels that do not require coding. QAs, IT recruiters, business analysts, DB admins, designers, product owners, system administrators, etc. All these people benefit directly from the software industry and many do not know a lick of coding.

I think part of it is this sort of national illusion that everyone can become a programmer. But programming is just not for everyone. Learning to program requires a high level of diligence and self-motivation. In other words, you have to enjoy it. Not everyone is going to be inspired by "public static void main(string[] args) {}." A lot of people take one programming class and know right away it's not for them, and that's totally fine.

It really depends on the bootcamp. The sort operating locally here are such a gauntlet that the students who survive them are usually quite good, if not highly motivated.

Meanwhile I've seen university graduates with actual computer science degrees from respectable schools who can't do anything useful. They've never had enough practical experience writing actual production code.

Great point!

I suppose the demand for developers has led to some companies getting more relaxed with their interview's I know in the U.K some companies don't do any testing at all. :O

That's unfortunate. Developers who can't code have a stressful life.
Not to mention their cow-orkers.
A portfolio of recently executed ideas, however quirky, and in whatever languages, separates you from the rest.

Write code daily and push it to Github.

Well, I do. Just don't have enough time to also pursue my programming hobby in addition to a job, a family, and other hobbies. "Code on side projects daily" has become more of a goal to strive for than a reachable one.
Keep at it and evaluate every few weeks if you feel ready to throw yourself into the arena and take some interviews. You may never feel ready due to the sheer amount of languages and knowledge you think you'll be checked on, that means you need to narrow your focus and specialize in a popular stack that you personally enjoy working with to get your foot in the door.

It is absolutely reachable. A personal path for reference:

2012: Graduated college with a non-comp sci degree (although had tinkered with tech, software, linux, etc since a teen)

2012-2013: Took comp sci MOOCs.. Obsessively learned python and built throwaway projects. Took code challenges weekly.

2013-2015: Got a job as a manual test analyst. Used python to automate testing, got promoted to test lead.

2015-2017: Took a job as Lead QA Engineer. Learned C# for the job. On the side picked up React and Django/DRF for building out SPA/microservices. Began getting serious about clean projects on github and kind of branding myself as a developer (personal landing page, etc). I couldn't keep recruiters off me from my linkedin, stackoverflow and github profiles. Was like ok.. I'm ready... it's time.

2017 (mid): Studied the hell out of algorithms and data structures. Did tons of whiteboarding practice and began taking interviews. Signed up for some tech recruiting apps like hired and opened the recruiter floodgate. I had 2-3 phone interviews a day for 3 weeks. Then a few in persons per week. Not one whiteboard session. Some would send code challenges. The rest asked if I could send them a github project that we'd review during the interview.

2017 (mid)-Present: Now a Software Engineer at an established startup working with brilliant peers and some of my favorite stack.. A massive kubernetes cluster built on Python, Go, React, and ElasticSearch services.

So from 2012-2017 there were many points where I doubted I'd land that dream... and then boom! As soon as I got the balls to throw myself into some interviews for the position I wanted I found it and now I no longer feel like I have to grind away every evening to stay sharp since my job is doing that for me now.

A much more reasonable approach that I try to live by is "Commit code every week, most days of the week."

Expecting to have a commit every day when you have a full time job, family, and, you know, other stuff to do is not realistic.

Agreed and here's a word to the wise. For whatever reason, tools for other coders always make for the most impressive side projects, even if no one ever uses them.