Show me how to re-skill as a programmer
October 4, 2017 12:22 PM   Subscribe

I am a female in my late thirties who has a number of opportunities to change career and become a programmer. Can the hive mind show me the best way to do this? Snowflakes inside.

So I am a female PR professional who has always worked in the corporate technology space. I have been working in this industry ever since I was 19, but never in the "hands-on", practitioner side of things. I am now 38 and feel the need to reinvent myself, do something exciting and get involved in projects that will challenge me - I have become way too jaded in PR and things have become very dull at work.

I happen to be connected to a lot of people doing "coding bootcamps" and immersive programs that promise to, for example, turn an absolute beginner into a full stack developer.

But before I join any of these courses, I have a few questions....

RE-SKILLING PROCESS: How realistic is this career shift in terms of what I will be able to achieve skills-wise in the short-medium term? Also, being someone who doesn't like math all that much, what are the possible avenues for me as a programmer? What would be the most sought-after, "hot" skills in the market that I can learn within the next 18 months or so?

FINDING WORK: Once I am confident enough in these skills, would it be worth seeking some sort of internship, or a specific project that I can work on (I have a lot of senior-level contacts in tech who could possibly help me on this) to have something to show to prospective clients/employers?

Finally, how likely is it that I can find flexible (contract/project-based) work that is not the traditional 9-5 kind of job if I am working as a developer?

Any insights and particularly from those who work in the field would be much appreciated. Thanks so much for reading this!
posted by longjump to Work & Money (20 answers total) 28 users marked this as a favorite
 
I'm a mid-30s female programmer.


immersive programs that promise to, for example, turn an absolute beginner into a full stack developer.

.... right.... That is not something they can ever reasonably guarantee. There is a certain degree of natural aptitude involved in being a good dev. I compare it to drumming - you have to have a naturally good sense of rhythm and be able to keep a beat to be a good drummer, and not everyone does. I have known some very very smart people who just couldn't wrap their head around coding just because they don't think that way. I have also known some people who have been able to do it and could do it well, but actually HATED the work because they found it dull.

I was involved in recruitment/hiring for a while, and I know personally within my company we never give self-taught devs a second look, and while some sort of immersive program would potentially put you above someone with zero formal training, it may not be much. We look for college/university education in development as well as actual work experience. It may be different in different places, but what I have seen is that there are tons of people looking for dev jobs who have degrees in computer science etc and who have done multiple stints of on-the-job co-op work placements. It would be a pretty big hurtle to be considered before them with none of that. If you are thinking of trying to work as an independent IT Consultant, I think the chances of your getting meaningful full-time-job-wages work without having significant existing dev work to show are probably pretty slim. I mean, who knows. Maybe you'd be fine. But from where I sit it, it would be a bit of a long shot.

I'd suggest you first figure out whether this is something you ACTUALLY want to do. Do a couple online courses in javascript or something basic like that and see how you do. Then start playing around with the code on your own. Do you enjoy it? Having fun? Great. Then go for it.

Also, speaking as a woman in a male dominated field, it can be an extra kick to the shins having to fight to be taken seriously as a programmer simply because I have boobs. It isn't as much of a problem at my company, and it is getting better in general in the industry (I think) but it is something I have to work against and deal with. So as a woman you're going to have more to prove, right from the start. So you need to make really sure this is something you want to do, can do, and enjoy enough to have it be worth dealing with that bullshit.
posted by PuppetMcSockerson at 12:44 PM on October 4, 2017 [8 favorites]


Also, being someone who doesn't like math all that much, what are the possible avenues for me as a programmer?

Math isn't what I'd use as the defining factor. I don't like math because it lacks application and I'm very happy as a web developer. If you're looking at programming specifically, the questions I think I'd ask: Do you like puzzles? Do you like logic problems? Do you enjoy something in the way of crafting? Do you feel that you're good at attention to detail? Do you enjoy tinkering with things? Do you find your computer interesting and, whether or not you currently do much with it, can you picture it being exciting to learn better how it works?

I jumped from accounting to web development about a year and a half ago now, through a boot camp, and it's been amazing to me, but a lot of the people I did the program with have struggled. Modern web development is harder than a lot of the boot camps are taking account of, since Rails is waning and microservices and single-page applications have become big. It can still totally work out, but I wouldn't do the boot camp until you've made a solid effort to learn on your own and reached the hurdle of needing to do some more organized work with other people.

