The expertise to pick the right tool for the right job based on previous experience that senior engineers poses is something that can probably be taught to an LLM.
Having the ability to provide a business case for the technology to stakeholders that aren't technologically savvy is going to be a people job for a while still.
I think positioning yourself as an expert / bridge between technology and business is what will future-proof a lot of SWE, but in reality, especially at larger organizations, there will be a trimming process where the workload of what was thought to need 10 engineers can be done with 2 engineers + LLMs.
I'm excited about the future where we're able to create software quicker and more contextual to each specific business need. Knowing how to do that can be an advantage for software engineers of different skill levels.
Could you provide a few examples of roles and companies where this could be applicable please?
What you could do, if money is not too much of a concern: job hop to different jobs. I'm currently re-entering the job market as a data analyst. I've been a SWE for 4 years. I might get back to it (probably on the data science or data engineering side) but man I'm happy to have a different task set for the next 2 years.
I have a job at a place I love and get more people in my direct network and extended contacting me about work than ever before in my 20 year career.
And finally I keep myself sharp by always making sure I challenge myself creatively. I’m not afraid to delve into areas to understand them that might look “solved” to others. For example I have a CPU-only custom 2D pixel blitter engine I wrote to make 2D games in styles practically impossible with modern GPU-based texture rendering engines, and I recently did 3D in it from scratch as well.
All the while re-evaluating all my assumptions and that of others.
If there’s ever a day where there’s an AI that can do these things, then I’ll gladly retire. But I think that’s generations away at best.
Honestly this fear that there will soon be no need for human programmers stems from people who either themselves don’t understand how LLM’s work, or from people who do that have a business interest convincing others that it’s more than it is as a technology. I say that with confidence.
This is probably the way to go. Having _some_ income drastically improves the equation in your favor (due to tax laws and compounding growth).
Unfortunately, when I did this, I struggled balancing my time between the work as well as wondering if my startup failed b/c I half-assed it working part time or if its just not a viable business..
Ultimately a job can be evaluated as: ( Money * Job Satisfaction * Impact ) / (Time * Energy )
Currently, I like doing many things, finding the bottlenecks, and overcoming them. Today it's demand generation, tomorrow it's product and tech, and ultimately it's me being inadequate in some capacity. Which means lots of growth as a person, which feels very real, like you can be shy of being in front of another person and therefore avoid doing sales calls. This is big and feels much more real than 'growing' in an organisation where you're told to do XYZ to impress your manager so that they can beg their managers to get you into the raise quota, or even worse, simply bang your head against the 'we don't have money now' wall at a typical smaller company.
Being in control, jumping on interesting things to constantly learn something new and stuff like that are a good bonus as well.
Dead Comment
I'm currently working part-time on retainer, which allows me to work less than full-time and still make enough money to live (definitely less than a full-time job, but enough to live comfortably). This leaves me time to build my own thing while not living off my savings.
I don't know what I'm doing, but I might suggest something like this. Stay at the job for now. Use the financial security to buy a house and get a good mortgage. Then start working on taking part-time work on top of your full-time job. This will suck at first (full time plus extra work), but once you feel comfortable about being able to get part-time work, you can feel comfortable leaving the full-time job.
Re this: >I'm currently working part-time on retainer, which allows me to work less than full-time and still make enough money to live (definitely less than a full-time job, but enough to live comfortably)
That's quite a good position to be honest.
> Then start working on taking part-time work on top of your full-time job.
This is what I've been doing for the past 3 months but only to save some extra money as our main income is 90-100% spent on necessities every month. I charge per hour probably within the 50-70 percentile bracket in my location. But I can't see how I could charge more without being much more specific than just doing regular software engineering.
As a qualified engineer and owner (in terms of responsibility), I quite often get compliments on how well I handle things - with attention to detail, without oversight, pushing things to the completion, etc. This made me think that probably I'm lowballing myself with this (shitty) startup job.
But on the other hand, I don't know where else I could 'remain myself' in the way of not becoming a professional SLOC cruncher or, God forbid, the ultimate PSC-driven developer.