When I speak about career options to people I lead, I say there is a senior level plateau. At that point, you have to be more intentional about growth. If you want to stay in the field, and you want to progress past senior developer (staying a core contributor is an option!), you need to think about where you are going. You can be a generalist, specialist, or outside of development. Going into management is changing careers, much like going into product development or farming.
If you want to be a generalist, you are looking to expand your influence as you tackle harder and harder problems. Tech leads are generalists. Architects are generalists. All of them have some form of technical leadership to help steer larger and larger efforts. You can also become a generalist that specializes in early startups: you are there to tackle any problem that is in front of the organization until it outgrows the need - at that point you can look for new pastures or help guide the organization while solving smaller and smaller problems.
You can also become a specialist. You learn, in depth, a smaller set of responsibilities, but you can build what others cannot. You can debug and solve problems others cannot. You can be a consultant, or a specialized shared service within an organization. You have options, but mastery is what motivates you, and that mastery can be very valuable in certain situations.
But that is career growth, not planning for the end of your career. Sometimes, that is a parallel track, like management or product. Sometimes, that's retirement. Sometimes, that's moving into another industry. I think that's what the article is talking about instead.
In my own (non-technical) case, I had a great 15-year run as a top-of-the-heap IC -- and then my outfit got bought by people whose business model had no use for what I did. Time to do something different, and with it being 2008, going independent felt a whole lot smarter than trying to find a new star-IC role in a scared industry.
Going independent was good for 7-8 years, but then my favorite partners at my favorite clients all got to the end of their roads. New faces; new visions, and the unappealing prospect of spending 3-4 years trying to revive a shrunken pool of business into something better.
A star-IC role opened up somewhere else, and it's been a great ride ever since.
It's the career equivalent of summers in Alaska; winters in the Caribbean. Sometimes the key to staying warm and happy is to be willing to move when the temperature changes.
Thank you for this. It really landed close to home for me.
The problem is a lot of older people seem to believe that once they get to a certain point, they're entitled a position and respect. Is it a wonder why younger people, who might be more up-to-date than them, don't want to work with them?
The trick is to never get that kind of "old" and remain a lifelong learner.
Most of the "new" ideas in computing (neural networks, quantum computing, etc.) aren't new at all. Not to mention that Linux and macOS are basically 1960s-style operating systems.
Knowledge of short-term technical details and skills at dealing with brand new systems are much easier to acquire than deep understanding of core principles as well as engineering experience.
Dismissing senior colleagues as "entitled" and their knowledge and experience as worthless and refusing to work with them as a consequence would be a grave mistake.
Neural networks are a good example. If you skipped the last decade (/two) and you think you know about ANN because you mastered them in 60s... boy do I have news for you. :) Another paradigm shift for me was React (declarative web frontend development), and let's not even go into the whole Rust thingthing
One of the biggest pitfalls of an experienced person can be lack of curiosity, and it is really easy to fall for it, because let's face it, most of the new things are crap and will be forgotten in a few years. However, there are nuggets to be found in the mud, one just needs to keep looking.
It's easy to reflexively dismiss reimaginings of things that have been tried and failed half a dozen times over the years. But sometimes the concept has been tweaked enough, the environment is different enough, the technology underpinnings are better enough that it actually works this time. Virtualization (z/VM--or whatever it was called at the time) was mostly a curiosity on IBM mainframes for years. Then VMware came along (and Linux on Z was pretty successful on IBM mainframes as well).
But also, React is doing things that desktop GUIs had figured out years ago. It did a really good job at distilling the essence into something useful. Angular started the trend of finally moving towards state-driven views. Kudos to all of these developers for making web development less sucky.
To label it as a new thing that nobody else had done before though, that's going a bit far. New on the web, sure. By the time these got introduced, I had been waiting for years for a web framework that incorporates some of the non-web lessons learned. Let's give it lots of credit, but not more than it deserves.
I never claimed it was "first" and I even called out "other frameworks like it." The iPhone was also not the first smartphone.
> CSS still makes layouts unreasonably complex imho.
This we can agree on. Though it could be a lot worse, and some of the newer CSS definitely gets rid of some of the warts. A lot of the bad CSS is mostly the backwards-compatible stuff.
If we stay with that idea for a second: FAANG companies have tens of thousands of engineers. Getting there isn't a "gold medal". You're barely in the stadium. If you made it to Principal Engineer, congrats, you've gotten through the qualifying rounds. Still plenty of room to strive.
There are plenty of valid reasons for why you choose or don't choose FAANG. But "Where would I go once I've achieved that" really shouldn't hold you back.
A startup probably won't be able to afford the standard of engineering that you can find at places like Google. There are good practices you can learn there that you probably won't see at a startup.
As a company scales up, coordinating effort across teams becomes more important for getting stuff done, even as a senior IC. You no longer know the whole stack (assuming you're an early employee) and have to ask other teams to adapt interfaces and add functionality to get your stuff to work.
However, that's the default at FAANG. Coordination is the name of the game and it's so meeting heavy because it's a lot of work to keep everyone aligned, on the same page.
You can learn interesting technical things either way, but it's easier to find a niche as a specialist at a large company. Startups usually need generalists in the early days.
I spent eight years at a startup (4th engineer, rose to chief architect after CTO left, was most senior engineer of 40 or so in co) and joined Google last March.
I learned a lot when I joined the startup (Rails was new to me) and I added some hard yards of scaling up database utilisation with very little extra hardware over the years, but the pace of learning declined over time and my degree of specialization increased as I focused on the biggest bottleneck the business had, technically - even while the business was of course more interested in fattening up its product line for valuation.
I learned a huge amount when I joined Google too, though a lot of that is due to the parallel universe quality of working at a company that had to solve many scaling problems for the first time and did so with inhouse tech which didn't become industry standard (I blame monorepo - it makes it too easy to have incestuous dependencies). A bigger part of the learning was the mode of getting things done between teams. I haven't learned much in terms of transferrable tech, but I have seen better engineering practices put into action, that we could not afford - and didn't have strong enough singular opinions on - at the startup.
I can say it's not the same things every day, everywhere. There is no end to the code at Google, there is more than you can ever hope to understand and it changes too fast anyway. At a startup, you can understand almost everything. More work is political at largeco, necessarily because the org tree sometimes needs shaking to get things moving, but also simply sociologically - a startup is a small team, largeco is a whole nation with internal rivalries and whole divisions that never need to communicate much.
And that is the root of all evil. Everything comes down to a screeching crawl. What could be done in a week by a couple startup folks now takes months or quarters (!). So yes, I don't think "standard of engineering" applies here :-)
In addition to all that was already said, this has the disadvantage of misaligning incentives. At FAANG (or any other big co for that matter), it pays to stretch projects and blow their complexity outside of any reasonable measure, just because the folks in charge of such projects benefit materially from more people and "bigger architecture". It is engineering bureaucracy at its worst, unfortunately.
In contrast, at startups it pays to move fast and one simply cannot afford growing unnecessary "fat", gotta stay lean or die. Obviously, some folks are more comfortable with the former (FAANG/big co) approach, because at the end of the day they just want to get their paycheck and go home, it's not about this job or that job at all. It's a tradeoff, for sure.
A "standard of engineering at Google"? You must be joking.
Best examples of engineering I have ever seen were done at 5-15 people startups. I'm proud of participating in some of those. FAANG on the other hand is a mire of bullshit.
I can easily see it being different elsewhere, of course.
I'm at FAANG and still learning plenty. I'm not here to hit an arbitrary goal but because I have to have a job and it pays well, so might as well turbocharge my savings.
But yes, you should always respect the journey. It never stops: keep participating in it, and keep your eyes open.
Needing to constantly keep up is quite unique to Tech, and is a good or bad thing depending on your outlook
https://www.bostonglobe.com/2022/02/22/opinion/ibm-e-mails-a...
While it's not true everywhere, age bias— even unintentional— means you've got to be pretty freaking indispensable no matter what our constantly changing tech landscape throws our way. We're not talking about the proverbial behoodied-27-year-old-led startup, here... this is IBM.
Offhand, I can't think of too many people (myself included) who are a) very happy in their jobs and b) planned very diligently to get to that exact space.
Mostly the opposite, "A lot of random stuff happened, I followed through on some stuff that felt right at the time, and just kind of did that over and over."
> Offhand, I can't think of too many people (myself included) who are a) very happy in their jobs and b) planned very diligently to get to that exact space.
> Mostly the opposite, "A lot of random stuff happened, I followed through on some stuff that felt right at the time, and just kind of did that over and over."
IMO, that's because most of the people who plan career paths diligently only look at one metric: "TC" (total compensation). They may say they value autonomy, growth, good teammates or any other number of things, but when it comes down to offer time most young people will reliably pick the highest offer, no matter what.
The more serendipitous career paths involve a lot of networking, identifying who you like working with and what you like working on, reputation building, and eventually flowing into a great position within your network. The pay may come slightly later, but it's a much happier path.
I don't want or expect to progress. I want to be part of a team, without leading it. As far as I know - the progression part of my career is over, thus my career is over. What next steps I could have taken afterwards are plentiful, but irrelevant.
I was thinking it, just not brave enough to say it outright when I typed my response ;)
Can you think of and describe anyone you know who belongs in xor(a, b)?
Among the happy people I see, most have the "randomness" I talk about. Among unhappy people, I see a mix of both.
Also on the front page today: https://news.ycombinator.com/item?id=30424181
And even if you don't change, the skills from the other domain may translate to your day job. The history of big innovations is littered with people who put the proverbial domain A peanut butter together with the chocolate from domain B. Lots of people have solved problems that you are dealing with, but you don't work with them and you may never have any reason to even be in the same building with them.
I played band in grade school, pushed myself hard, burnt out, etc. Learning classical piano as an adult has been a MASSIVELY instructive experience.
Here's why: I'm never going to be a professional classical pianist. Ever. It's far too competitive, I'm probably not talented enough, and it's not worth the effort.
Therefore, the ONLY reason I'm doing it is to find enjoyment and engage in the process of discovery. So it's clear to me that if I find my ego seeping in, it means I'm missing the point and sabotaging my real goals.
Enjoying the process is such a better way to engage with a skill. I'm having a great time and still getting much better (because getting better is simply a matter of consistency and good practice).
But saying "I'm going to practice 10k hours and then I will be happy" is like saying "I am only going to enjoy this hike after I've completed it." Friends: there's nothing enjoyable about the end of a journey, beyond reminiscing on the fun you had along the way.
Agreed. If you look even more pessimistically at this, it's also how workers get exploited by owners. You've attached your identity to something, making it a giant lever. I can push on that pain point to motivate you or to neg you into accepting less money for the work.
Most of those players have zero chance at a professional career, many by their final season know it. And yet they push themselves to achieve / try achieve great things or at least things they never thought they could.
I rushed the field for a game last year, talked to players who were ecstatic mingling among the fans / celebrating.
I like to think that benefits them / even me.
I guess the most important part is not caring about how it will "reflect" on you or what others will think: that is, trying to reduce the amount of ego goes into it. It's a subtle distinction.
But in my experience once ego takes over, the more subtle enjoyment can fade away and it can become tied to your self-worth, which can be miserable.
I mean, yeah, goals are still important, but you still have to respect the journey.
It’s always a matter of finding internal motivation. We get better at talking ourselves out of it as we get older.
Dude is waiting to crack open, telling himself he can fit the ideas from all the reading he’s recently been doing into the concrete pipeline of a career he’s built.
Mechanical Engineer->Baker
https://www.kqed.org/bayareabites/134975/at-the-midwife-and-...
No shortage of wineries:
Aerospace:
https://www.princeofpinot.com/article/680/
https://spectrumnews1.com/ca/san-fernando-valley-ventura/new...
Software: https://www.businessinsider.com/how-silicon-valley-prepared-...
Seems like starting a non-tech business for career techies should be a valid career destination.
Would you mind sharing a bit more about that? I.e. what did you do before, what are you doing now?
I ask because I'm looking for inspiration; my current job is comfortable and okayish but not leading anywhere. And I really dislike the company that I work for.
I changed careers at 30. Before that, I was a "Mechatronics Technologist" which means basically that I worked on automated machinery. I loved that job and did it for 8 years, and I was pretty good too... and I was actually happy with the money... but in that area of work, when you're pretty good, you tend to stay right where you are for the rest of your life. My peers had been doing the same thing I was doing for 25 years. I just couldn't see myself doing that.
Mechatronics includes a little electricity/electronics, mechanics and a lot of software... and software was always my stronger point, so I decided to become a software engineer. I changed to the night shift and went to university during the day. It was extremely tough, but I was so glad anyway!! I just loved being in the university again, this time as the older guy rather than the clueless teenager. Took classes very seriously, learned a hell of a lot.
Left my job in the last year to start an aprenticeship (yep, they do have those for programmers, just look for it)... getting 1/4th of my old salary , but at this point I needed very little money anyway.
After graduation, I quickly got a high paying job and loved every moment of it... after a few years there was some challenges, like working in shit places with shit people, unfortunately, but after moving around a bit I settled at a small company that has really nice people and who absolutely respect me for what I know and the effort I put into learning and teaching others... they recently gave me the pay rise of my life, over 25% , after I had alreay settled at the usual 4% with my manager :D. Just because they wanted to make sure I won't leave (after 6 years at this company, almost any developer would be thinking about leaving, and they're not wrong, even if I am happy, we tend to want to expand our horizons every few years).
Anyway, I am really happy working with software, I work on my own software even on my spare time because I just can't stop :D and it's really fun for me. Now that I am getting quite a lot more than on my old career, I am really happy just where I am (and I am not in management or anything , but what makes me happy is that I basically don't report to anyone: they trust me a lot and let me do whatever I want, which is great). I am well aware that finding a job like this is not easy and it took me many years to get it... but I thought that if you needed inspiration, this story might help you. Good luck to anyone reading and just thinking of starting a career change now! It's worth it!
I dropped out of college early as I just wasn't mature enough / ready for that kind of thing / + I suspect ADD made it kinda hard to manage.
I got lucky and fell into a job where I worked in tech support, for some high end networking equipment for mainframes, later for data center related equipment.
Good career, very good pay, but still tech support. I found I worked with engineering teams really well despite being not the most technically proficient person among the teams I worked in (good documentation and being honest with the engineering teams gets you pretty far with them...). So much so that that I eventually rethought my college experience where I wanted to learn to code but at that time classes were "here's a book on C ... now I'll read from the book at you".
After 20 or so years company I worked for was bought out (that's a whole series of stories) and by then I wasn't so sad to be in the group that was being laid off. I got lucky and got paid out better than most people in the US receive so I felt like I had a chance to make a change.
Honestly I suspect money / comfort in changing is really the biggest factor in serious career changes, for me the payout took care of that to some extent. IMO rando promotion to management is not a "SERIOUS" career change. The changes that involve "starting over" to some extent is where the big changes are.
I wanted to stay in technology but also "make things" not just fix things for customers / sales who couldn't be bothered to config something correctly / and so on. So again I thought of working with the engineering teams and decided to take a shot at coding.
I found web development was surprisingly accessible / tons of resources on the internet compared to my "read the book at you" college experience. I started learning on my own and eventually took a coding bootcamp (oh man that's another series of stories). In the bootcamp class I found that older me responded to classes completely differently than younger me. I was now ECSTATIC to have someone drop some knowledge on me every day, it was a completely different experience than college. I was honestly very sad when it ended I was enjoying it so much. I would have loved going back to college on a more formal track after the camp, but family, income, just don't allow for it.
After the bootcamp I got a job at a fairly small company and have been happily coding away for a number of years now / expanding my skills / doing new things. I get to make things all on my own, apps, services, try new things etc. It's great.
You can spend the last X years of your career doing performance art or spear-fishing if you don't care about returns.
Do you know if your new career is a career to your retirement, post retirement or only for a few years?
And that person doesn't realise it...
As I described it I think things vary from company and even job to job a great deal.
But I'm sure there are more than 3 ;)
People have all sorts of constructs / ideas about how careers work (based on experience) or how they think it works, or how they want it to work. I talk to some college graduates who tell me what they're planning for and have ZERO clue what industry they're talking about, their description is unrecognizable to me ... even tho I know it is the one I work in.
I find your experience and paths can vary greatly company to company, even job to job.
We all find truths we want to hold on to about work. I recall trips to the valley where my coworkers where astonished to hear tales of people doing the same work they did, but doing it slightly differently elsewhere in the country. Their view of how that job was done was entirely shaped by the couple places they worked (and everyone seemed to cycle through those couple companies). You'd think these folks though that if you didn't fill out the TPS report right to left that the world would end... I'm pretty sure the vast majority of people fill them out left to right but I didn't feel like telling them that, it might have been too much for them to handle.
" I think there are three main kinds of career destination, at least in the tech industry:
"I have no idea why those are the only destinations ... for an article worried about being happy that seems kind of limited.
The whole article feels very pie in the sky to me.