Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Is it possible to start of as a programmer at almost 40?
44 points by srameshc on Dec 8, 2013 | hide | past | web | favorite | 60 comments
I am almost 40. I have been programming as a hobby so far because I could never get a job as a programmer. I am ok with Java and now learning Go which I totally love now and some JS. Is it possible to start of as a professional programmer at almost 40 ?

Update: Thanks everyone for your honest and insightful feedback. It helped me truly to stay upbeat about starting as a programmer at 40.

It is possible to be a programmer at any age. However, getting hired is a different thing. I don't know what part of the world you are in, however age related discrimination happens, especially in Silicon Valley. I haven't heard reports in the bigger companies but in startups, yes.

I think there are a few reasons for it:

1. There are a lot of startups where the glamor of the industry means that they can easily pressure 20 something fresh out of school folks who are probably also suffering from imposter syndrome that the only way to learn is to work insane amounts of hours. I have no problems with working hard on improving yourself but a work life balance and doing productive work are not the same as that. I still remember one startup where one of the co-founders took pride in telling me that a guy in his team spent 30 days sleeping at work. Fuck that noise. As a person more experienced, you are probably well aware of that balance. However, as a junior developer, you are probably not as productive as someone else your age.

2. Money. The nature of American society means that people don't talk about their wages. Programmers while being well paid compared to the rest of America are not at least initially as much as they should be. As an older person, there may be a perception that you won't work for ridiculously low amounts of money and be cool with that.

3. Culture fit. A company of people who conflate having similar interests (board games, craft beer or whatever other bullshit your tiny subculture may have) with being able to collaboratively build amazing shit can easily convince themselves that someone who doesn't fit into that profile will not be a good fit.

> can easily convince themselves that someone who doesn't fit into that profile will not be a good fit

I wouldn't want to work for anyone like that anyway. People who make blanket blaming statements need not have me apply.

The surprising thing is that you probably already work with people like that. Hiring much like dating is an incredibly subjective process. I am insanely curious about hiring decisions and always like to once I get to know the folks who interviewed me, try to probe their reasoning process. It kind of disappoints me that for an industry driven so much by logic, mathematics and data, hiring is one of those fields where anecdotes and heuristics are more in vogue.

I strongly urge you to read this great essay published in the NYT last month:


> How to Get an A- in Organic Chemistry

Contemplating a midlife career change from science writer to doctor, I spent eight months last year at Harvard Extension School slogging through two semesters of organic chemistry, or orgo, the course widely known for weeding out pre-meds. At 42, I was an anomaly, older than most of my classmates (and both professors), out of college for two decades and with two small children. When I wasn’t hopelessly confused, I spent my time wondering what the class was actually about. Because I’m pretty sure it wasn’t just about organic chemistry. For me, the overriding question was not “Is this on the test?” but rather “What are they really testing?”

The author of that essay is a journalist with no academic background in hard science. Sure, she's probably done well for herself to be able to go back to school at the age of 42...but she's going into a very rigorous field (becoming a doctor) and she has two small children.

I guess people can debate what's really harder to get into, programming or medicine (given equal amounts of time and freedom to pursue)...but the one nice thing about programming is that if you have lots of time, you don't have to spend much money doing it or go through formal institutions and certifications. If someone likes what you've built, even if that someone is you, that's progress.

A few years ago I hired a guy that was already into his forty-something.

I can't remember who introduced him, he was fresh out of a nasty divorce, new in town, almost broke, had no experience and no skills, but he seemed so passionate about starting over that I gave him the recruiting test we used back then. The test consisted into reproducing complex patterns using HTML tables (most internship candidates fresh out college failed this one).

I explained how to merge cells and showed the desired output, after a few minutes he came with the right answers, without any previous knowledge of HTML. He was hired on internship wage and did very well.

Last time I heard, he was working for HP as a Java programmer.

The question is, do you want this hard enough?

Beautiful. That was like a 15 seconds inspirational movie.

As a 40 something, you have a lot of strength and experience to leverage. Much of it might apply to programming. For instance:

* People Skills - This is critical in almost every programming job, understanding what and why to do is more important is more important than how. Good communication is the path to that and many programmers get this wrong.

* Writing - Being able to take a ton of ideas and organize them into coherent, modular sections.

* Discipline - One thing that I have far more of at 35 than I did at 22. It is a critical component to learning as well as working through problems correctly (not half-assing it)

