Switching Careers and Becoming a Programmer
Maybe you're just thinking about switching careers to pursue programming, or maybe you have already made the leap and are early on enough in your career that you are still wondering about the wisdom of such a leap.
This post is part-reflection, part-unsolicited-advice. It's stuff that has been more or less true for me on most days, but as always, your mileage may vary.
Why? #
If you're reading this you likely already have your own 'why' for considering a career change.
For me, I had been teaching for over a decade, wanted some new challenges, and also wanted to leave some of the less enjoyable parts of education behind me.
Maybe you're chasing more autonomy, more creativity, more money, more fun, more offices with frequent kitty and doggy visitors...they are all valid reasons. Don't let anyone put you off because they wouldn't switch careers for the same reasons as you.
Things to consider #
While your reasons for the switch are valid no matter what they are, the reality of the job should be interrogated carefully to see if it matches your expectations and dreams.
If you can, chat with someone you know or can reach out to online to get the low-down on the things that matter to you.
This can be tricky, especially if it's a cold approach.
Get along to meet-ups if you want a warm lead on people you can talk to about the industry. If you must, reach out online, but keep your message short, polite, and include a line that says something like 'absolutely no response is required from you if you don't have time.'
I have met with people that have contacted me out of the blue in the past, so it's not entirely uncommon, just remember to honour the other person's time.
What you could lose #
Money! #
I won't beat around the bush with this one. Switching careers can lead to a significant pay cut, depending on your previous career. Money isn't the only consideration, of course, but you do need to have your eyes open in this regard.
For a concrete example, I had been working in education long enough that I was at the top of the pay scale for a secondary classroom teacher, and I had also held positions of responsibility that came with their own pay bumps. As a result, as a teacher in Melbourne, Australia, I can make a six-figure salary.
When I started my new career as a web developer, I immediately took more than a 40% pay cut.
To be honest, I still ask myself about every three weeks or so whether it's worth it. I'm paid a little more now, but I'd still make a lot more money in the classroom, even without additional responsibilities.
Prestige #
Another thing you can lose is your level of expertise in your previous domain.
I hadn't given this much thought prior to switching, but one of the things I miss (which is almost certainly ego-driven), is being the most qualified person speaking on a subject.
In teaching, I wasn't always the best, whatever you might mean by that, but I had enough expertise that oftentimes I would be the most experienced person in the room, leading discussions, shaping policies, and having people look to me to make the final decisions on things that were deemed to matter.
Now I am usually the least experienced developer in the room (professionally speaking, at least). It's not without its own advantages, but if you like the way you are currently viewed by your existing colleagues due to your hard-earned expertise, you might not like the change after you switch.
What you might gain #
It's not all doom and gloom, obviously. I love being a web developer for many reasons.
Flexibility #
As a teacher, my obligations were tied strictly to the school timetable. Holidays had to be taken within a set time -- always the most expensive time for travel, I might add. The day absolutely had to begin on the bell. The day absolutely could not end until the kids were gone, the last yard duties were staffed and whatever meetings scheduled had happened.
It's extremely inconvenient to need to go to the toilet during class time. Don't underestimate that one.
Obviously, remote work is a complete pipe-dream: the kids are all in a room, and you are also required to be in that room. Technology has come a long way, but not long enough for remote teaching to be the norm yet.
Part-time work is very hard to set up, because you get locked in to the requirements of whichever classes you end up with; part-time days off are extremely rare, since you likely always have at least one scheduled class to teach every day.
As a parent to a 2-year-old and a 5-year-old, that degree of rigidity makes teaching an almost impossible endeavour if you intend to work full time and have a partner that also teaches full time.
As a web developer, I can work pretty much whatever hours I please. It suits me to arrive early and leave early so I can handle the kids' child-care drop-offs and pick-ups. If a kid is sick, I can work from home without burning up my leave. If I'm sick enough that I could infect my colleagues, but well enough to work, again, I can stay home and not feel guilty about making everyone else sick.
I also needed to go part-time to better look after the kids,and that was possible, too. Currently, I'm working 2 days, and at home parenting 3 days a week. That particular set-up would be basically impossible as a teacher.
Fun #
There were long, arduous parts of my teaching workload that I did not enjoy. There is nothing comparable in my web development job. Sometimes getting stuck on a bug can be frustrating, but I am yet to find it boring. I can honestly say I can spend 40 hours a week coding and still look forward to another 40 hours when the next Monday rolls around. It's probably not for everyone, but it suits my temperament to a tee.
Finding your people #
Maybe your new workplace will have a much higher percentage of nerds, and just maybe that is wonderful!
So is it worth it? #
Only you can decide. If you do decide to make the switch to a programming career after any amount of time doing something else, read the next week's post from me which will offer more practical advice about hitting the ground running as an early career developer.