"It’s obvious the game has changed" - it's obvious you haven't been in tech all that long. ;) that was a joke answer - no offence intended :) But seriously, I've heard "the game has changed" many, many, many times over the last few decades. Its true. The game is constantly changing. :)
"what you all are focusing on to stay employed in tech". - Same answer as its always been. Be reliable, show up, get stories in the Done column. Be friendly, nice, help others when they're stuck, ask for help when you're stuck, do a mixture of work, some with new tech you wanna learn, some on old legacy stuff or things other people don't like so they're grateful you did so they didn't have to and want to hang onto you 'cos you know the codebase. Look after your boss :) People forget to do this. (not being a sycophant, just genuinely making their life easier and trying to be not too much of a PITA to manage). If a job ends up being stressful / non-fun, or you're locked into all old tech with no future, then ask for a change to the role, or move jobs internally or externally.
Ha ha thanks for the kind comment. :) Well I ought to know some things, been in the industry that long. BTW, despite the above tactics I haven't become financially rich from Tech - probably could have done if that was a priority, but , that's my other piece of advice to people, prioritise happiness, fulfilment and relationships with others especially family and friends, over money, 'cos "You can't take it when you go" , and people matter more. The wonderful luxury of working in tech is, salaries being what they are, you can take the middle path, balance life and work, while no-one's gonna starve. :)
Stop following the crowd. Where the crowd is, there are lots of people after your job, and if we're honest, probably better than you.
I've had one job my entire career (31 years and counting.) It's very niche tech. I'm good at it. There are maybe 10 other people in the world who can do what I do. And they're all overworked.
The real value and security in tech is in the edges, not the mainstream.
It sounds like you found your ikigai. Wishing you continued job stability, satisfaction, income, delight, health and peace. It's wonderful to read things like this.
For anyone else reading who is unhappy, uncertain or struggling, I hope you find the same for yourselves too. I probably don't know you, but there's complete strangers out there who want good things for you too. Don't give up.
Curious how this works out financially though. Following the crowd got people into faang with 500k incomes. Working on something obscure I haven’t seen payoff the same.
It varies. Some specialist skills pay -really- well. You don't really hear about them because they're, well, niche.
Equally, yes, some folk rose up through the ranks at fang (or better yet fintech) and make mountains of loot. For each success there's a fair pile of failures though.
To rise up through those ranks, typically you need to make sacrifices. Long working hours, minimal time off, stand-by weekends, emails at night, and (imo) suffering the bs that comes with corporate jobs.
Building your own business are all those things too, but without the corporate bs.
The interesting thing about 500k though is asking what you can do on 500k, you can't do on 300. Or 200. Or in lots of the world, 50.
Time left for relationships, children, holidays, other interests and so on are important to me. So I'm prepared to balance those with raw income. I'm not making anything like 500k per year, but I've turned down fang recruiters because all the money in the world can't make up for what else it would cost me.
Are you that engineer that fixed that AS400? Back in the early 2010s, there were like 5 people across, the whole UK who could work on those mainframes.
Not me :) - but that's the sort of thing I have in mind. I remember mainframe folks in the run up to y2k getting literal "blank cheques" to work on stuff.
I would be really interested to hear about what you do. If you don't want to share it in public, you can email me at the address in my profile. I'm always looking for a niche, but I haven't found one that has stuck.
I heavily disagree.
To preface - I have a recent and a successful PhD in Comp Sci. During grad school I've known active grads who jump onto the "next big thing". Well, long story short - almost every "next big thing" eventually dies down, every single one of them ended up being a generic Software Engineer after heavily specializing in the "next big thing" because, unfortunately, the cycle of the next big thing just keeps on rolling and within 3-5 years the current "big thing" may become entirely irrelevant, which ended up being the case for them.
I understand this might not be very helpful, but I suggest doing the footwork to figure out the intersection of something you truly have an interest in as well as a tech with a potential and specialize in that.
It’s a trap to be scared and try to gamble on near future.
By the time most of today’s wannabe AI gurus are good enough to get a decent job offer - AI would not be such a big deal (best case scenario imo).
I didn’t notice any “obvious” changes in the game that weren’t there before.
For instance I don’t see anything different in requirements and comments of HRs reaching me.
JVM is still same jvm, bugs are still bugs, unit tests are still unit tests.
The fact that now instead of googling a problem you google and gpt it is a minor change in any real world complex engineering context that im aware of.
I agree on the AI stuff ... personally, I think it's going to need 5 years or so just to iron out all the legal and regulatory stuff before the 'next big push'
In general, I think you make your money in Tech at the ends.. Either bleeding edge or trailing edge. ATM, I'm working on Rust, serverless, playing with Pijul, keeping an eye on OpenTF, and pulumi.
For trailing edge stuff - I figure I'll be the worlds oldest COBOL coder by the time I retire and can use that to fund my retirement :-P
There are certain aspects of computing that will probably always be around. We'll always need fast compilers that generate fast code -- people don't want slow programs, and programmers don't want to wait for compiles to finish. Relational databases aren't disappearing anytime soon. And as we keep getting smaller and smaller devices, we'll keep shrinking things down, so we'll need new ways of representing and compressing data. The list goes on and on. If you can get comfortable with things like these, you'll always be useful to somebody.
(And yes, COBOL will be with us for many years to come. In the next century, we'll probably be emulating IBM mainframes on quantum computers.)
I think AI will still be important, but the AI of the future won't look like the AI that we have today. People have a tendency to redefine "AI" to mean whatever the new hotness is -- LLMs today, deep neural nets a few years ago -- but new things are created all the time, and fads always change. When I started grad school for comp sci nearly 20 years ago, I worked with a group that was big on "AI", but we were dealing with multi-agent systems. No neural nets or super-intelligences or anything like that. Neural nets were actually considered passé back then; I vividly recall a professor telling me that SVMs (support vector machines) were stronger than neural nets, because SVMs had a stronger theoretical foundation and were more amenable to mathematical analysis. Neural nets, on the other hand, just happen to work -- but they happen to work very very well! Deep learning didn't gain traction until after I had finished grad school.
The LLMs that we have today are amazing, but there is still plenty of room for improvement. Having to train it on a huge dataset is problematic for some uses; perhaps there is a related structure that can be trained more easily and more quickly. That would also reduce the effect of OpenAI's monopoly. LLMs also have specific weaknesses, like poor performance at arithmetic. At this stage, I wouldn't really feel comfortable feeding problems into an LLM and presenting users with the LLM's answers. It's still the Wild West in many aspects. There is always an improvement on the horizon, but it's hard to tell where it will come from and when it will come. Maybe we'll have LLMs that really start to resemble intelligence, or maybe we'll have a totally different structure that does everything LLMs can do plus more.
The obvious thing is gpt-6 (or even gpt-5) will be able to do your job better and faster than you. This will happen in 1-2 years. That doesn’t scare you?
I am bearish on that prediction. I’m not convinced LLMs can scale that much more. Of course, I’d be happy to be wrong. In that case, I’ll leverage the tools to become more productive.
Knowing how to code doesn't make you a Software Engineer in the same way being able to read and write in English doesn't make you an author. If you truly believe the current and future iterations of GPT can code better than you, look to elevate your own skill.
If ever, a GPT-like LLM/AGI ever exists where it can distill business requirements, understand modular designs and intelligently establish complex relationships between different systems and contexts, then 99% of all jobs will perish.
This will be an unprecedented disruption at a macro scale that humanity has never seen before. All of our current economic models will be instantly trash. How likely do you think this will happen? If it does, there's no real incentive to have these systems produce anything because no one can afford to buy anything. A global revolution would be inevitable.
let's bet 1000USD that in 2 years there will not be even 2 confirmed real cases where any algorithm is doing a full time job of senior+ software engineer?
I am a devops engineer working mostly with platform engineering managing over 80 eks clusters, I am learning more AI an embracing AI, it makes my job much easier and helps me write tooling faster. I notice people at work that resists AI and like to do things the way they have been doing it for years. I wrote an Azure wrapper that helps my team debug kuberntes issues in real time using AI , it also analyzes deployments and makes recommendations and this has caught the attention of teams that are now using my tool to debugg their workloads.
My company already is doing a hiring freeze and we have a lot of work so having tools like OpenAI has been invaluable to help me with my daily work.
> I wrote an Azure wrapper that helps my team debug kuberntes issues in real time using AI , it also analyzes deployments and makes recommendations and this has caught the attention of teams that are now using my tool to debugg their workloads.
I don't think it's obvious that the game has changed at all. I plan on doing what I've been doing to stay relevant in my career so far: keeping my skills fresh, tackling new problems, etc.
Not writing JavaScript for money ever again. I switched careers. Now all future jobs will either be in management or require certifications or someone else more naive can have it.
My solution in general terms is to go where competence isn’t ambiguous.
Or ubiquitous. When you are selling a skill that is as common as the ability to write JavaScript, then you aren't selling much, and you're very replaceable.
Learning a very niche skill is harder. Finding jobs with very niche skills is harder. But once you've done that you become very hard yo replace. (Your job might go away, but there's seldom outright replacement. )
Agree on the principle - but management is another very replaceable skill.
It may protect you from offshoring because the stakeholders don't want to talk with people in third world countries and want to zoom with someone in a nice office paying 2k rent per month for a studio.
It won't save you from AI. We jokingly built a chatbot to write in the style of our product manager and engineering manager and it's shockingly accurate, especially if you consider both figures ask what the stakeholders want and technical feedback to engineers who knows what they're doing and meet the requirements.
I've been asking myself this question a lot, and I don't have a perfect answer, but here is what I am seeing so far:
We are moving from a period of time in which engineers were needed to do, essentially, day-to-day grunt work of software development (write this CRUD app, figure out this schema, implement these requirements) to a period of time where engineers will be needed to oversee, design, and manage relatively intelligent tooling that will do those things for us, and then be evaluated on its results.
Put another way: Engineers are currently like factory employees at the turn of the 20th century. Lots of manual tasks are needed to keep our "factories" running, tasks that, in the 21st century, robots can do just as well. But that doesn't mean no humans work in factories. Plenty of people do, but what they do are the things that the machines can't be trusted to do alone, or at least, can't be trusted to do alone sufficiently reliably for reasonable cost.
But even so, far fewer people work in factories now (as a proportion of the population) than did in the early days of the industrial revolution. It seems to me that engineering will likewise be winnowed down. That means that ultimately even the most valuable engineers won't be as valuable. You won't need as many of them to do the work, and you won't need to pay them as well.
If I choose to stay in engineering (which is by no means a guarantee), I think I will need to focus on moving from "day-to-day implementation" into "designing and monitoring the overall approach to systems." At most organizations, this means getting to and being successful in, at minimum, a staff engineering position, preferably higher (e. g. lead/principal). I am nearly there at my current organization, but I don't have the skills to perform at the next level yet. I can probably develop them, but that's also not for certain, and even if I do, I might not like that kind of work.
In that case, if I wish to remain in the workforce I will need to change career fields, and find one of the things that won't be automated away by LLMs or similar technology over the next 15-20 years. (For example, contrary to a lot of thinking currently, I think a premium will continue to be placed on genuine human creativity; I don't think AI will eliminate the desire for humans to consume art created by other humans. Any field which involves physically doing - such as the trades, or maybe some kinds of hardware engineering - would also be an okay bet.)
Or I could always coast on the coattails of my spouse, who is already in such a field. That might be easier :)
Everyone who works in tech or aspires to should read it.
I've had one job my entire career (31 years and counting.) It's very niche tech. I'm good at it. There are maybe 10 other people in the world who can do what I do. And they're all overworked.
The real value and security in tech is in the edges, not the mainstream.
For anyone else reading who is unhappy, uncertain or struggling, I hope you find the same for yourselves too. I probably don't know you, but there's complete strangers out there who want good things for you too. Don't give up.
Equally, yes, some folk rose up through the ranks at fang (or better yet fintech) and make mountains of loot. For each success there's a fair pile of failures though.
To rise up through those ranks, typically you need to make sacrifices. Long working hours, minimal time off, stand-by weekends, emails at night, and (imo) suffering the bs that comes with corporate jobs.
Building your own business are all those things too, but without the corporate bs.
The interesting thing about 500k though is asking what you can do on 500k, you can't do on 300. Or 200. Or in lots of the world, 50.
Time left for relationships, children, holidays, other interests and so on are important to me. So I'm prepared to balance those with raw income. I'm not making anything like 500k per year, but I've turned down fang recruiters because all the money in the world can't make up for what else it would cost me.
disagree. fewer jobs. less turnover. like yourself - 3 decades.
better go for the next big thing. whether AI, VR or something.
long as it has a barrier to entry. even just complexity.
The people on the edge create the next big thing
By the time most of today’s wannabe AI gurus are good enough to get a decent job offer - AI would not be such a big deal (best case scenario imo).
I didn’t notice any “obvious” changes in the game that weren’t there before.
For instance I don’t see anything different in requirements and comments of HRs reaching me.
JVM is still same jvm, bugs are still bugs, unit tests are still unit tests.
The fact that now instead of googling a problem you google and gpt it is a minor change in any real world complex engineering context that im aware of.
What exactly is obvious to you that im missing?
In general, I think you make your money in Tech at the ends.. Either bleeding edge or trailing edge. ATM, I'm working on Rust, serverless, playing with Pijul, keeping an eye on OpenTF, and pulumi.
For trailing edge stuff - I figure I'll be the worlds oldest COBOL coder by the time I retire and can use that to fund my retirement :-P
(And yes, COBOL will be with us for many years to come. In the next century, we'll probably be emulating IBM mainframes on quantum computers.)
The LLMs that we have today are amazing, but there is still plenty of room for improvement. Having to train it on a huge dataset is problematic for some uses; perhaps there is a related structure that can be trained more easily and more quickly. That would also reduce the effect of OpenAI's monopoly. LLMs also have specific weaknesses, like poor performance at arithmetic. At this stage, I wouldn't really feel comfortable feeding problems into an LLM and presenting users with the LLM's answers. It's still the Wild West in many aspects. There is always an improvement on the horizon, but it's hard to tell where it will come from and when it will come. Maybe we'll have LLMs that really start to resemble intelligence, or maybe we'll have a totally different structure that does everything LLMs can do plus more.
If ever, a GPT-like LLM/AGI ever exists where it can distill business requirements, understand modular designs and intelligently establish complex relationships between different systems and contexts, then 99% of all jobs will perish.
This will be an unprecedented disruption at a macro scale that humanity has never seen before. All of our current economic models will be instantly trash. How likely do you think this will happen? If it does, there's no real incentive to have these systems produce anything because no one can afford to buy anything. A global revolution would be inevitable.
My company already is doing a hiring freeze and we have a lot of work so having tools like OpenAI has been invaluable to help me with my daily work.
Can you elaborate on this? Very interested.
My solution in general terms is to go where competence isn’t ambiguous.
And you went into management?
Learning a very niche skill is harder. Finding jobs with very niche skills is harder. But once you've done that you become very hard yo replace. (Your job might go away, but there's seldom outright replacement. )
Plus of course some protection from offshoring.
It may protect you from offshoring because the stakeholders don't want to talk with people in third world countries and want to zoom with someone in a nice office paying 2k rent per month for a studio.
It won't save you from AI. We jokingly built a chatbot to write in the style of our product manager and engineering manager and it's shockingly accurate, especially if you consider both figures ask what the stakeholders want and technical feedback to engineers who knows what they're doing and meet the requirements.
- Using modern tools (ChatGPT, Phing, Copilot but also GH Actions, docker, etc.)
- Workflow improvement (Faster typing, how to use keyboard shortcuts, write scripts for automation)
- Debugging and measurement (Finding issues quickly, Analyse performance, etc.)
- Basic infrastructure understanding (Networking, Orchestration, Deployment, CI, etc.)
- Automated Testing (How to write Unit-Tests efficiently to save time ignoring all the TDD 95% coverage bullshit)
- Learning Markdown (How to write good technical documentation quickly)
- Learn concepts, not Frameworks[1] (tinker with other languages, command line, GUI, Web, etc.)
- Basic Operating System and Hardware understanding (Tanenbaum: Modern Operating Systems, drivers, etc.)
[1]: https://pilabor.com/blog/2021/05/learn-concepts-not-framewor...
We are moving from a period of time in which engineers were needed to do, essentially, day-to-day grunt work of software development (write this CRUD app, figure out this schema, implement these requirements) to a period of time where engineers will be needed to oversee, design, and manage relatively intelligent tooling that will do those things for us, and then be evaluated on its results.
Put another way: Engineers are currently like factory employees at the turn of the 20th century. Lots of manual tasks are needed to keep our "factories" running, tasks that, in the 21st century, robots can do just as well. But that doesn't mean no humans work in factories. Plenty of people do, but what they do are the things that the machines can't be trusted to do alone, or at least, can't be trusted to do alone sufficiently reliably for reasonable cost.
But even so, far fewer people work in factories now (as a proportion of the population) than did in the early days of the industrial revolution. It seems to me that engineering will likewise be winnowed down. That means that ultimately even the most valuable engineers won't be as valuable. You won't need as many of them to do the work, and you won't need to pay them as well.
If I choose to stay in engineering (which is by no means a guarantee), I think I will need to focus on moving from "day-to-day implementation" into "designing and monitoring the overall approach to systems." At most organizations, this means getting to and being successful in, at minimum, a staff engineering position, preferably higher (e. g. lead/principal). I am nearly there at my current organization, but I don't have the skills to perform at the next level yet. I can probably develop them, but that's also not for certain, and even if I do, I might not like that kind of work.
In that case, if I wish to remain in the workforce I will need to change career fields, and find one of the things that won't be automated away by LLMs or similar technology over the next 15-20 years. (For example, contrary to a lot of thinking currently, I think a premium will continue to be placed on genuine human creativity; I don't think AI will eliminate the desire for humans to consume art created by other humans. Any field which involves physically doing - such as the trades, or maybe some kinds of hardware engineering - would also be an okay bet.)
Or I could always coast on the coattails of my spouse, who is already in such a field. That might be easier :)