Don't forget Domain Knowledge! You were probably doing something up until you were 40. You know a loooot more about whatever it is than someone graduating from college. Play that to the hilt. It is often incredibly valuable.

Plus eigenrick's suggestions also specialize to your domain; for instance, if you were in construction (which I saw someone post a very similar question from once), not only do you know the construction world, you know how to speak their language, at both conscious and subconscious levels. You can comfort & reassure a construction buyer more than any random schmoe ever could. And so on.

the challenge isn't getting the job or learning the skill, it's:

* convincing someone to pay you commensurate with your age and experience over a 22 year old kid who needs one third the money and benefits

* convincing the hiring manager that you're not in it because you are desperate or going through a midlife crisis

* convincing the hiring manager that you won't mind being at the bottom of the totem pole, both at work and in society (programming is not a prestigious career to 90% of people)

notice how much convincing there is to do, despite the facts? if you go down this road you will be battling perceptions, not reality.

At least in the US, software development is far , far from "the bottom of the totem pole" socially. I actually have no idea how anybody could think that. No, it's not the same socially as being, say, a heart surgeon or a senator, but it's a better career than virtually all others accessible with just a bachelor's degree, on par with chemical engineering.

you're right - chemical engineers are also on the bottom of the totem pole.

basically if you aren't in management or ownership, you are the bottom of the totem pole. this is by definition. if you look at an organization chart - who's on the bottom?

Janitors. But they're not people, right? No reason to pay any attention to them.

Also, let's ignore all the people in the world who don't even work at large, prestigious, and highly profitable companies in the first place. They don't matter and aren't to be considered even part of society.

You are thinking inside of a bubble and ignoring everything outside it. You're constructing a highly exclusive slice of society with developers at the bottom, million-dollar attorneys in the middle, and rock-star CEOs and billionaires at the top. There exist thousands of towns and small cities, each with many, many thousands of people, where 95% of jobs are worse than almost any given programming job in a larger city and very significantly worse than a programming job at, say, Google or Facebook.

well, programmers and sysadmins are about the same level as janitors, or plumbers, or any other kind of laborer. not sure why you're upset at this.

I think at this point you're just deliberately being obtuse. You're free to make bizarre claims like that which virtually nobody would agree with, but unless you want to take the time to elaborate I'm not going to take the time to engage with you on this.

Where is the fairness in paying older people more because they "need" the money more?

Your other two points were reasonable though.

who said anything about fairness? what a quaint concept.

I thought it was implied by "[the challenge is] convincing someone to pay you commensurate with your age and experience over a 22 year old kid who needs one third the money and benefits ... notice how much convincing there is to do, despite the facts?"

That is, the facts implied that the poster was owed a salary that reflected both is age, experience, and his need for a greater salary.

Other people sometimes argue that employers don't like to employ older people because the demand more money. I always found this argument strange because that would still imply that given the same salary, the employer has no preference either way, and so the employer has no reason not to offer the lower salary to the older applicant.

You mean he'll have a hard time convincing someone to pay him commensurate with his zero years of experience?

How does that work exactly?

yes. he will have a hard time convincing someone to pay him either:

1) 35k as a 40 year old 2) 100k as programmer with no experience

have you ever hired anyone in your life above the age of 40? well i have. this is all the stuff that is UNWRITTEN, and UNSPOKEN in the workplace, because writing or speaking it is extremely illegal. this is why HN exists, so you can get real life opinions instead of the smarmy, PC, CYA bullshit you will hear in real life.

>>if you go down this road you will be battling perceptions, not reality.

Thanks @beachstartup for bringing out these key points.

It's really difficult to get hired (I'm 34 and can't get into the system). However freelancing and doing your own MobileApp/SAAS/CAAS (cognition-as-a-service) is a viable activity, it just takes a longer time to get to a decent income.

Thanks @dickler. Very valuable feedback. Appreciate it.

Do you have a particular area of expertise outside of programming?

If you can blend non-programming expertise with a growing ability to develop reliable software, you might be able to make youself employable sooner rather than later.

Thanks @Japhyr. Sales and Accounts is what I look into. I have some ideas for products but everything at a very early stage.

I'm in school for it in my mid-30's but haven't graduated yet so can't really give any definitive answer. I just wanted to build cool applications but there's all this talk about drop down automata and lambda expressions that are killing my passion for the subject.

