7 ms·
In the general sense, this is the wrong place to ask. It's a self-selecting group in that most people over 40 here will be among the group that lasted in the ca
by Gargoyle 9y ago
In the general sense, this is the wrong place to ask. It's a self-selecting group in that most people over 40 here will be among the group that lasted in the career. It won't give a sense of how large that group is in the wider world, nor how many didn't stick with it.
On the other hand, if you want to hear how to make it past 40 in software, this is probably an excellent place to ask!
- lliamander 9y agoThen let me ask: how do you make it past 40 in software? Specifically, how do you position yourself so that you are actively sought after (rather than merely employable)?
- bdcravens 9y agoUnderstand business needs. Be able to communicate. Be upstack: infrastructure, DNS, SSL, etc. Go deep on security: many concerns cut across many languages, but if you're a language/framework of the week developer, you're too busy learning the same thing over and over to have that depth, which businesses desperately need. (I'm 40 and my current role is with a small company where I implement solutions rather than have a title)
- bostik 9y ago> Go deep on security Bingo. Security is one of the few cross-discipline, cross-domain specialities where it is possible to be a reasonably good domain expert and still have a good coverage across other domains. The fundamentals don't change. (And I say this as someone who's been immersed in the field for 25 years, so of course I'm biased.) There are few other domains that can offer the same level of constant demand. The beauty - and the depressing aspect - of security is that maybe 10% of security is about software. The remaining 90% is all about what is between people's earlobes. To become good at security, you'll need to learn how to explain extremely difficult and often subtle concepts. And you'll have to do that for both technical and non-technical crowd. That's a fantastic and continuous trial by fire. It's also lots of fun! Bonus: because everything is a tradeoff, you really can't avoid the engineering approach. Teaching the concepts and reasons for tradeoffs to less senior developers will be part of the job specification. Fun. > language/framework of the week To quote something I have often stated in our interviews - there are only four programming language families. Everything else is syntax.
- loup-vaillant 9y agoCan I ask which are those families?
- bostik 9y agoOf course. 1: Imperative - C, Fortran, Pascal, ... 2: Object-oriented - C++, Java, Python, Ruby, (maybe Delphi's Object-Pascal), ... 3: Functional - OCaml, Erlang, Haskell, F#, ... 4: Declarative - Makefiles, QML, SQL, .... To be perfectly honest, I don't know which bucket I should use for Prolog. It's supposedly logical, declarative and functional at the same time. I've never managed to understand it, despite trying. And for the record: perl in basic form is imperative. With the introduction of "bless" keyword it crosses over to object-oriented domain but following the syntax is not necessarily straightforward. [I've spent a non-insignificant number of days auditing OO-perl. It's not a pleasant experience.]
- andrewflnr 9y agoThose are more dimensions than buckets, and not very orthogonal ones at that. In particular there is strong overlap between declarative and functional language features (you could argue functional is just a special case), and less strong overlap between imperative and OO languages, and OO and functional. OCaml fits pretty comfortably in all four of those categories, when you want it to. If I wanted to jam languages into 4 categories, it would probably be the Algol, Lisp, and ML families, plus All Those Other Languages. :)
- useranme 9y agoI'm curious, what makes the ML families different than Algol?
- andrewflnr 9y agoThe ML family tend to come from a research background, have a more rigorous approach to typing, solid type inference, and very differently flavored syntax. MLs are functional (first-class functions, expression-orientation), whereas the Algol family in the shape of C, Java etc are mostly imperative. They tend to have nice pattern matching facilities. There's more, but that's a lot of it. A lot of these features have been transplanted into languages that are basically on the Algol tree, so it's often a bit fuzzy these days.
- timr 9y agoFind a niche that rewards experience in something other than code. This could be non-technical (e.g. "business"), or it could be something more deeply technical (e.g. scaling, machine learning, search, etc.) To some extent, the older you get, the more this happens, naturally. But you can and should make strategic decisions about where you choose to devote your attention. The important principle is that you should devote your learning time to things that are more likely to survive. A good way to do this is to pick something that has been around for a long time. Knowing how to write an optimized linux kernel driver is far more long-term-valuable than, say, a Javascript framework. Knowing how to do quantitative marketing is even more valuable than that. The absolute worst thing you can do is to chase the new shiny every year. If you do that, you will never be more experienced than the most junior member of your team.
- madflame991 9y agoWhy would JS be less long-term-valuable? It's only 4 years younger than linux, it's more common than linux and has a much larger community (especially compared to the linux kernel driver one). I don't see either going anywhere in the next 20 years.
- timr 9y agoI changed it to "Javascript framework" to stop triggering the JS devs here, while making the identical point: if you specialize in a technology that was invented last year, you are taking a big risk that it won't survive. If you pick a technology that has been in active use for over 20 years and is currently popular, you are taking less of a risk. This is harder to do, but like many things that are hard, the reward is higher. I really wish it were possible to make reference to JS in a less-than-glowing light without being downvoted, but alas. Substitute any other brand-new technology for "Javascript framework" if you're having difficulty seeing the argument.
- GijsjanB 9y agoI did not downvote, but I do think JS is a bad example. JS has been active for over 20 years and is currently popular. Sure, new frameworks are popping up and everybody rallies around "the latest", but come on, it's not like Java and C# are written in stone.
- marktangotango 9y agoJava and Spring, or C# and .net. Java is derided as the next cobol, but there is a lot of new development, lots of jobs, and strong demand for senior talent. Source; me, been doing java since 2003. Age 40+.
- cgh 9y agoCan confirm. Also, I suspect a lot of this "there's no life after 40" stuff mainly relates to startups and certain small companies. It certainly doesn't apply to BigCorps.
- jcrawfordor 9y agoI suspect this is true. I hear the "middle-aged programmers aren't employable" story a lot on the internet, but in the large organization where I work I, in my mid-20s, am conspicuously very junior. Most of my coworkers are middle-aged, most of the program management are getting into their '50s, as you might expect of someone in a role seen as senior.
- brooklyn_ashey 9y agobut how many people who are middle age try to "enter" the industry and succeed? I can answer that for you: those who have close friends in power who wish to hire them. As you age yourself, you may see this if you are sensitive to it. We need to separate the two groups, because thrre are two issues here. 1.aging programmers already working in the industry and 2.those who are accomplished in another dying field who decided to/had the good fortune to be able to reeducate themselves in a new field for them--programming. It's the second group that have trouble even getting an interview, and when they do, are often passed up for a younger "junior dev" who is not as skilled. I realize I can only speak to what I've seen here in NYC, but I keep seeing it, and I see it a lot. So are we going to acknowledge it? i hope so. I hope we can find a way to allow people to change paths in life when their path ends, if they are humble and willing to work hard. That is the kind of society I'd like to foster.
- 9y ago
- pmontra 9y agoI'm 50 and I've been a freelancer since 2006. I position myself either as developer (Rails and jQuery back then, still Ruby and Python and Elixir now, I'm starting to code with React) or architect and coordinator of developers. That works well with small companies. I attend to tech events in my city (Milan, Italy) and I organize an event myself. It's a good way to keep the word of mounth going on. I don't know if this is a feasible strategy for the next 10 years, but who knows what's going to happen by then anyway. I'll adapt.
- spac 9y agoAnd how has that worked for you financially?
- pmontra 9y agoFair question. Reasonably well. I made more money with my last job as employee, which was paid above the average of the market. However I own my timetable now and I work mostly from home. That is worth some money too and it improves the quality of life, which is hard to quantify but it's very important. I'll never be an employee again unless I absolutely have no alternatives.
- gozur88 9y agoThe problem with freelancing is you spend a lot of unpaid time lining up jobs. Does that really pay off?
- svennek 9y agoBut that is why your rates are (hopefully) so much higher than an employee... Rule of thumb, your business should be viable at 50% billed time...
- dep_b 9y agoI spend a lot of spare time doing work for previous customers while being on a full-time project at the same time. Keeping multiple customers warm is a must. All paid though. A few weeks of not having a full-time engagement means finally being able to clear out the backlog and enjoying long weekends. Every year I take an unpaid break for over a month around the holiday season. I love it but it always is a bit scary to be away from customers at the same time.
- caffed 9y ago- Keep your knowledge/experience relevant - Stay focused and positive - Promote collaboration, ownership, and leadership Think of it like being on a first date: your idealized self. You're real, but like 120% real.
- Danihan 9y agoBe an ASM expert ;)
- AnimalMuppet 9y agoYou have to be better than you were at 25 (more productive, making fewer mistakes, able to take on greater responsibilities). You have to be better than you were at 30. You don't have to be as actively sought after. You should be staying at positions longer - 5 years, maybe even 10. (Note well, however: By this point, you probably have seen several toxic environments. If you're in one, don't wait - get out. Life is too short to put up with it.) I have a file where I keep track of headhunters that I think are worth their salt. I'll use it if and when I feel like it's time to move on. For the record, I'm 55.
- deleted 9y ago[deleted]
- j45 9y agoOne way to make it past 40 in software is continue demonstrating that you're learning, creating, releasing, and share it publicly like you may have in your 20's.
- neves 9y agoApply to a government job. There is less ageism in the Gov than in the private sector. At least in my country were you must do pass a very difficult and competitive contest.
- kelnos 9y agoUnfortunately, at least in the US, pay is not very competitive. Even with upward adjustments for cost of living in more expensive markets, many of the people on here with SV or SV-like tech jobs would end up taking a pretty large pay cut to work for the US government. (But it's of course a great option if you're in a bind and your alternative is no job at all. Or if you're a civic-minded individual who does it out of a desire to improve the sad state of our public services.)
- daSn0wie 9y agoLearn soft skills along with staying up to date on technical skills. Work on understanding the business needs and not just business requirements for your feature. Learn how to foster team growth, not just your own personal growth. Figure out processes to help the team and not just building your feature. Don't be intimidated by younger engineers who are trying to climb the ladder. Help them succeed.
- pjc50 9y agoI started at 21 and somehow just kept getting older. More seriously, having had a look around my cohort, there aren't that many people who've left programming altogether, and those that have have done so for personal reasons. Generally people have moved "upwards" and acquired management track positions. Small companies are good for this - because it's so flat you can easily get a high-ranking job title which you can then leverage into the next job. Look "up". Look at the older and more senior people in your organisation. Maybe even directly ask them about careers. Recognise that if nobody around you is over 30, you're either in a very unusual place like an SV startup or you've wandered into Logan's Run.
- gvb 9y agoI started at 17 (Basic on a terminal via a dialup modem to a mainframe). Physically, I age linearly n. Mentally, I age logarithmically 17 + ln(n).
- replicatorblog 9y agoMy father-in-law is pushing 70 and still coding. He just semi-retired, but up until last year he was employed, despite having little in the way of social skills and living in a remote area, far from any coding hub. If he was just a bit more personable and willing to move within a couple hours drive of Boston he could have fielded multiple offers. Pure anecdote, but if you're decent, have a little hustle, and don't mind working in a soulless office park, it seems like you'll never struggle to find a gig.
- kelnos 9y agoI'm not quite 40 yet (36), but part of what I've done is the specialization mentioned in other posts here (in my case, distributed systems with a focus on communications tech), and I've also cultivated my "product sense" to the point where (as an individual contributor) I'll often define and design a product and how customers will use it, in addition to doing the actual implementation. In that sense I have a little bit of breadth; I'm not "just" an engineer, I can also address the customer needs that lead to building a product, and then later refining it. Understanding customer needs and translating that into product definitions is something that will likely never go out of demand, and is needed in industries outside tech. And if demand for distsys goes out of style I'll just learn something else. I've already kind of done that, having cut my teeth on embedded systems, followed by a short stint in mobile before getting to where I am now. Judging by what I see around me, I don't see the strategy being any less effective in 10 or more years.
- empath75 9y agoI’m 40 years old and I have recruiters coming after me non-stop. 1) Don’t include irrelevant experience on your resume. Nobody cares that you were writing php websites in 1997. Try not to put anything on linked in or you’re resume that would indicate your age unless you’re one of the top people in your field and your experience makes you stand out. 2) Keep up with new languages. Don’t be the guy that only knows perl when everyone else is using python. If you aren’t learning rust and go today, you’re going to be left behind five years from now. And once everyone is on go and rust, you should be learning the next thing. 3) Stay curious. I know you have a family and kids and other commitments, but you have to stay interested in the world. Keep up with business news, and science news and stay connected with pop culture as much as possible. If you’re applying for a startup with a bunch of 20 or 30 something’s you, you need to be able to meet them where they are. 4) Don’t get complacent. You’re always a bad quarter away from getting laid off, and that becomes more true the older and more higher paid you are. Keep your resume updated. If recruiters aren’t beating down your door, you need to ask yourself why. Because if people aren’t trying to hire you, your employer probably isn’t excited to keep paying you either. I was a junior guy on a team with all sysadmins 5 years ago. They were all the same age as me, but with many more years experience all at the same company, doing the same thing and really resistant to changing. I came in and really dove into the deep end with devops, despite having little programming or sysadmin experience (I had a networking background). Within 5 years I was a senior developer, making more money than any of the rest of the people on the team, and eventually got poached by a recruiter offering 40% more money. They’re all still there barely holding on to their jobs.
- artmageddon 9y ago> if you want to hear how to make it past 40 in software, this is probably an excellent place to ask! So far in this thread: - continue to learn / evolve - go into management(well, someone will mention it) - Go into: consulting / start your own business / remote work I'm not too far from 40 myself. Any advice?
- astrodust 9y agoIf you're coming up on 40 you should know a lot of people. You should have a work history so ridiculously long you need to omit 75% of it to fit it on a two page resume. You should know the business, which companies are succeeding, which are failing, and what problems are most interesting to you. This is a huge advantage compared to some recent graduate that has no idea, knows nobody, and is still learning the geography of the industry. Don't stop learning. Don't stop making contacts, friends, and other connections. At some point you won't need a resume to get a job, you'll just need to know who to call.
- artmageddon 9y agoThanks for the advice(and I mean that in all seriousness)! I need to start making some more friends it seems, and while I've been employed for 12+ years, my work history doesn't quite meet that standard yet.. looks like I have some more hustling to do..
- astrodust 9y agoI've been in "the business" since 1988, so maybe my experience is different. In that time I've met, worked with, worked for, and managed a number of great people. It's not so much about hustling as it is developing meaningful professional relationships with people. You don't need to be a huge extrovert to make it work, you just need to engage with people. Solve problems together. Help each other out. If you get someone out of a jam they'll remember it, and when it comes time for a reference maybe they'll be there to back you up and vouch that you're the right material. It's pretty easy to go about doing your job without really paying attention to anyone else on your team or at your company.
- joe_the_user 9y agoIn a certain sense, if one has the talent, luck or planning to position one's self to make it in programming after 40, one may well survive to well over 40. One's position shifts from worker to expert. But if the fact is that a large percentage of folks doing programming a 29 won't be doing it at 45 and aren't going to have a good exit plan (if they made a high salary in that time), then in a sense what's being said is: "Programming is a dead-end job for those under forty" and about forty is the end-point for them.