So I'm a relatively old guy dev/architect, and I've definitely been frustrated by the age issues.
But it really comes down to "good enough". Companies have some pre-determined pay scale for a new position, and more experienced applicants typically want more pay. Given two candidates, both who look like they might be able to do the job, companies may choose the less experienced (cheaper).
While the younger candidate may provide less overall to the company, the difference may be not only difficult to judge, but it may be impossible to test given that you cannot try both options.
And in terms of design, I would argue that humans are so varied that often even really horrid designs attract business. That's not to say that younger designers make worse designs, but that sometimes practically anything would work; it just might bring in a different audience. The result could be the same in terms of bottom line.
What I've decided at this point in my life is that we older people need to either go build our own companies/opportunities, or just roll with whatever job and find our personal satisfaction outside the office. Or just travel a lot to lower cost countries, work a lot less, and have a lot of fun :).
I find getting by easier now that my kids are grown and out of the house and my wife works and has excellent health insurance for us. People often can get by just fine on less money the older they get. It is when you are young and have kids that you wish you had some sort of payday.
I am a middle aged dev, and I expect to become you. I expect that my skills will become less valuable over time, and that my age will limit my possibilities. To me, this isn't such a bad thing; it's something to prepare for. (saving up, diversifying my skill set, making and keeping long term friendships, etc.)
You always have the option of partnering with some Gen X'rs who have experience and integrity and building something, with them, that provides you all security.
Gen X were 20-something’s in the ‘90’s, that group is just hitting the ageism barrier themselves.
The problem is the massive influx of newcomers to the industry who have no experience and crow very loudly that experience doesn’t matter, or that their 6-week bootcamp is as good as a degree+decades of experience. Well the joke will be on them too one day, they are just too inexperienced to realise it.
Probably exponential. The programmer with 10 years of experience doesn't see twice as far into a problem as someone with 5 years, but more like 4 or 10 or 100 times as far.
The reason why is pretty straightforward but I don't hear it talked about much. Any human mind is pretty good at solving a problem, and two heads are better than one. But the bottleneck is the basic communication between people.
So the more contextual background (experience) one has in a problem, the faster one is able to explore the problem space and iterate before he or she begins writing the solution in the real world. That's not going to be replaced by Agile or any other workflow in the foreseeable future.
I saw this firsthand from my supervisor when I had a 1 year contract at hp in my mid 20s (he was in his 40s). I was used to dealing with C++, compilers, some scripting with PHP and Python, that sort of thing.
It took me about a day to complete a ticket like writing a method to, say, load some data and show it on the screen in C++ or HTML. Meanwhile he was swizzling data in spreadsheets, piping it around the shell and doing deep analysis on it in large single passes in a functional manner with the vector and matrix processing techniques of MATLAB. He'd go from unstructured data to a report in an hour or two. Stuff that would take me days, weeks, or not even be feasible with the techniques that I was used to.
I look back on that year as being as important to my education as all the years before that and college combined. My only regret is that I see so far now that it almost hurts to write the code where the money is. A deep reservoir of discipline and frankly stamina are needed to protect the mind from being drug down by the antipatterns surrounding us.
Probably exponential. The programmer with 10 years of experience doesn't see twice as far into a problem as someone with 5 years, but more like 4 or 10 or 100 times as far.
Even if that’s true, most companies are at most looking at the next fiscal year and VC backed funds are just looking to survive until their next funding round or to their exit.
So these Python programmers, do they have any domain expertise too? What value do you put on that?
I am actually a similar age to the OP. I am 49, not far off 54 in % terms. I have 19 years of Python experience.
I recently started a new job, my 3rd time in consumer finance.
Two months in, I already understand the business far better than the two year mark of those two previous roles. My direct productivity is at least 3x me ten years ago. My likely impact on the business is 10+ times more.
Plus I still work harder than virtually anyone else I know, regardless of age.
I was trying to keep it an apples to apples comparison. With 10+ more years the dev might have machine learning experience (or something else) which would qualify for more.
My point is, it is not an apples to apples comparison. Older workers are most valuable when they can leverage more from their broader and deeper experience of the business domain.
For instance, you would probably say I am only half as productive as the data scientists I manage. I only get to spend an hour or two a week doing hands-on modelling, so I just don't have the same familiarity with the techniques and tools.
But in terms of influencing output, I can have a five minute chat about the goals and context to their work and save them a week of fruitless effort. So in practical terms, my productivity is far higher.
I could easily spend a bit of time to improve my modelling skills a bit. But the law of comparative advantage suggests our junior engineers should build their skills while I coach, mentor and set strategic direction.
In fact, to give another very practical example, this weekend my company Oakam is hosting the European Pandas core developers (https://python-sprints.github.io/europandas2019/) in London. My own personal contribution to Pandas this weekend will be minor. But I am far more effective by being able to provide the venue and fund travel grants so 30 core developers can collaborate together.
It doesn't take 5 years to teach yourself Machine Learning. While it is definitely a skill, it is not black magic. With a 5 year delta you could easily have ML experience, and a lot more as well to differentiate yourself.
It doesn't take 5 years to teach yourself Machine Learning.
The low-hanging fruit in ML is absurdly low these days, the tools are very good and there is loads of sample code available. If you were already good with Python or R, and already had some nice clean data, you could be doing something useful with Keras in a day, no joke.
I work hard because I enjoy my job enormously, and because I can work 14+ hours a day on mathematical/analytical/programming work, day after day, without feeling the slightest bit tired. I have always worked like that since I was a kid.
> you’re probably not as good as you think you are
Here is one reference point for you... Check out the 1992 winners of the ACM Programming Competition here. I'm second from the right in the photo.
And what’s wrong with that? I’m definitely not young - I’m in my 40s. You don’t need a superstar,ninja, 10x developer do yet another software as a service CRUD app. Either you adjust your expenses so you can charge an amount competitive with the younger crowd or you go up market - management, consulting, etc.
I don’t really get the “older people are more expensive” argument for outright rejecting older people. Just offer them what you want to pay and if they accept, you got an experienced dev for a price you want to pay. if not, look for a less experienced one fo less pay.
But it really comes down to "good enough". Companies have some pre-determined pay scale for a new position, and more experienced applicants typically want more pay. Given two candidates, both who look like they might be able to do the job, companies may choose the less experienced (cheaper).
While the younger candidate may provide less overall to the company, the difference may be not only difficult to judge, but it may be impossible to test given that you cannot try both options.
And in terms of design, I would argue that humans are so varied that often even really horrid designs attract business. That's not to say that younger designers make worse designs, but that sometimes practically anything would work; it just might bring in a different audience. The result could be the same in terms of bottom line.
What I've decided at this point in my life is that we older people need to either go build our own companies/opportunities, or just roll with whatever job and find our personal satisfaction outside the office. Or just travel a lot to lower cost countries, work a lot less, and have a lot of fun :).
* s/manage/judge