As far as getting jobs goes, if you know people, it probably shouldn't be that bad. If you're currently working in the tech industry, it might be worth talking to people at your current employer to see if they'd be supportive of you making this transition. The flexibility thing is something I'm still trying to work out, but one of the things I've noticed is that almost all the contractors I know have spouses with full-time traditional jobs. Which... isn't the position I'm in, anyway, or planning to be in anytime soon, but YMMV.
posted by Sequence at 12:45 PM on October 4, 2017 [9 favorites]


I'd say it's very realistic to re-skill into programming, provided that you have an aptitude for it. Some do, some don't. I'd suggest you take a MOOC before shelling out any money. Here's a list of some intro to programming courses with one mooc provider, Coursera There are other mooc companies; the Coursera courses I've taken have been free, but they're moving more to for-fee courses. Also books. I'll recommend some if you like, but you probably can choose better.

As for not liking math, I wouldn't worry about that. Depending on how you define math (is it math to decide what clothes to take on a trip and fit into your bag?), most programming doesn't require a lot of heavy math. Most programmers I know (and know dozens) aren't any better at math, in general, than non-programmers.

For 'hot skills', I'd just google it. Some of the job boards and tech rags publish top 10 hottest lists.

And, yes, I think it's quite likely that you'll find flexible work, once you've acquired the skills. It's a very in-demand skill, and one that lends itself to flexible work schedules.

But first take a class or two (for free) or work thru a book or two and see a) if you can hack it, and b) if you like it.
posted by cyclicker at 12:54 PM on October 4, 2017 [1 favorite]


Hardly any programming involves more than arithmetic: counting things, adding them up, calculating averages and ratios, etc. Even for the more advanced stuff, if you can do algebra and some basic calculus and trigonometry and statistics, you should be fine. Only if you are doing programming for actual scientific or mathematical applications would you need to know serious math.

I would expect a bootcamp to assume some level of programming experience even if they say "absolute beginner." Full-stack Web development involves a lot of moving parts and these days, you really need to know about security, too. Still, around 18 months seems doable if you already have a basic understanding of how computers work under the hood, are motivated, and have an aptitude for thinking logically and for breaking tasks down into small steps.

You should be able to get work if you put together a decent portfolio including at least one application of reasonable complexity. Sure, there are companies that won't hire anyone without a bachelor's, but there are also plenty of companies that will. Agencies like Aquent have whole divisions that specialize in placing Web developers. Many agency contracts these days are pretty flexible as to hours and work location, too.
posted by kindall at 12:54 PM on October 4, 2017 [1 favorite]


So, I am a grad of a bootcamp program, and I did go from (nearly) zero programming experience to full-time work as a software developer over the course of a 10-week program. I don't really recommend bootcamps, though, at this point, for general reasons and for specific-to-your-situation reasons.

Speaking generally I think the industry expanded too much, too fast, and it doesn't really scale all that well (either in terms of finding quality students or in terms of finding quality first jobs for those students). Also, as Sequence points out, a few years ago you could teach people Rails and it was a sufficiently popular framework for a couple of years that there were lots of Rails shops with Rails jobs. Rails isn't dominant the way it was, and right now nothing else has the market share Rails had at its peak. So it's hard for the bootcamps to know what to be teaching, and I think as a result they can be all over the place.

To your case specifically, I think a bootcamp is unlikely to give you enough skills that you could immediately do really cool stuff on your own without working as part of an in-person or really high-quality remote team. I learned vastly more in my first year on the job than I did in class - coding is no different from any other career in this way. So you need to have good people to learn from and if you're not getting paid to work with good people it's a lot of extra work to find the info you need to grow.

Basically, Sequence's advice is really good. Work on your own for a bit. There's very little that they can teach you in a bootcamp that you can't learn on your own/from StackOverflow.
posted by mskyle at 12:55 PM on October 4, 2017 [2 favorites]


Do you like puzzles? Do you like logic problems? Do you enjoy something in the way of crafting? Do you feel that you're good at attention to detail? Do you enjoy tinkering with things?

These are REALLY great questions and I think could do a lot for helping to nail down whether this would be a good fit.

Just as an example, I personally can answer yes to all of these questions.
- I am great at putting things together and assembling things.
- I know personally I love logic problems. I love mysteries. I am a HORRIBLE person to tell a joke to because I always try to figure out the solution/punchline.
- I love hobbies that are very procedural (quilting, knitting, sewing). I also do most of these hobbies without patterns and can very easily make it up as I go and have it work out because I understand how things go together.
- I do a lot of DIY home repair stuff and am very good at it because I follow instructions well and can sort of visualize how things should go.
- I often take "broken" things and then find a way to fix them. My caulking gun broke and my husband was about to throw it out, but I just disassembled the whole thing, fixed the broken thing, and then put it back together. good as new!


Meanwhile, I get lost in shopping malls, am the messiest person in the world, and don't know my left from right. The human brain is crazy, eh?
posted by PuppetMcSockerson at 12:56 PM on October 4, 2017 [4 favorites]


In my experience it's pretty easy to get a quick read on your coding aptitude by doing something like CodeAcademy. CodeAcademy et al. won't teach you to be a coder or a developer, but it will allow you to low-stakes see what your brain feels like when given basic basic basic coding problems.

(I'm not a coder. I do not have the aptitude. I find technology and computers interesting, I work in technology myself, I can do front end web coding enough to futz around and fix an obviously glaringly broken thing on a website, or write the world's most basic SQL query. But when it comes to actually learning the whys behind a language like C or Python, it makes my brain feel like all the wrong synapses are firing. It frustrates rather than stimulates me. I like making new things and and solving problems but something about the pure logic of computer languages makes me want to make a me-shaped hole in a wall as I flee. I want to love coding. It would make my life much more fun and interesting. But so far I've bounced off it pretty hard.)
posted by soren_lorensen at 1:01 PM on October 4, 2017


I'm a late 30's female programmer.

I transitioned into programming 5 years ago, after graduating from university with a humanities degree and working as a waitress and then an admin assistant for a few years. I was the last person on earth anyone would ever have expected to get into programming.

I think your best way forward is to try to find a short program that you can do course by course, at night, at your nearest technical institute. By short, I mean 1-2 years. I can't imagine trying to learn programming from a boot camp if you have zero background (which I assume is the case since in our school days, they didn't teach this stuff). If you don't like it, you'll find out in your first or second course. I don't like talk of 'aptitude' (I promise I'm not accusing anyone here, but too often this is code for 'being science or math-y', or worse, 'being male'). If you are smart and intellectually curious, you can do it. Good luck!
posted by kitcat at 1:04 PM on October 4, 2017 [6 favorites]


Regarding aptitude, my experience is that some people definitely have an easier time of learning to program, for whatever reason, and others have a much harder time.

Whether programming aptitude comes from growing up male in a culture that encourages you to tinker, or from having genes from a parent who was an engineer, whatever it was is in the past and right now you either have some level of aptitude or you don't. As far as I can tell, being male gives you no particular advantage if you don't have much aptitude.

Interest and attitude also go a long way. If, when you make a mistake in trying to do something, your first instinct is to give up, you probably will. And if you are driven to understand where you went wrong, you probably will. You can cultivate this to a certain extent, if your goal is to make more money, but most people who find anything difficult will eventually find something easier for them and do that instead.
posted by kindall at 1:47 PM on October 4, 2017 [1 favorite]


Do you like puzzles? Do you like logic problems? Do you enjoy something in the way of crafting? Do you feel that you're good at attention to detail? Do you enjoy tinkering with things?
These are really great questions, with one caveat. I think that coding comes relatively easily to me, and I would never say that I'm good at attention to detail. I'm usually terrible at attention to detail, and I have attention deficit disorder. But like a lot of people with ADHD, I sometimes have the ability to hyperfocus, and coding sends me straight into hyperfocus mode. So if you're a puzzle-and-logic-problem-liking, crafting, tinkering person who usually but not always has poor attention to detail, don't assume you're going to be bad at coding.

I'm doing university CS classes, rather than a bootcamp, because that's more compatible with my current life circumstances. It's a slower process, but it's another way to go if a bootcamp seems like too big an initial commitment.
posted by ArbitraryAndCapricious at 2:02 PM on October 4, 2017


Mid-30s female software engineer / engineering manager here.
Do you like puzzles? Do you like logic problems? Do you enjoy something in the way of crafting? Do you feel that you're good at attention to detail? Do you enjoy tinkering with things?
Those are great questions to think about when considering this career path.

From what I have seen personally coding bootcamps have mixed results. I know a couple of women who made an early-career (a few years after college) transition into software via
the women-only bootcamp Hackbright, and another who made a mid-career move into software after working as a lab scientist. I also know someone (male, late 30s at the time) who graduated from a competitive coding bootcamp in Nebraska but, after months of searching, was only able to find work teaching at another coding bootcamp.

