I’m just at the beginning of the process of radically changing course in life. For some background reference: I’m almost 40, living in Berlin for 8 years as a musician and barely scraping by as a private music teacher/occasional performer/other starving artist type jobs…
Berlin is a kinda IT startup mecca at the moment and so I often find myself at parties or just in social circles with folks in the IT world (who nearly all happen to be earning quite well), and about a month ago I decided I want what they’re having! (I mean, not on a total whim, but after many conversations with many people simply to get a feel if it would even be realistic).
At this point in my life I don’t have any illusions about being a rock star programmer. I’d like to learn some skills in web development that would make me at the very least a useful, hireable coding monkey and give my life some financial stability, and at most, well, something more, and take the quickest route possible.
In the last couple weeks I did the complete HTML/CSS course at codeacademy, and the first few exercises in javascript. I figure whatever I do I should have at least a working knowledge of that. I’ve also watched the first 8 weeks of Harvard’s CS50 course “Intro to Computer Science” (I know this isn’t the most efficient way to meet my goal but I really do love theory and context in general and so I genuinely enjoy these lectures).
A couple of friends who are very much involved in the entrepreneurial, start-up culture mentality strongly suggest ultimately learning Ruby. I think they even said that with just Ruby and (was it MySQL?) I could find work (even before learning rails). I have other friends who are more in the world of stable employment by large companies who don’t give such strong recommendations but share their experiences (one simply said he had no trouble finding a job in PHP, but admits this is just one guy’s experience).
I’ll add just that I do have, more or less, a good mind for this in general. IE, I’ve always been strong in math, the natural sciences, music (naturally), abstract reasoning, etc.
Questions:
Is it realistic at 40 with absolutely no coding experience (prior to a month ago), to change careers to IT within maybe a year? 2 years? with no formal cs study? learning on my own part time as I maintain my current work schedule?
If your goal was not to be the greatest coder in the world, but quick, easy (relatively speaking), in demand… what languages would you recommend (including prerequisites)?
Get familiar with the sever/client architecture. And what code goes where. JavaScript is still very very strong for the client side.
Being able to code is not good enough IMHO. Don’t dismiss classes on network admin stuff. You will be dealing with network administrators. Learn their language.
Can you expand on this a bit? What does this mean in practical terms? What steps should I take?
Well, I don’t intend to take any formal classes, though I do intend to join with meetups and workshops of which in Berlin there are a ton, and I’ll likely continue watching (somewhat passively) Harvard CS course videos. Are you suggesting formal classes in an institution of higher learning as a requirement?
All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy. All coding and no fun make Chimera go crazy.
I’m in Ecommerce in the USA, and our IT department is always looking for strong programmers and coders who know Java and especially Scala, which is a variant of Java. Knowing responsive web design - design that looks the same on desktop, tablet and phone screens - is a huge plus.
Pretty soon, all design is going to be going responsive, and Scala seems to be an increasingly popular language that goes with it. Lots of HTML coding is also useful.
Our IT people are also gung-ho about Microsoft Jive, which is an intranet program that they’re trying to get our large company to start using - it’s pretty interesting, but apparently not a lot of programmers know how to administer it yet.
Just my experiences - Ecommerce is always a good place to concentrate IT specialties, because it’s only getting more important.
Having run a successful IT consulting firm for the last 17 years, I have one word of advice: “Plastic”.
Sorry, no, that was from The Graduate.
The one word would be: “Cloud”.
We’re a Microsoft partner, so we do Azure but it could just as easily be AWS. Every ISV and every corporation are either moving to the cloud or thinking about moving to the cloud.
Someone who understands how it all works, can work out what it will cost to run in the cloud, and can automate it through script like PowerShell is gold.
Given the range of opinions and advice I’ve gotten from various people I could use the occasional quiet moment at the bottom of the swimming pool.
I was hoping for some kind of consensus to emerge but I don’t think I’ve heard the same thing from 2 different people. But OK, specific recommendations aside for a moment, any general thoughts about my first question? I’m 40 and have college degrees in completely unrelated fields. I will say I’ve absolutely loved the process of learning the last month so I know I like the work, BUT, are there many (some?) examples of people you know who’ve been successful forging a career in IT starting late in the game from scratch?
Regarding the specific recommendations, can you give me an idea of the pathway there? I’m just starting to learn the basics of javascript (while still getting comfortable with HTML/CSS). According to your recommendations, is this useful?
The specific languages/technologies you learn all depend on what corner of the IT world you happen to find yourself in. For example, you can make perfectly competent web interfaces without really knowing anything about javascript. You cannot make the sort of slick/fast/modern web interfaces people are becoming accustomed to without being at least somewhat proficient in javascript. So, do you want to make slick/fast/modern web interfaces? Do customers in your industry of choice demand the sort of advantages client side scripting confers?
If you end up doing something like devops, which is programming for network/config automation, javascript will be essentially worthless, as will most web-specific stuff for that matter. Likewise if you end up doing data analysis or interface design. This is why you won’t be able to get a consensus, because we all come from different niches.
In light of this, take my advice with a grain of salt, but I’d take a crash course in relational database design and querying. Whether it’s MySql or MS-SQL or Oracle or PostgreSQL doesn’t so much matter as long as you understand the fundamentals. In my experience if you give a junior dev a javascript problem they can usually google their way out. If you give them a SQL problem half the time they just find new ways to jack it up.
eta: Just to be a bit more useful, I arrived at my current position somewhat organically. I actually had a CS background education-wise, but my first job was as a cut-rate system/network admin, doing basic network troubleshooting, configuration, server administration, that sort of thing. From there that led to database administration, which led to database design and scripting, which led to web development. I’m sure if I’d have tried to jump straight into web development it would have been much, much harder to get my head around everything, but by starting with a small, entry level chunk and slowly adding to my knowledge base it worked out pretty well.
To be honest, I don’t see programming as a viable career for you. Being a good programer takes a certain personality. It’s not just a matter of learning certain skills, it’s a way of thinking.
It would be like if I said, “I’ve never played music before, but I see that rock stars make a lot of money. What are some good chords to learn so I can make a living as a musician?” Certainly I could learn to play, but people who had a natural gift for music would play so much better than me that they would get all the paying gigs. It’s the same way with programming. The people who have a natural tendency to be programmers will be so much better than you that it’s not likely you’d get hired as a programmer–especially starting so late.
However, there are many, many other ways to make money in IT without programming skills. The easiest way is probably to get into an area that does testing. You won’t need to program. You’ll need to be familiar enough with computers and the task so you can setup and run testcases. Some programming skill can be useful to automate some tasks, but in general you don’t have to be a coder to be a tester.
What I would recommend is look to see what the IT companies around you are hiring for in non-programming jobs–testing, documentation, usability, support, etc. See what tools or languages they need and get familiar with them as much as you can. It sounds like you have friends in those companies. Ask them if they know of any jobs.
One thing about working with computers–it’s all about solving problems. All day long, you’re trying to get stuff working and figuring out why stuff that’s supposed to work doesn’t work. You cannot be a person who gets easily frustrated. You can easily spend all day on a problem like trying to figure out why some text is showing up as blue instead of red. If you don’t enjoy problem solving, working in IT isn’t for you.
Oh, that’s a great post, filmore. My company hires most devs directly from a staffing agency, but the 2nd most popular way to get into development is to come in through QA. Being a good tester involves using a lot of the same tools that developers use to troubleshoot and automate, so after a year of slogging through the testing world you’ll have a pretty good idea of what skills you need to flesh out to move over into development. Personally I’d rather get kicked in the dick than be a tester, but some people love it, and even if you hate it it’s a great way to get your foot in the door.
Sure. Probably not going to be super-easy, nor will you go from nothing to “great programmer” within a few years. But programmers come in a variety of skill levels, and you can probably learn enough/get enough experience to get a job as an entry-level or maintenance programmer if you put in the effort.
There is no one answer to this. Or, rather, the answer is “talk to people.” You said you knew a lot of people currently working in IT; ask them what technologies/languages they are having a hard time hiring for. Another idea: see if they’d arrange a meeting with one of their corporate recruiters and/or HR folks. Basically, you want to find the technologies that people in your area need.
Like steronz says, I would consider getting into IT via QA. You don’t need the high-end programming skills to get a job as a tester, but you do need an attention to detail and a fair bit of computer knowledge. It’ll also give you some great experience, and you’ll get to hang out with other IT types and share knowledge. Look into getting some QA certifications/experience. Find out what skills people who are hired to do QA in your area need. It’s probably way easier to get a foot in the door for QA than coding, and a good QA person is worth their weight in gold IMO.
A slight dissenting voice here… QA needs a particular mindset FAR more than programming does. QA is that branch of IT that embraces tedium and doing the same shit over and over, to see where something will break. It’s not for the faint of heart, and definitely not for the creative types. I tend to think that if you’d make a good accountant, but have a technical bent, you’ll probably be a good QA person. But if you’re an engineer at heart, or a creative type, QA will probably make you want to shoot yourself.
I don’t mean to sound unappreciative, but this is an odd comment at the least. I certainly did ask for advice on whether IT is a realistic choice but any doubt I have is based on my age, lack of formal education and experience… Forgive me for being skeptical of your ability to assess whether I have the “personality” for programming based on (what exactly? this thread?). Incidentally I am the guy who stays up 24 hours and beyond to tinker with the tiny details of a problem. I’m the guy who got obsessed with the rubik’s cube in high school for a week or 2 (to the annoyance of just about every one around me) and beat it. Have you ever tried to compose a fugue? It’s pure detail oriented problem-solving.
I do appreciate your other comments though and will take your suggestion of looking into QA to heart, as it may indeed be a good foot-in-the-door strategy.
I’ve been gradually having these conversations with quite a few people (it’s actually amazing how many people are in IT in Berlin. I’m regularly at parties, bars, events, etc. with large groups of people and if you guessed each person’s job as being IT related you’d be right more often than wrong). Most people I know seem to be in web development. A close friend and his circle seems to strongly recommend Ruby on Rails as a target, and I guess I’ve kept that as the default path in the back of my mind. I have other friends who specialize in javascript, php, and python. Bunch of other people I know are in IT but I’ve yet to ask. I’ve browsed job postings and seen a fair share of each but I’ve specifically searched them out. I have very little feel for demand for things I’ve not be searching for.
So I’m probably heading towards web development if for no other reason than that’s where my social network seems to be.
I’m glad you offered those details. That’s not how I would typically think of a musician. You certainly can learn to program and probably be quite good at it, but I don’t see how you could get good enough to have it be a viable career at this point. Most employers would not hire a 40-year-old new programmer. They would rather go with a college new hire. So unless you have amazing programming skills and some unique talent, it’s doubtful you would get a programming job.
Even if you were 20, most employers would not hire someone who has just taken a few programming classes on their own. Even people who get degrees from an online college don’t get an interview. Employers have their pick of college educated programmers. It would be a slim chance for you to get a job as a programmer.
However, if you’re very detail oriented, you could be an excellent tester and that can often lead to other positions. Getting into IT through something like that would be the best use of your time. If you try to get in through programming, you would spend a lot of time for not much payoff.
[I’ve been working professionally as a programmer since the 80’s]
Wow, not sure where you live/work, but my experience is completely different.
From my perspective:
There’s a HUGE lack of qualified programmers in the US. My company has been growing exponentially for the entire time I’ve been here, and we have a hard time hiring people. We absolutely don’t “have our pick” of college educated programmers - in fact, we don’t require degrees at all (but we do want experience in the skill set we use). We don’t discriminate on age (or anything else). We’d LOVE a 40 (or 50… or 60…) year old programmer with the skill set we want.
As far as starting from nothing - yes, that’s tricky. Experience is what we want. But as others have said, you can get experience in a variety of ways. Work on open source projects. Start your own project and put it out on GitHub. Read/write blogs. Take any IT-related job you can find. QA/Help Desk/whatever will help you get your foot in the door.
I am not a programmer, but friends and family are and I ask a lot of questions. What you are saying here does not mesh with my observations or theirs. First off, lacking a degree in anything computer science/tech-related does not seem to be much of a hindrance, provided one can actually program. I am told that employers want to see your work more than they want to see a diploma and that the interviews usually involve some on-the-spot work so they can see if you know what you’re doing.
I have watched several people complete advanced degrees in humanities and grudgingly get jobs as programmers at tech startups. They were closer to 40 than 20 and they had no real experience or even interest in the subject. Most don’t last long because they decide the money isn’t worth it to do work they hate, but the point is that somehow they get hired in the first place.
The OP could do some freelance work to build up a portfolio to show an employer, or even volunteer some free work for a non-profit–maybe something music-related–to display his abilities.
My SO is a programmer without a programming degree and has no trouble getting hired.
Lots of companies (and I work for one of them) don’t give a rats ass how old you are. If they do, then chances are strong that you don’t want to work for them. Because many of those places only hire young people because they can work the shit out of them with false promises of promotions and bonuses if they warp their entire lives into their jobs.
I’ve no idea what the job situation is like in Germany, but here in the US, I’d steer new IT people towards leadership positions. Unless your goal is to be one of the teeming masses of disposable short-term contract techs, you should be developing and demonstrating leadership skills so you can get positions as team leads and project manager.