It's a lot harder than I expected.

I'm interested to see what other people have to say.

It's fairly common for programmers who aren't immediately intoxicated by mathematics to go to university and be interested in but ultimately confused by this stuff. In the workplace, one is relieved that those subjects turn out to usually seem quite divorced from the day to day work of programming.

About 12 months in, you (hopefully) realise that those concepts are actually pretty crucial, and the extent to which you can succeed as a working programmer is the extent to which you can see the application of those abstract concepts in your daily work. The good news is, that gets much easier with real world experience. You'll go back, reopen the books and say, "oh, it's just a stack. fine."

The exception to all of this is State Machines. They are the most important thing. If you see something in your code that smells like a state machine, for the sake of humanity, please, make it one explicitly.

Don't worry about the scary stuff. I'm just about clueless about mathematics, but doing alright as a web developer. The vast majority of programming jobs don't require any serious math.

Lambda's are anonymous functions, by the way. They're not scary at all :) Here's one in Clojure:

    (fn [x] (* x 2))
It takes one parameter, called "x", and returns it multiplied by two. This function is not bound to any variable name, but just passed somewhere "on the fly".

Computer science does not necessarily equal software development as it's popularly envisioned. Indeed, in my experience a degree in the former provides you with little practical knowledge of the latter, which is typically picked up on the job (or not). I'm not arguing against a CS education by any means, but it doesn't often directly translate into "here's how to build a web app, write unit tests, and effectively use a version control system".

A few years back I moved from an EE background to Computer Science. I found it hard initially to relate building cool shit with learning abstract theory. However, fast forward a few years now, I think I kind of understand where it helps and where it doesn't. I think there are two types of people who get the best value of a computer science education:

1) People who have been programming for years and years. That way, you have enough of these tiny examples of how people have done things. Now at school, a higher layer of abstraction showing how all this stuff is connected comes up and it is amazingly insightful.

2) People who are lucky enough to find the right kind of mentors in school. The kind who will force you to relate the theory to practical examples.

At this point, if you don't have both enough work on the practical examples and on the theory, the only advice I have is to be prepared to work very hard, ask dumb questions and persist at it. Eventually, you will go into industry where it might initially seem as if the stuff you studied didn't have any context. Go back in a few years and re-read your notes, it will help you understand where the connections you subconsciously made in school have helped you.

I'm 40 and recently self-taught, and in my experience the hard part isn't programming(not to underestimate the complexity), but creating good habits that are conducive to learning.

Hard to generalize bc people learn differently but for me in-person hack-events are one of the best ways to learn. 30 minutes with a better programmer always trumps 30 off-on days with a book.

I think a degree is needed, but a computer science degree with today's academics is going to be lacking.

You would be better to get a degree in something you enjoy doing and find easy, while on the side build interesting projects on the Internet. Those projects can be used as your portfolio to get a job and you have a degree in something you didnt have to work too hard at. Rather you worked hard at teaching yourself how to design, code and creating cool things on the Internet!

Who cares about age overall, because it's nothing you can control and no doubt you are going to run into a lot of younger douchebags. Those douchebags will one day grow up to be nicer people, as well you'll grow up to the point of not letting other people's negativity affect you/make you lose focus of your goals!

From a 38 year old start-up guy who is still learning! Started my first idea at 31.

I can feel you. I wanted to start fresh and learn Scala as a I felt it was a natural progression on from Java. But it scared the hell out of me when I tried to delve into functional stuff too much. May be my approach was wrong. But then I picked up GO and some of those things feel a little obvious to me. And Thanks for your comment.

Sure. Don't fool yourself into thinking you'll be as productive as the 20-something MIT student who has been doing this since they were a kid and their brain was still in child-sponge mode, but yes, you can. You actually have an advantage, I think, in doing a .NET / Java route is actually very doable.

Yes. A good team will recognize that your love for programming means you'll improve rapidly, especially in an environment with constructive feedback from tolerant team members. And if you have other professional experience you can bring to bear (knowing how to work in a team, process & planning, customer support) the find a team that needs someone with that experience as well as programming ability.

If you can't find anyone willing to hire you because of your lack of professional experience, find a team you like and offer to work for them for free for three months. If you show promise, and you get along with the team, they'll want to hire you when the three months are up. And if not, you'll get feedback on your skills and learn what kind of teams to look for in the future.

> I could never get a job as a programmer