When considering a bootcamp program try to talk to some recent graduates about their experience in the local job market. Employer attitudes toward bootcamp programs have become somewhat less favorable lately, so experience of graduates from more than a year or two ago will be less applicable. Also look at the program's fees and tuition repayment policies. I believe some programs will let you repay a percentage of your salary versus charging a fixed fee. Be cautious of taking on debt for a bootcamp.
RE-SKILLING PROCESS: How realistic is this career shift in terms of what I will be able to achieve skills-wise in the short-medium term? Also, being someone who doesn't like math all that much, what are the possible avenues for me as a programmer? What would be the most sought-after, "hot" skills in the market that I can learn within the next 18 months or so?
The career shift is definitely possible. After completing a good bootcamp program you should be qualified for a role as a junior web developer. Your program may tell you that you really have the skills to be a senior software engineer and should apply to senior-level roles. Do not listen to this advice, it is wrong.

About math involvement: in my work I have never use algebra, trigonometry, geometry, or calculus. I use statistics sometimes, when trying to understand the behavior of a system or how that system is used by customers. I use set theory and logic all the time. I'm a back end API developer and do a lot of work with relational databases—if I worked as a game developer (emphasis on graphics and physics of the environment) I assume my practice would be pretty different.
FINDING WORK: Once I am confident enough in these skills, would it be worth seeking some sort of internship, or a specific project that I can work on (I have a lot of senior-level contacts in tech who could possibly help me on this) to have something to show to prospective clients/employers?
ABSOLUTELY YES. Showing practical mastery of programming skills in the context of a real project at a real company is a huge boost. Personal or classroom projects are better than nothing, but a big part of what hiring managers look for is demonstration that you can work effectively as part of a development team in a company environment. It's great that you already have tech industry contacts who can help you find an internship—use them.
posted by 4rtemis at 3:19 PM on October 4, 2017 [1 favorite]


I have interviewed, hired, and trained many people switching from a previous career to programming.

What others have said above about making sure you like the work is absolutely true. Not only ask yourself if you like programming, though. Do you like working primarily alone? Are you ok with feeling like you are in over your head or have to catch up? (Many new programmers who switch careers, especially women, suffer from imposter syndrome so have to deal with these feelings frequently.)

Next I would check that there are junior developer jobs where you want to live. Have a few places lined up that hire people from bootcamps before you decide to invest in one. As noted above, some companies don't.

As far as what to focus on-- the ecosystem changes a lot. App developers are always needed (iOS and Android). There are many many frontend jobs and they'll probably expect you to know javascript + whatever the latest framework is, and that changes rapidly. Most positions I see also ask for a scripting language, but they usually give suggestions rather than definites, i.e. "such as Python or Ruby." Java's also not going anywhere anytime soon.

Can you find contract work that's flexible? There's definitely a lot out there if you look. Usually you'll have to have some years of experience under your belt to work that independently.
posted by tofu_crouton at 3:39 PM on October 4, 2017 [2 favorites]


Programming is notorious for ageism after 35 for experienced programmers. Coming into the industry may be extra difficult for you unfortunately :(
posted by TheAdamist at 3:43 PM on October 4, 2017


I just switched jobs at (ahem, a little older than you) as a female. I did have a little professional experience, but I started around age 33.

I got my most recent job basically because I was familiar with many concepts and had taken an Angular 2/Typescript class*. I did not have any projects to show off because I was all over the place in my studies, but I would highly recommend making some projects to 1) learn things and 2) have something to show for things you have learned. I think having a portfolio is especially important if you want to be a contractor.

I also see a lot of App Developer jobs as others have said. I mostly saw front end or back end jobs, rather than Full Stack, which is what I am. I mostly did my studying at Udemy.


*there was more to it than this, of course, but it got my foot in the door.
posted by getawaysticks at 5:34 PM on October 4, 2017 [1 favorite]


I did this three years ago - albeit at age 31, but I'm female and my degree is in art and my previous career was in design. I did an 8-week web development bootcamp.

RE-SKILLING PROCESS: You should start developing your skills now. Set up a WordPress blog, do some tutorials, build a small app in Angular, deploy it to Heroku, start a GitHub profile and commit to it regularly. Do not go into any bootcamp as someone who has never programmed before, you won't make it through the first day (assuming your bootcamp is any good). I came into my bootcamp having done all of the above (I was one of the most experienced students there) and it still mopped the floor with me.

