How old is too old to jump into software development?
Hello HN, I am tech hobbyist and a long time lurker here. In my free time I did lots of projects like games, arduino based appliances, even freelanced a little bit. Problem is that I do not have any official experience that I can put on my CV and my job is unrelated to tech (employed in medical field).
I am interested in switching to tech career, but afraid that it is very unlikely at my age (34). There are many similar questions on HN, stackoverflow and quora but most answers are about learning to code rather than career and bread-winning side of it, so lets want to clear this up now, I code C, C++, Python, JS, Rust, Java and stay in touch with latest trends but have no official qualification to prove this. Decided to switch to coding for mainly for challenge and ability to work from home and spend more time with family, want to hear from field experts.
42 comments
[ 2.6 ms ] story [ 92.9 ms ] threadHow? Well, there are many ways, but in your position... what is your position? What do you currently do? In your current position, are there programming jobs you can take on, kind of around the edges of your current work? Or, are there programming teams/projects where you could apprentice? The easiest way to break into it is not "Hi, I'm some random guy who has some hobby experience, will you hire me?" The easiest way is "I didn't have the title, but here is the value I delivered at my current job."
The key difference between hobbyist and professional web development, in my opinion, is not so much programming knowledge but rather knowing the tooling that surrounds a project (git in particular, testing rigs, etc) and learning to work as part of a team (how to estimate work, what to do when you blow up the git repo, etc).
On qualifications - there's companies out there that insist on some sort of qualification before they'll go further than your CV. There's other companies that care nothing about such paperwork, but want to hire people who are good at solving problems and eager to learn (quickly!) from colleagues about all the stuff needed to do the job beyond the code base itself.
PS: don't leave the career change too long - ageism does, sadly, exist in the tech industry. It took me over 800 applications to land that first gig!
For me, the biggest shock was transitioning from ownership of the project into being an insignificant cog in a Scrum machine. It took me a couple of years to learn to not be very frustrated by it.
Credentialing for software development is much easier than fields like law or medicine, so as long as you can prove you can code well there will be plenty of opportunities open to you. Showing an open source project contribution or getting some certification might be a good start.
PubMed might be a good place to research this. I believe believe diet and pyshical exercise are widely known to promote brain health. There are other things like mental exercises or nootropics studied too.
Do you have a degree in analytical subject? Some form of engineering or hard science (I presume you don't have a CS degree).
Do you have a portfolio of work that can demonstrate your ability?
Have you contributed significantly to a reasonably large open source project? Better yet, are you a maintainer of such?
If you can answer yes to some or all of these, it will demonstrate that you have a certain intellectual ability and staying power; that you have demonstrable competence in programming and that you understand and are familiar with SDLCs and working in a development team. It will still likely take some effort in applications, you are still a risk, but you should stand a reasonable chance of landing a job.
If you can't answer yes to some of them then I'd argue struggle, as a recruiter, to see what's in it for me.
At 40+ I chose to change careers. Did some self study + a bootcamp and I have done it professionally for a number of years now.
And a plenty of 30+ cases.
Btw, “spend time with family at home” is not the best primary motivation for the job.
It’s demanding and requires a lot of mental energy, for some developers WFH is quite challenging.
The downside is you don't really shut off. A problem may take days or weeks of thinking to solve. You might be home but still spaced out, thinking of work, and I doubt everyone on HN browses tech stuff only during work hours.
What I meant was “if you want to build a great carrier”
Building someone else's ideas/projects is not like building hobby projects. You have no directional control over the product, especially when you are more junior.
I had a few things going for me that made it possible.
I'd done a considerable amount of CS in college. (I just didn't think I could be a programmer at the time, so didn't pursue it further)
I started doing technical work for family on the dropshipping website that they acquired to try to augment their primary business. This was important in that I had real problems to solve, and not just toy problems that tutorials often cover. It also gave me something to put on my resume. Though this almost backfired when the HR background check found out it was a family business.
At the time, the arms race for hiring devs wasn't as bad as it is today. Spending 1-2 hours a day for a couple of months on "Coding Interviews Exposed" made it easier to pass interviews in the 2000s than it would now, where the same amount of time on leetcode probably won't make you stand out in the same way.
I also transitioned in the months prior to a huge market crash. So demand was really high for talent, which made getting the job easier.
I got a little lucky with an interview (all interviews require a certain amount of luck). I managed to be the first candidate to correct the hiring manager about the big-O runtime of the whiteboard coding problem in all the years he'd been asking it. So I think he was a big proponent in overcoming some of the HR hurdles I might have otherwise had.
I was working on a personal project (a real-time poker bot) that I wanted to talk about, and that other programmers found interesting to hear about, that was considerably challenging on multiple levels. It gave me something to really talk about during an interview, and allowed me to show how I dealt with pitfalls and how I persevered despite them. Also how I dealt with real world messiness in a code base.
I had savings and such a low cost of living that I could focus on learning as much as necessary to make the transition without having to worry about income.
I say all this not to discourage you, but to maybe give some idea about switching strategies. You are not too old to switch. But know that there is a lot knowledge you'll need, and you can expect to spend a lot of energy learning. If you're staying abreast of latest trends you're doing better than many who are already in the industry. Being able to demonstrate this in an interview is probably more important than any resume bullet point. Common advice for resumes in other industries is to use a functional resume to highlight the skills relevant to the job posting. I'm not sure how well they work in tech, but I can tell you from when I was hiring, a short resume that screams I use your tech got my attention better than a 10 page resume with the same techs buried in previous job bullet points.
I think if I was in the position I was when I made my transition, my strategy would be the same, the only thing I think would make it harder today is more family obligations, and the current state of the world. Target your studying based on job postings you find interesting. Spend at least 1 hour a day on directed studying towards those posting (which is distinctly different than how a lot of people dabble in a new topic). Spend time finding lesser projects to work on, freelancing and personal projects are definitely things you can highlight on a resume, and will give you things to talk about in an interview. Then bide your time until market forces improve. It may be another 12 months before demand starts to outstrip current supply of unemployed devs again, it will be considerably easier to transition then. Also, eventually, with enough effort towards job searching, and refining your resume/interviewing, eventually you will click with a hiring manager that will go to bat for you.
Not having corresponding CV entries is generally only a problem for non-tech employers. Document your hobby projects and put them where they can be examined (I don't just mean "put the source on GitHub" as that isn't always the best choice, you have other options like giving a presentation and posting the video and slides, or writing a blog post).
Unofficial experience is still experience.
> I am interested in switching to tech career, but afraid that it is very unlikely at my age (34).
There are some sub-sectors where ageism is worse than others, or where the entry level positions are physically punishing (gaming, for example, where every project seems to be a Death March), but I think you'll find that there are many opportunities available to you.
> There are many similar questions on HN, stackoverflow and quora but most answers are about learning to code rather than career and bread-winning side of it, so lets want to clear this up now, I code C, C++, Python, JS, Rust, Java and stay in touch with latest trends but have no official qualification to prove this. Decided to switch to coding for mainly for challenge and ability to work from home and spend more time with family, want to hear from field experts.
Well. I think you may be overestimating the benefits of WFH, it can be tough to maintain boundaries. Not having a commute saves time, but being interrupted casually can eat into your productivity a lot. Conversely, you're at risk for working longer hours out of guilt that you didn't get enough done.
Anyway, I recommend having a designated home office with a door that closes, and invest in a very good chair. Also figure out in advance what your solution is going to be if your home power/internet fails.
Anyway, more specific advice will probably depend on the type of position you're looking for (full-time, part-time, independent contractor, consultant, etc.), sector (public, private, NGO), and industry.
Now that said, you might well need to look for unusual companies, but this is honestly not that hard. When I decided to go work for others (after 10 years freelancing), I applied literally to about 140 places on stack overflow careers, knowing that the vast majority were going to see "self-taught Canadian who only wants to work remotely half time" and throw it in the bin. But I only needed 1, and it was no problem finding that within a week and a half. I treated it like a sales gig: 20 applications a day for a bit over a week and I had interviews.
My tips for you as an adult: Be clear about what your value proposition is and what your constraints are, get your hobby work in a format you can show and be ready to talk about, and then fire out a boatload of applications clearing stating your position, regardless of what the job ad says. There are lots of small companies out there who would love a responsible, experienced-in-life adult as a part time junior coder, and very frequently the "needs" on the job add are bendable. It's really a numbers game of finding the place for whom your constraints are a good match with their needs. I was totally self taught, started at age 30 after only hobby hacking, and now 16 years later, I'm able to work part-time, from home, and earn a very comfortable salary.
Second, like any other white collar job, your earning potential is heavily backloaded. An early career software developer doesn't really make a lot of money. Even assuming that you are good, you well be well into your forties before you start making the big bucks. In the meantime, you'll be earning significantly less than your peers.
Third, you could really screw up your WLB if you don't choose your employer right. People with non-traditional background often end up in terrible companies which use developers as expendable labor in stead of investing in their growth.
I highly recommend that you explore opportunities in software development, but be aware of the challenges.
I assess tech companies getting purchased, and have done 50 in the last two years. I'd say over 90% say it's really hard to hire and/or hang on to talent. It is absolutely a seller's market.
At 36 I became a full-time (career/paid) fire fighter paramedic. At 40 I started my master's in C.S. and finished at 45.
A few weeks shy of my 50th birthday I left the fire service and now work full time as a software developer.
You're right in thinking that your lack of experience is going to be an obstacle, but it's not an insurmountable one.
Everyone tells you to have a GitHub profile with portfolio projects and this helped, but most recruiters for entry-level positions didn't know enough about tech to evaluate a project in a portfolio. They only speak "years of experience". The only way you get past that is getting lucky enough to have somebody who knows what they're talking about read your resume, which is what happened to me. I was 36, father of two starting in a brand new industry and it's awesome.
The great thing is that once you're in, you're in. And being on the older side for the industry is actually an asset. I'm right in the sweet spot where I'm young enough to not cringe too hard when my company names all development teams after video game characters, but old enough to add a little gravitas behind my opinions.
You'll have challenges, but you'll adapt and get through it.
I'm nearing 50 and plan to "retire" and get into some sort of professional programming work in my mid-50s.
2. You already are a software developer; you're just not paid to do it.
3. You do have experience (projects, a little freelancing)
4. Find ways to show your experience to potential employers or potential clients. Write up your projects. Put them on a web site and a resume. Don't be shy about it.
5. To improve your chances of success, consider finding ways to leverage your experience/knowledge in the medical field to get developer work.