I don't think your age is so important, instead this bit could be; I think the reasons you kept programming as a hobby only are the most relevant for the discussion. Was the pay too low compared to your current job? Was it too hard to interview in you area ? Was it a question of starting with 0 professional experience ? Or wasn't it just in your priorities to try to land a programming job ?

At any age you'll be able to switch fields. But did the reasons you didn't do so until now became somewhat irrelevant ?

Thanks @hrktb . It was a mix of many reasons which you pointed. But the most important reason was I wasn't competent enough as a programmer and I wasn't lucky enough to get a programming job for my mere passion.

Thanks for the details. If you were able to make working projects as a hobby, I think competency shouldn't be a problem. You should already know the basiscs and since you're intersted in what you'll be doing, I think you'll learn fast enough everything you have to know to do a decent job.

In a lot of fields your reliability as a worker and ability to collaborate will be valued at least as much as technical skills. You might get weird mixes of management and programming jobs, but it might be a good way to start as well. I hope you'll find what suits you.

Yes, yes, and absolutely yes!

Check out this inspiring article http://joshuakemp.blogspot.ru/2013/11/how-blacksmith-learned...

Interesting post, but the author is 28, not 40 like the OP.

Yes. In case you haven't already, take part in opensouce projects of your liking as soon as possible, as a next step of involvement with the world of development.

I earned my Computer engineering Degree at age 36 and started at an entry level development job. I was a paid intern while finishing school. Now I joke that if I am looking for a job, folks looking at my resume assume I am in my mid thirties from my graduation date. I try to stay continually grateful for having won the genetic and geographic lottery. All I need to do is show up and my needs are met.

Why not? You can learn anything at any age. It might take a lot longer than if you were 10, and a little bit more than if you were 20.

The most important thing is passion. If you have it, it'll make learning anything 10x easier.

Yeah! It sounds like you enjoy coding. In my experience, that's the most important factor to long term high skill level, and success. Just keep enjoying it, and you'll naturally want to learn more and improve over time.

Yes, why not . I think you can,

I got heart attack when I was in age 32 February 2009, I just lost my military (navy) government job due to disability in their term. I year later I stared to learn html, css and js. freelance at odesk just change my world.


Most definitely. There is always a shortage of good, enthusiastic hackers. If you're good enough or even just promising and are able to demonstrate that you'll have no problem finding work.

I believe you could. The path I'd recommend is learn programming, get experience that you can put on your resume (such as developing an online tool or doing a startup), then go from there.

Good luck!

It's also about establishing a network. Join some meet-ups in your area. Ask questions. Start contracting. Find a mentor (older or younger). Usual stuff.

May we ask what you do now? Does this industry employ programmers? Do you have management experience that could hep you justify a job as a project manager?

Yes, of course it is.

Not everyone can become a programmer. But then if you have the aptitude, you can, even at 40.

You are right. And this is exactly what induces in me that very doubt. Sometimes I see these really smart young kids who build amazing stuff and sound so mature in their writing that is when I feel will I be able to contribute if I am in a team of such young and talented.

>> "Sometimes I see these really smart young kids who build amazing stuff and sound so mature in their writing"

I'm a 23 year old programmer and see this stuff too. I also feel like I could never be as good as some of them. But it doesn't matter :) I've been working full-time freelance for 5 years now and you can always find jobs that are fun, challenging, but not out of your skill level. I'm sure this is the same when working for a company. Some companies need child geniuses, others need passionate people who work hard and like to learn.

@srameshc, need to chat with you. kindly contact me at abdulakin at icloud dot com. thanx


Yes you can start as a professional programmer at 40. You can't get hired, but you can do consulting or start a business. (at least in Silicon Valley IMHO)

I retrained as a programmer in my 40s. My experience is that I can seriously out-perform most developers who are 20 years younger than me, because I know how to deal with people and business issues cold. And I know how to stay focused and eliminate distractions in a way that I didn't when I was in my 20's.

Go for it!

Thanks @andy1. That was one of my plans.

Lol you can't get hired....

Seriously.... at 40+ a more mature goal should be to avoid getting hired and pursue more freedom through consulting or independent work online.

I had that "mature" goal at 24, since noone was hiring. Now I'm 33 and happily employed. There are pros and cons to both.

Of course. You can do anything at 40 - become a programmer, go back to school and get a doctorate in physics, become a physician, etc.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact