The most common seems to be to try and generalize, because relearning most of your job skills every few years starts to get annoying the 20th time you've had to do it. It's different when you are younger and everything is new, you just chalk up a major tooling change as just something else to learn. But when the next hot platform or architecture or whatever comes out you get tired of running in exactly the same place. You also start to get a long view on things, where all these new things coming out don't really seem to offer any advantage to you that keeps development fun. It's just more and more layers of abstraction and you start to see the nth demo of WebGL maxing out a 4 core modern GPU system doing exactly what you did 20 years ago with a single 32-bit core, 1/5th the transistor count and all in software. So how do you generalize? One word: management. You start to take over running things at a meta-level. You don't program, you manage people who program. You don't program, you design architectures that need to be programmed. You don't program, you manage standards bodies that people will be programming against. It's not a higher level, more abstract, language you go for, it's a higher level, more abstract job function. The pay is usually better and it's a natural career progression most organizations are built around. There's lots of different "meta" paths you can take. And because most of the skills in them will be new to you in your late 30s, 40s or 50s, they're at least interesting to learn.
The problem for some people is that these kinds of more generalized roles put you in charge of systems that do not have the sort of clear-cut deterministic behavior you remember from your programming days. Some folks like this, and look at it as a new challenge. Some hate it and wish for their programming days again. YMMV
So the next most common path is to just become more and more senior as a developer, keeping down in the weeds and using decades of experience to cut through trendy BS to build solid performant stuff. These folks sometimes take on "thought leader" positions, act as architects or whatnot. Quite often though industry biases will engage and they'll be put on duty keeping some legacy system alive because their deep knowledge of the system lets the company put 1 guy maintaining half a million lines of code in perpetuity vs. 10 young guys maintaining the same, who all wanting to leave after a few years to build more skills. The phenomenon is best seen as the ancient grey beard COBOL mainframe guys. Some people love this work, they can stay useful and "in the game", but some hate it because it comes with the cachet of being stale and not keeping up with the times. YMMV
Probably the third most common path is to simply branch out and start your own gig. A consultancy or something where you get to work on different things in different places on short engagements. The money is good while it's coming in and you get to make your own hours. At some point you decide to keep doing this till retirement (if you can keep finding work) or to grow your business, in which case you generally end up doing the meta-management thing. There are thousands of these little one-man development shops like this and I wouldn't be at all surprised if this is more common than third on my list.
Probably the next most common path is to just get out of development entirely. The kinds of logic, planning and reasoning skills, plus the attention to detail required to be even a half-assed developer, can be extremely valuable in other fields. Lots of developers go into Systems security, Business Analysis, Hardware, etc. With a little schooling you can get into various Finance, Scientific or Engineering disciplines without too much fuss. The money isn't always better in these other fields, but sometimes the job satisfaction is. Again YMMV.
Some folks will try to be "architects" (used in quotes because there are lots of definitions about what that means), and some will go into management.
As a coder, your pay will definitely plateau. One of the interesting things about the current situation for 'rock star' coders is that their pay will plateau faster, this will be a problem for them later. If you can get a number of people on the same page to build something bigger than what a single person can build (not so much management as technical leadership) then you plateau will be a bit higher (roughly 20% if you believe salary surveys).
Keeping it fun is key though.
Mine seems to keep climbing. I'm hearing reports of >$300k, and have received an offer in that range myself (counting signing bonuses and stock grants). Granted my pay might plateau there, but honestly that's enough money to keep me happy without having to see it go up every year.
I'm a total generalist, but I also have a few areas where I would qualify as a specialist; that offer I'm sure was because of the specific skills I've built up. I've also been programming professionally since 1989, and I try to keep learning, which can't hurt.
Agree that keeping it fun is key. :)
There are two problems with hitting a plateau @ 300K: Housing costs and College Tuition.
At the traditional 3x debt to gross income metric, your home mortgage would be capped around ~$900k, vs the $1.3-1.5MM range of current trading prices. Which is not terrible if you lock something in. However, once you are at 4x paying for schools becomes a far greater challenge. You could be looking at anywhere for $175-250 per kid. So, capitalize this and you are at $350-500K. That is, your combined "future obligations" would be something in the range of $1.7 to $2.0MM (exclusive of retirement). Which is something closer to 6.5x gross income. Which is pretty highly leveraged. You're after tax cash flow without real-estate tax shields could easily be ~200k, so you are looking at something like 10x cash-flow leverage. That is about as high as most PE guys will take a decent c-corp.
Just start shielding your income and assets as soon as possible. Strategize to minimize exposure to asset inflation (housing, education). The IRS (tax man) and the "doo gooders" in academia (ironically, the new "alternative minimum tax" man) have really boxed in the middle class (read: the not-rich enough) from the perspective of lifetime earnings. Most of your "savings" will be at risk to get swept from you, thanks to "financial aid" effect driving college tuitions.
These numbers get bounced around every now and then but they are worth considering. Inflation in "raw materials costs" for knowledge workers (kids) need to get passed on to customers (ie, employers) if you want to stay in the same place (red queen effect and all that).
This is relevant when you are evaluating career moves down the road.
3 bedrooms (Weekly Average Prices, San Francisco)
I understand that everybody wants more money - hell, I want more money too. But a lot of that is because everybody wants to be in the top 1% of nice neighborhoods, nice homes in nice neighborhoods, nice colleges, etc. You can have a life that is just fine on far, far less than $300K/year.
>And a lot of people who don't understand working in tech
Boulder, CO, has the highest density of people working in tech in the country. You were saying?
Edit: Oh, I see - you've confused me with the person way up-thread with the $300K income, I'm not the same poster as he. I don't like to reveal my income on the Internet, but I'd describe it as "enough", so, to answer your question:
1.) Be alert to pure, dumb luck when it happens, and willing to take advantage of it - including dropping previous plans - when appropriate. I thought I would always work in small companies or startups, but I applied to Google in the depths of the 2008 recession and somehow was accepted, so I figured I'd give it a try. I've been there 5 years, with a fairly generous option grant, and the stock price has quadrupled in that time.
3.) Be curious about the world around you, and in particular, about what the people around you are doing. Every single job I've had, I've gotten through my network. In some cases, those connections were several years old, but I reached out and asked them what they were up to and it turned out what they were up to needed people.
4.) Don't be afraid to leave when you've outgrown a place.
With one caveat:
>Always hone your skills so that when an opportunity arises, you can pounce.
My strategy has been to follow my passions, which include digging into various technologies that interest me. I don't do it "so that" I can be relevant. I do it because it's fun.
It just happens that, when you get good enough at enough things, you'll find that at least some of those skills are in demand. I know a lot about so many programming topics that one coworker just accused me of having "an encyclopedic understanding of just about every topic."
A lot of people have their curiosity tortured out of them by their experiences in school. Anyone reading HN likely is at least on the road to lifelong learning, so anyone reading this is likely on a path that could result in a strong salary. To those who complain that reading about every latest new technology is boring, I say: Find your childlike curiosity and reclaim it.
Luckily, since you're making $300K you have essentially no problems outside of this. Aside from your sourpuss attitude.
I moved out of the Bay Area and own my home outright. The offer lets me work from home where ever I want (with some restrictions). So home cost isn't relevant to me.
And on the college tuition front: While I wouldn't necessarily advise it of today's high school graduates, by the time my kids are ready for college I don't expect college to look like it does today.
Or rather, I expect companies to be more concerned with what you know instead of how you learned it, and with the huge movement toward making effectively entire college educations free online, I think that the face of college will be transformed -- and made correspondingly less expensive -- by then.
It's already true to some extent, and if the question is between going into serious debt or getting a college degree, I think the prudent choice might be to use free or inexpensive online courses to get a degree rather than piling up serious debt for a questionable advantage in getting a job. It seems like "free internships" are already the way to get on-the-job experience, and that's a lot harder to accomplish if you've got a huge debt that's demanding to be paid.
In addition, politically speaking I think we're at the extreme right end of the pendulum swing right now, and once things swing back a bit to the left, state schools will become more affordable again. A lot of the rise in costs has been correlated with the fall in state funding. Though the rest of the rise in costs can be attributed to the rise in administration salaries; almost a half million/year for a UC Regent?  How much value can that regent possibly be bringing to the UC system? How many others like him are burning up the money that people are paying to get a good education?
It also happens that the same basic financial strategy one might employ whilst making $30,000/yr applies whilst making $300,000/yr. That is, spend less than you earn.
Or to put it a little more brazenly:
Debt to gross income metric? You fucking make $300,000/yr! Why on Earth do you need to be borrowing money? So you can afford to live in the bay area? So you can "put it all on black" investing in something-or-other? I'm not saying you're wrong to do it, but for Christ's sake don't complain about not having enough opportunity. Your problem isn't your leverage, it's your stupidity.
Spend less than you earn!
If your $300K/yr job is in the Bay area, and you like the job and area, it seems eminently reasonable to borrow money to buy a house there.
All the families I know in SV are either lawyer/finance/medical, 2-income households, or cashed out.
There are in fact lots of developers doing nothing but development making well north of $200k. That's less than a $100/hour bill rate, which is not at all uncommon as a contractor. If that's something you want, know that it absolutely is attainable.
I think you'll find that, in all walks of life, people who make lots of money tend not to post on internet message boards (or salary surveys) about how they make lots of money. Definitely don't take the lack of people spouting off here about their 1%'er incomes as a sign that those people don't exist (or aren't, in fact, here reading this thread).
I don't think that's accurate. Most? Really? Maybe the top 5 or 10%, and in most cases I suspect they are team leads with 3+ devs either reporting or defacto following their lead.
It's absolutely not the case outside of USA coasts.
Can someone give more information/source on this?
300k is definitely not the tract most programmers are on
No, you don't see this in start-ups. I think HN may skew toward people who usually work in start-ups, so the perceived average will be lower as a result. Until this recent offer, it was my perception as well.
And no, that's not quite my pay grade, but a lot higher than the plateau that I think people are imagining. I think some developers do get sick of the programming, or they stop learning and go stale, before they get to be an anomaly like me. ;)
Also, making $150k with a $150k signing bonus is not anywhere close to 'making $300k'. What do you earn in year 2? $150k (plus whatever raise and annual bonus, but annual bonuses don't typically make up a huge part of your annual income in software, as they do in finance).
Almost the same in cash, but a little more in stock grants.
Years 3 and 4 have a lower salary but much larger stock grant vesting, that at today's stock price mean that I'd be making roughly the same amount in each year. If their stock crashes, then I might leave, though they mentioned that after the second year they may up the stock grants for the following years.
And if their stock keeps going up (as it has been), then I would be getting a de facto raise in years 3-4. But I'm fine with the first 2 years; my personal burn rate is low, and it would let me work on personal projects full time again after the two years are up.
Several people I know are in that range. But they all specialize in one thing or another.
My gross comp is ~$350k, 60% cash.
The 3 main learnings that I've leveraged to get that high are:
0) be the top performer on your team, no excuses
1) ask very explicitly for the things you want 
2) negotiate from a position of power (have a BATNA )
 "I'd like a raise" != "I'd like my salary to be $X"
Personally, the only people I know in the 200+ club are in some form of management and rarely, if ever, code anymore. But then we are back into the anecdotal realm..
* Machine learning + finance
* iOS (I know several examples here)
* Enterprise Java
* Embedded development
* Specific scientific expertise (a friend is into optics and diffraction and makes $250/hour freelance, with some coding and some design)
I don't know any COBOL programmers. Or at least if I do, they're in the closet. :)
This is universally from big companies like Google, Apple, Amazon, Facebook, Microsoft, Ball Aerospace, etc.
But I'm not counting it right now, regardless. The cash part of the offer is entirely enough to keep me happy for each of the first two years, and the stock is a bonus.
Starting in year three, though, compensation is nearly half stock. I did code through the 90's, so I'm going to take any stock valuation with a grain of salt. I'll reevaluate my options at that time, if I decide to stick with them for that long.
I think that if salary levels hadn't been effectively frozen starting from the '70s until now, $300k would be about "normal" for a middle class income.
It's not that $300k is a lot of money, it's that the people of the US (and the world in general) have been cheated out of their share of productivity improvements. There's a great video that talks about stagnant wages and the problems that are the underlying cause of the recent collapse(s) of the economy. 
I'm 35 and just changed jobs from the first path described here to the second. I had been in the software architecture group at a typical bigcorp. It was actually a pretty good career progression as far as bigcorps go, but just wasn't a cultural fit for me. I had no interest in supervising and mentoring and directing other programmers, I'd always rather just do it myself. I'm a coder at heart and don't think bigger than that. I hated it and wished for my programming days again, just as you said.
My new job is with a small company, you could call it an established startup but it's not really looking to grow and exit, it serves as a lifestyle business for its founders. This has me on your second path, using experience to cut through the trendy BS to just get stuff done. It's mostly legacy .NET maintenance, but I actually enjoy carving out and solving and tweaking these sorts of problems more so than building new stuff. I'm probably going to become stale and outdated in another 5-10 years, a .NET version of the COBOL dinosaurs, but I'm fine with that and don't have any drive to advance more. This can work because I'm also on track saving aggressively enough to just retire from full-time work by then.
Your third path of a one-man development shop has attracted me for years too, except for the fact that it tends to really be sales in disguise with the programming coming secondary. I'd do this in a heartbeat if the work found me, but don't have any desire to go pound the pavement to find clients and deal with all the usual self-employment headaches like getting paid.
There are obviously vast worlds of software engineering outside of web applications. Embedded/real-time systems, programming languages & tools, robotics, graphics, bioinformatics/computational biology, machine learning, machine vision, the list goes on. Why not "pivot" your career into a completely new subfield? The downsides: you will likely need to take a year off for self study and to build up a body of work to land you a job, and you will have to take a pay cut. But you will be able to build stuff, will remain excited on the edge of your field, and might be able to have a fresh slate and replicate those feelings you had when you started off in the first place.
C/C++, ML, data analysis with Python/R or learn more domain specific knowledge such as Bioinformatics or graphics or quant finance? Much appreciated, thanks.
1. Web development (transport-level and higher networking, HTML/JS/CSS, PHP/Perl/Python/Ruby, using databases, etc.)
2. Enterprise software design (domain modeling, OO programming, system architecture, scaling, security)
3. High performance (algorithms, advanced data structures, C/C++, memory management, DB internals, internet-layer and below networking, cryptography)
It sounds like you want to get into 3. A good way to start is algos/data structures. Almost all the fields the parent listed benefit from a very strong foundation in computer science: discrete math, linear algebra, algorithms, advanced data structures, etc.
Data analysis with python/R is more for scientists and mathematicians, not software developers. If you are being paid to analyze data as a programmer, usually you are analyzing very large data sets and you will be using a much more performant language or possibly even a highly parallelizable paradigm like MapReduce.
My current job mixes those three categories nicely and I love it :)
There are some decent bioinformaticians out there, but most of them write crap 100 line scripts, and have very little desire to learn more than the basics. I am getting increasingly frustrated, as I can see I am clearly writing significantly smarter software then these people (most of them are just counting things and plotting the counts on a graph). I am seen by management as being the same kind of skill level / skill set.
If of course you are really interested in the research, then you may like it, but do not expect your coding skills to be valued.
I don't really mind the management slights as it's an occupational hazard of a programmer. What bothered me about academic research was how the doors were shut for you if you did not pursue the traditional PhD/post-doc path of life sciences research. Also that pure Bioinformaticians even with academic pedigree was considered lower in the pecking order in comparison to "wet-lab" folks.
As crazy as it sounds, I really miss the days of writing Perl scripts (Python probably now); running BLAST and plotting Information Theory graphs. How do you like your current gig and what do you recommend for someone who is looking to jump back into it?
Apparently most labs have a shortage of bioinformaticians (at least that's what I hear here in Europe).
Yes, having a PhD will be helpful if you are looking towards a more research oriented side of things. If not you are more likely to be more of a technician, and your work will be a bit more production like.
My advice would just be to look at institutes that you would be interested in working at - their job pages. I am sure you could start with more production style things and move into a more research oriented role.
Here is the jobs page for science park I work in in Barcelona (pay doesn't sound much compared to the US). Not much up there just now, but I know we are hiring more people soon.
I am doing this myself. It's a risk but I think the rewards are worth it!
I'm at an inflection point these days on whether I want to push forward on the management path or go for the third path, as you mentioned above.
The management path seems to be the path of least resistance, but getting into the politics of management is unappealing. Also the level of competition for management jobs is at another level. As an engineer, I'm used to having jobs thrown at me left and right, but it seems like engineering managers compete for jobs quite a bit more. It feels risky to go from something with high demand to something with clearly much lower demand.
The third path is very appealing from a satisfaction standpoint, but clearly a lot riskier, especially for someone US-based who needs better healthcare as they get older. Also the feast or famine nature of consulting can be a little brutal. I think a combination of consulting plus products is the best bet, but it can take a while to get that going.
FWIW, the few folks I know who tried to stay on purely technical paths ended up regretting it many years later. While the ones who went into management merely lamented the loss of their hard earned technical skills.
Anecdotal, and I know there are lots of people on HN with counter anecdotes, but think forward 10 or 20 years and see if the things you don't like about your role are things you can continue to tolerate or not. The grass isn't greener on the other side, but sometimes new problems are easier to handle than the same old problems over and over again.
Also, don't make the mistake of thinking going into management will give you more agency as an employee. From a non-management position it feels like those "higher" than you get to call the shots, but quite often a good manager is creating space for you to get to run your day-to-day and is boxed around almost daily by those higher than they are.
You see people who you hired as young developers end up, years later after going the management track themselves, in regular face to face interaction with the CEO or senior corporate executive VP or whatever.
Their peer group seems to have more control over their own destiny or more power or however you want to frame it, while they're still stuck bootstrapping yet another CRUD framework for the nth time and answering to a department head who's now younger than they are and getting younger every day.
I think, when that inflection point comes, you have to decide if you're okay with being in that position, and if working with the tech is enough for you...for some people, they honestly don't care about the careerism bit and just simply enjoy the bit twiddling and never get tired of doing it. You really have to decide if you're one of those people and it can be really hard to do so.
One mistake I see often is people, hitting that inflection point, conflating the pride they have in the effort they put into gaining the knowledge they have as being the same thing as the love of the art. And also the fear of jettisoning that life-style (and yes, development quickly becomes a lifestyle), for something entirely new and different with an entirely different set of skills that often have to be learned from scratch.
You're contradicting yourself when you say on one hand you're used to having jobs thrown at you and then saying it's clearly a lot riskier. From my point of view there's way too many management/analyst types trying to get those management positions. The politics is no joke. You have to be really good at it and in some ways you have to have no soul.. just kidding! ok maybe a little ;-)
anyway, going solo and starting your own thing, if done right, is more rewarding on all levels. less politics, more tech stuff you love, better pay (that totally outweighs the cost of having to pay for your own insurance), better hours (however you define better hours for yourself), not having to do any "company contribution" for someone else's company, the clients treat you better because they know you're the expert, etc etc.
Granted, it took me almost 15 years working at bigger consulting firms before I wised up and went independent. And maybe I could have done it sooner, who knows. But I highly recommend it since you don't like "the politics of management". The trick is to find one good solid gig. Just one. And there are enough of those going around.
Some people don't mind that, or even enjoy it. For others, having to deal with all the tasks that go along with running a business, in addition to being the sole developer, can make life much less enjoyable. Especially if you're not fairly well set financially and would have a hard time enduring lean periods.
Not to say it's bad, it's certainly rewarding to run your own business and you gain a lot of freedom. But it's a tradeoff, and one that might not suit everyone.
for example here in the DC area there are lots of independent contractors that have steady multi-year contracts. as long as you're not total dead weight you do the hourly thing for a long time. many years. It's more rare to find those folks that go from solo gigs to having other subcontractors going through them too. That's when all your points become really important. But you can be solo and not have to deal with a lot of that stuff you mention.
Wikipedia has a decent breakdown of the various clearances btw: http://en.wikipedia.org/wiki/Security_clearance
From a non-management type, I have loved working for managers who can play the politics part, in a level headed way that keeps awareness of and effects from politics out of my individual contributor's life, and at the same time understands what I do and what can reasonably be done.
I've been working for more than 20 years (still an individual contributor), and I can think of two managers in my history that fit that description. If you think you can do it, you'll improve the lives of a lot of developers.
Our jobs aren't like that at all. We may not be able to handle 48-hr caffeine-fueled marathons anymore, but our experience tells us that those are a bad idea anyway, and we wouldn't do them even if we could. That experience is valuable, giving us insight and true productivity, and lets face it the job is sitting at a desk... we can do that well past retirement age, since we'll be doing a lot of sitting around anyway.
The difference between a programmer and an athlete is that the programmer is better at math and can save and invest and not piss away money, and enjoy an early retirement without lifelong body damage.
10 young guys? Sheesh, back in my day it was just two of us, and that's how you started. Learned a lot about systems, architecture and most of all, how NOT to code. It really is a crime youts of today don't have to slog through legacy for a year or two before being given the keys to the sexy projects.
I wonder what all that google legacy code looks like, and how often the n00b says "I can't understand all this, I'm going to rewrite it all from scratch."
"Sometimes I have to leave a company when I get promoted to the stage when I can’t code anymore"
So yeah, he's one of the most important figures in aerospace of the last century. Billing him as 'merely' the guy behind the SR-71 is actually selling him short.
Not so much a career choice, but simply finding the next relevant challenge. Still in software development, but I can see myself shifting out of software altogether.
It still surprises me that from starting out as a shy, introverted computer geek one of my primary responsibilities is now people management. But like programming used the be, the fact that it's hard is an important part of the challenge.
Another friend started out in programming and IT, but he migrated to a sales engineer job where he works for [big infrastructure vendor] to design solutions for their clients.
It's the ultimate generalization: being able to run a complete business.
> The problem for some people is that these kinds of more generalized roles put you in charge of systems that do not have the sort of clear-cut deterministic behavior you remember from your programming days.
Can you expand a bit on this? What do you mean by "clear-cut deterministic behaviour" ?
This is really the gem for those who don't want to take the MGMT route. But the tough thing is advancing in your pay-scale, etc., and really showing that your skills are really that much better than the young people who cost less.
You can get this in a straight-up programming job, too, if you take on in-house development for a big company, eg a bank. I am doing that right now, and while there's lots to complain about banks, the immediate contact with the users is a great change from making shrink wrap software.
I must have dreamed it then.
And so must have the 180+ people hired to work on various parts of it who are not part of EDS, IBM and BT.
2. Architect or senior specialist, this is probably the most nature and common development as programmers age. However, most of them often become technological dinosaurs when distance self from hands on works and not able to keep up for too long. Analysis turns into paralysis, abstraction turns into distraction. Their value is reflected mostly in legacy system of those business functions slow to evolve. But every ten years or so a major platform revolution usually throw them off the bus.
3. Get into other profession where their long time disciplined training as a programmer can benefit. As stay out of the pressure of fast pace technology evolution, this career could be a winning path if you're never a passionate programmer and ok to settle for a 9 to 5 job waiting the day to retire. But the problem is, most programmers are never the type of person who can settle with these kinds of work to begin with. Admittedly many are, who have programming as a 9 to 5 job, would find this path with ease if money is not a priority.
4. Entrepreneur at an older age. The upside of this path is obvious. Years of experiences go both technology and human will greatly benefit your business operation and market. True, this is another form of management, but different from corporate management, the personal achievement, responsibility, idea, build, essentially a manifestation of programming at its grind level. If programming is toy play, running a small business is the real deal. If you're ever good at programming, it shouldn't very different to create once own business.
You can still code, but you'll usually need a "Director" or "VP" title (increasingly, you see Directors and VPs without reports, perhaps as organizations realize they actually need experienced people) after 40, because you're going to know (one hopes) how to do things right and be infuriated if you don't have the organizational credibility to do things properly.
The technical skills that non-techs evaluate us on are the constantly changing, coarse familiarities, and the PYTs they listen to are going to be similarly biased in favor of hot new flavors. This isn't a meritocracy because, in truth, it's only easy for a good person to prove he's good through technical work if he either (a) controls the tech stack, or (b) selects a company with a tech stack he's already well-matched with. The problem with (b) is that companies are always changing their tech stack (hence, the zillion pointless flamewars). Otherwise you have to get some other, more legible, credibility (the "X") and transfer it over to technical decisions.
I'm aging in reverse. I was a cripple in my early-mid 20s (cyclothymia) and at 30, I'm probably healthier and more energetic than average for my age. I still have cyclo, but it's managed and I lose less time/health/energy to it than the average "bro" loses to alcoholism/hangovers. Because of the cyclo, I can achieve an incredible amount in a short-term job (say, 2 months) but the superficial reliability that most organizations care about is not my strong suit. So I've seen a lot. No one would call me "old" but I definitely know what it feels like to be "overexperienced". It sucks.
I think you're getting confused by the other phenomenon involving roles, which is that once you accept the management track, you start losing dev mojo; cf. the CTO who loses their commit bit.
It's not surprising that there aren't that many "distinguished engineers". If you'd entered the modern field at its inception at the start of your career, you're only in your early 40s now. As an employer of several people in their early 40s: they're not particularly distinctive looking. Maybe you know more than you think you do. Anyhow, look at the demographics and wait a bit.
I can't tell, is this humour?