8 ms·
Yeah, you hear all these horror stories about how developers have a "shelf life." In the meantime, though, every single older developer I've met has been extre
by asdfman123 7y ago
Yeah, you hear all these horror stories about how developers have a "shelf life."
In the meantime, though, every single older developer I've met has been extremely knowledgeable and frankly much better at the craft than myself.
Look at any hobby -- say, guitar playing. The difference between someone who's been doing it for 4 years and someone who's been doing it 20 years is ridiculous. They're so much better. I feel software dev isn't that different.
The only problem is if you're older you do need to follow new technologies. Older devs I've talked to who were pushed out of the field are the types who worked on, say, mainframe technology well into the mid-aughts and never thought about learning anything new.
As long as you get off the sinking ship of technologies that are obviously waning (and you should have at least a decade of warning in advance, I think), I don't think it's honestly that hard to stay current. You don't have to follow every fad, but make sure people will continue to use your main programming language.
Also, startups discriminate on age because they need people that can work until 2 AM and drink their Kool Aide. But there's a lot of stable, non-startup jobs out there. People who have never left the scene probably think of it as death, but there's actually some really nice enterprise shops out there with great developers.
- BuckRogers 7y agoI went "full software" back at the age of 36. I did this because I saw the writing on the wall for systems/devops and being a half-developer, essentially from writing scripts to full OOP. I put a ton of time and thought, and effort into the change. It wasn't easy to complete the transition and get hired, but I settled on C#. Chosen because C# and Java are similar enough (my only formal education in programming was in Java), and I could move between the two, if I had to. I also saw MS driving the future of .Net really hard, even after about 10 years before it looked like there was no future and MS was going back to unmanaged code. I also wanted as stable of a development platform as possible, an attempt at avoiding churn with all the kiddos in the web space. I'm still working fulltime as a C# dev and enjoy it. But if anything ever happens, I'll jump ship to the Java space. Both the city I live in and less-populated state that I'm from have copious amount of C# and Java jobs available, so I'm not on something so cutting edge that I have to live somewhere specific. It's my opinion that the best balance for most software projects was nailed with Java (and then it's descendent, C#). There's a reason it's so popular and they're not bad reasons. My dream job is to come full circle and be "the IT guy" at a small company, handling software and systems as a one-man operation. That can be done in the MS space, as less expertise is necessary in general on the systems side to manage the entire stack. Even less so with Azure. Will I be pushed out? I'm sure. I'm expecting less of a shelf life than the old hats because so many more people are raising their children to be ready for this field. Also, outsourcing/visa migration was fully implemented to diminish the industry for workers, since about 2000. The industry that was supposed to be the next buoy of the American middle class has been successfully undermined by American hypercapitalism. Greatly reducing prospects and the future for even my generation, the golden generation of children that grew up on a Commodore. A special time of astute technologists raised when we had personal computers at home, but before iOS collapsed the barrier of entry and nullified the mystery & effort required to get to entertainment.
- mr_overalls 7y ago> every single older developer I've met has been extremely knowledgeable To be fair, this observation could be massively influenced by survivorship bias - more talented devs tend to be the ones still programming in older age.
- WorldMaker 7y agoThat argument applies in the other direction as well: it's a very relatively young industry full of big industry-wide disruptions at least once a decade since it has been its own industry. Companies with young median and mean ages may have been more likely to survive (or evolve out of) some of those big early disruptions, but that may not be a long term equilibrium for the industry. Keep in mind, too, how much the 80s, 90s, and 00s median/mean ages were impacted by "flash flood" millionaires that could retire early simply by how much money was thrown around in the various "software revolution" and "Dot Com" booms.
- asdfman123 7y agoI seriously doubt the number of instant millionaires is significant enough to impact the total numbers. 25% of programmers did not become rich enough to retire, and if so, I'm doing everything wrong.
- WorldMaker 7y agoIt was always a matter of luck. If there were ways to predict such a lottery ahead of time, I think the industry would look quite different today. As with flash floods of rivers, the coverage of such events was complex. It probably affected some companies a lot more than others. Anecdotally, it used to be an aphorism at Microsoft that if you hadn't made your first million by 30 (or was it 25?) you were doing something wrong. Certainly the demographics at Microsoft showed several clear waves of early retirements from stock booms and bonuses, and for a ~forty year old company the median age is still staggeringly young today, even accounting for industry ageism. If it wasn't clear, I don't expect those flash floods to happen again, they definitely seem to have been flukes of luck. But I think it shouldn't be ignored that it had an impact on the industry demographics.
- zzzcpan 7y ago> As long as you get off the sinking ship of technologies that are obviously waning But then you would have to compete with young people starting out in the same technologies. And they are more naive, more easily manipulated and exploited, corporations love that and prefer that to 20 year experience in the field they can't even understand could be important to all the new technologies.
- yowlingcat 7y agoThat's sometimes the plan. But as always, you get what you pay for. Some management teams are savvier than others.
- ehnto 7y ago> As long as you get off the sinking ship of technologies that are obviously waning (and you should have at least a decade of warning in advance, I think) You also don't need to get on the ground floor. Every technology boom creates next years legacy apps, there will be React work for years after the next tool gets popular for one example. The article touches on it, but you can make a good living out of consulting work for older technologies. Another angle is moving into non-tech domain specialization. Becoming an eCommerce consultant, your value proposition isn't knowing React/Shopify/Demandware etc, it's knowing the eCommerce ecosystem and domain. I know devs who specialize in agribusiness, automotive software, construction, energy infrastructure and such. They build solutions to problems in those spaces that happen to be software. But they get hired based on their time in those industries not their current tech stack.
- Stratoscope 7y agoOne thing I've noticed is that there seem to be a lot more older developers and engineers at hardware-oriented companies. I currently work at Wing Aviation, the Alphabet drone delivery company. We were originally located in the Google X building, which is the old Mayfield Mall in Mountain View. I used to shop at that mall in the 1970s! X is full of hardware startups, and when I started there I noticed one thing right away: for the first time in a while, I was not the oldest person in the building. Now that we've moved to our own smaller building, I may be the oldest again, but not by a wide margin. There is a lot of gray hair in our teams. I'm 67 and have been programming for 50 years.
- blackflame7000 7y agoThat's probably not by coincidence. The cost required to fix a hardware/firmware defect vs a software defect is much more. I'd definitely want to put my best engineers on the product that can't be easily fixed once it's shipped vs software than can always be patched. > I'm 67 and have been programming for 50 years. Also, that's really impressive. You've probably forgotten more than I've ever learned!
- beat 7y agoPersonally, I find it slightly weird that I've been in the industry longer than some of my co-workers have been alive.
- iguessthislldo 7y agoRelated experience in the opposite direction: I'm a relatively new software engineer that works on a 13 year old product. It's fun to see a particular commit and think about what I was doing in middle school, high school, or college at the time it was committed.
- asdfman123 7y agoI mean, I feel like more programmers were working closer to the metal back in the day. In the 80s you needed to understand computer hardware much better and there was a bigger fraction of C++ developers. Now all those people have migrated to hardware (or have kept doing it) because that's where their skills are needed.
- blackflame7000 7y ago> "mainframe technology well into the mid-aughts and never thought about learning anything new" - today this is called the cloud
- bob7834 7y agoWhat is the new ship we should all be jumping to?
- ken 7y ago> In the meantime, though, every single older developer I've met has been extremely knowledgeable and frankly much better at the craft than myself. That just means the field isn't totally corrupt with fashion or nepotism or whatever. Survivor Bias is a perfectly plausible explanation, too. Every single older guitarist I've met has been a fantastically successful rock musician.
- sbov 7y agoAlso, most languages are not sinking ships. Certain uses of them are of course. But even languages this site hates, such as C, C++, C#, and Java have very long lives ahead of them for certain uses. Obviously C++ vs Rails... well, you're going to be out of a job. But if you were using C++ for the sorts of things you would have used Rails in 2009 you were already a decade or so behind the curve.
- inetknght 7y agoI doubt it. C++ has come a long way in the past decade and still has a lot of momentum. As for rails? Admittedly I'm in an anti-ruby bubble... but the Ruby developers I do know definitely don't use Rails anymore. Ruby seems to have matured into basically just Chef/Vagrant in my bubble and any Rails apps are being deprecated in favor of the bubble-biased languages.
- joelbluminator 7y agoRails developer here. It's still quite easy to get a Rails job; maybe not for Google, but easy. There's much less hype but also less competition over jobs (many young developers come with Python/Nodejs backgrounds nowadays, many senior Rubyists left for greener fields).
- jm__87 7y ago> But even languages this site hates, such as C, C++, C#, and Java What makes you think this? I have been on here for years and have never really got this impression.
- bob7834 7y agoSee: - Any thread about rust - Any thread about an exploit in a c variant
- awakeasleep 7y agoI think you miss the point about 'shelf life' The shelf life is due to a business decision, where the knowledge the older person has is deemed insufficient to justify the compensation they've grown used to. Sure, you love working with them and it's better for engineering, but the business wants college grads they can pay less, even if they don't do the same quality work. Importantly, this doesn't have to be logical or good for the business. It just has to make sense in the context of quarterly targets.
- beat 7y agoIt's not just quality, it's capability. As I'm fond of saying, I may cost twice as much as an entry level engineer, but I can do things that two entry level engineers can't do.
- koonsolo 7y agoI have a similar expression. My daily price might be higher, but they will cost you more.
- Silhouette 7y agoMore significantly, you can probably do things that no amount of entry-level engineers could do. The question is usually whether your (prospective) employer benefits from any of those things, whether they realise it or not.
- zentiggr 7y agoAs a former software guy, life long computer hacker, who moved to desktop support for years, I ran into new people hired as programmers who had to be coached to hit Ctrl-Alt-Del properly to log into their newly deployed laptop. I'm working on hiring back into software roles now... I figure if the bar is that low, I can rock it out if I can just convince anyone that I can still code. Interviews have been interesting.
- scarface74 7y agoI keep hearing this but sometimes you just need hands on keyboard to push things out fast. Yes I can do a passable job at front end, middleware, databases, and I'm pretty adept at cloud infrastructure and devops. Does that mean I'm as valuable as 5 people? I can only do one of those at the same time.
- collyw 7y agoI am at a startup just now and they are complaining about frontend devs as - they don't hang around - they don't want to touch the old frontend written in Dojo, just the React stuff. I'll do whatever (I am officially a 80% backend dev who can do enough frontend when needed). The Dojo way of writing things actually seems a lot nicer than React, but it ain't cool.
- scarface74 7y agoI don't care about it being "cool", but I'm not going anywhere near a company doing Dojo because it isn't marketable.
- godelski 7y agoThe guitar playing is a good analogy here. Say you've played classical for years and dabbled in rock and some jazz. Like any musician you've played around a little but probably focus on one style. You're best friend asks you to play flemanco for them at their wedding. Sure, you won't be as good as someone that's played flemanco all their life. But if flemanco was invented 5 years ago you're sure going to pick it up fast and probably be better than someone who has only been playing it for the past few years. Skills translate. Transfer learning is unsurprisingly a real thing. The funny thing is that a guitar player will pick up a brand new instrument and quickly gain and surpass someone who has only been playing that instrument for a few years. Even though each instrument is a different "language" per say, there are common patterns in the language tree of music. I don't think any programmer worth their salt would disagree that this is also true for programming. No matter the language you use, there are common patterns. Someone who has been programing for years generally picks up a new language quickly (because of this). Certain languages will make you a better programmer in general too (low level languages help you understand what's going on behind the curtain). So should a programmer with 30 years of experience in C and 1 year in rust be paid more than the programmer with 5 years of rust experience? Absolutely. Those 30 years they were learning to program, to debug, to solve problems. The skills translate. And I say this as someone under 30. I've seen the wizards solve problems in languages they've never used because they just understand programming.
- ChuckNorris89 7y ago>No matter the language you use, there are common patterns. Someone who has been programming for years generally picks up a new language quickly (because of this). So should a programmer with 30 years of experience in C and 1 year in rust be paid more than the programmer with 5 years of rust experience? Absolutely. Those 30 years they were learning to program, to debug, to solve problems. The skills translate. Tell this to HR/recruiting departments. I'm a highly experienced C developer with some python and JavaScript experience on the side yet can't get any jobs on those as HR/recruiters will just filter my resume out every time due to "insufficient python/JS experience". HR has no idea how programming skills and experience translate across languages, they're just trained to filter out people based on buzzwords. On the other side, everybody is looking for people already versed in the languages they need right NOW and aren't gonna take the chance on someone proficient in other languages hoping they'll master the new ones soon enough. Too risky for business.
- JustSomeNobody 7y agoThe myth of developers not being able to keep up as they age seems to be mostly propagated by two types of people. 1) Managers who want to keep wages low and 2) Young developers who try to hard too prove themselves and don't want to listen to/or work with older developers. [0] [0] Note, I'm not saying all young developers or all managers. Only a small subset of each.
- Silhouette 7y agoAlso, startups discriminate on age because they need people that can work until 2 AM and drink their Kool Aide. There may well be a correlation there, but which is the cause and which is the effect is less clear.
- unoti 7y ago> In the meantime, though, every single older developer I've met has been extremely knowledgeable and frankly much better at the craft than myself. While this is true for you, there is a lot of selection bias and survivor bias involved in this. For These older developers you need to also consider their comrades they were working with 20 years ago. For every older dev you work with today, there are 10 of their former buddies that decided long ago they didn’t need to advance beyond VB 6, or IVM mainframe assembler or RPG/3.
- svachalek 7y agoOr they hit the stock lottery jackpot and have retired, or moved into management, or marketing, or started a sandwich shop. But I do think there's a bit of generational shift that the stereotype of outdated engineers haven't caught up with. When I started out in the mid-90s, anyone more than a little older than me didn't have a CS degree and had come up in a world without source control, continuous integration, automated testing, iterative development processes, open source libraries, etc, etc. So in some ways they were from a different planet than the next generation. Although the tech du jour still changes quickly, programmers in their 40s these days still have a comparatively small gap when it comes to education and development process.
- rjsw 7y agoI was using source code control and open source software in the mid-80s.
- api 7y agoI think a lot of the age-ism has more to do with cost than skill. Older developers ask for more pay, negotiate more, and are less willing to put in uncompensated overtime. The way to get past this is to make sure you develop skills that are exotic and high-end and hard to find so you can't easily be replaced by a cheaper college grad.
- phkahler 7y ago>> In the meantime, though, every single older developer I've met has been extremely knowledgeable and frankly much better at the craft than myself. This may seems strange from where you sit but trust me. If you stay in the field that length of time, you will probably become that guy. You don't need to set out to be him. The only thing it requires is time and a refusal to stagnate.