However, if you do well in the bootcamp, they probably have connections with local companies who will hire you at entry level rates. Be ready for your seniority and experience in your old field to not really matter that much in your new programming career. A lot of programmers only care about programming experience, not what you did in your "past life" (your higher level managers, however, will probably respect it).

FINDING WORK: You should absolutely take on some intern-like projects as soon as you feel ready. I wanted a non-traditional 9-5 out of my switch to web development as my career and didn't find it on the first go-around. I ended up at a traditional 40/hr week dev job that I went into the office for every day. Those sweet remote/non-traditional roles seem to be for people with a few years of experience. I worked a 40 hr/week developer job for about a year and a half before I even began to feel competent in a professional setting. There's just so much to learn, and while you get to learn a lot of it on the job, it's tough because you are expected to both learn and produce things with that knowledge.

It's a much more rewarding career than my design career was, though, and I'm glad I did it. A change of scenery is good - if you like programming, go for it.

Good luck!
posted by paris moon at 6:23 PM on October 4, 2017 [2 favorites]


There is a certain degree of natural aptitude involved in being a good dev

Do you like puzzles? Do you like logic problems?


Late-30s female programmer here (can we start a club, guys?). Just to offer a contrary opinion on what makes a good programmer: I used to believe that both of the above were necessary to becoming a good programmer. I don't anymore. Both of those things describe me: I'm good at math and logic, and I love puzzles.

Someone I know well became a programmer a bit after I did. I honestly didn't think it was a good fit for him at first. He hates puzzles, sits out on board game night, never went past trig in math. As it turns out, he's a very good programmer because he's diligent and good at studying, which makes him very good at reading documentation and really absorbing it. I mean, yeah, solving puzzles is helpful for passing the silly interview questions a lot of workplaces throw at you (and probably great if you want to figure out new ways to process large amounts of data). But in reality, most workaday programming is about using well-known frameworks and patterns, which I think is where being a good study comes in handy.
posted by the_blizz at 9:53 PM on October 4, 2017 [6 favorites]


Funny you should write this. I'm doing a bit of similar career retooling myself: Systems engineer with many years experience a little light in the programming area so. . .here I am.

My plan is to get some solid demonstrable skills in C++, Java, and Python. So far I've been really pleased with Udemy. You should check them out to see if something suits you.

Beyond that I'm also studying for C++ certification through cppinstitute.org. Certification through Pearson VUE. The instruction is pretty good and the knowledge check tests are HARD in a good way. The Pearson practice test looks about just as hard. It's a lot of "What is the output of this program" type of questions. You REALLY have to know your nit noid details like C++ sends array arguments to functions via pointer only which means. . .by reference only. If you think they're done by value like we usually do then you'd get that problem totally wrong. Details details. They're good tests though.
posted by Lord Fancy Pants at 3:50 AM on October 5, 2017


Hardly any programming involves more than arithmetic: counting things, adding them up, calculating averages and ratios, etc. Even for the more advanced stuff, if you can do algebra and some basic calculus and trigonometry and statistics, you should be fine. Only if you are doing programming for actual scientific or mathematical applications would you need to know serious math.

Yeah people are intimidated by this, when they need not be. I counselled someone who was considering trying to become a DBA but was concerned that she had had trouble with calculus. Calculus! Probably not needed much in PL/SQL.

That said, the elementary math that I had to refresh, when studying programming, was integer division, remainders, and modulus, which I hadn't had much use for since school (and they kind of rushed over it then). Learning or reviewing basic propositional (boolean) logic is probably a good idea, too.
posted by thelonius at 6:17 AM on October 5, 2017


I am a woman in my late 30s who's had reasonable success in the tech space, starting from the PR side and working my way more into something like a hybrid of marketing communications/project management/ecomm development.
You are getting lots of great advice from programmers above that's specific to becoming a programmer, just wanted to put it out that there are lots of jobs that aren't specifically coding but are still in the tech space.
posted by dotparker at 7:42 AM on October 5, 2017 [1 favorite]


Apologies for the slight derail, but just wanted to check if you have looked at tech jobs other than coding?

UI/UX Designers (Build wireframes for websites and apps that rock while being very useful to the user), Business Analyst (work with Business people to develop requirements for apps and manage the process till it is available to show them the product), Scrum Master (servant-leadership for a group of devs) and many other roles are interesting and involved with technology while still not needing you to have hot dev skills.
posted by theobserver at 10:33 PM on October 5, 2017 [1 favorite]


« Older Templates for printing pages to track elderly...   |   Job interview, unfocused interviewer? Newer »
This thread is closed to new comments.