HACKER Q&A
📣 inconfident2021

What is the skill worth investing for next 20 years?


With uncertainty in the role of software engineering because of current market and it potentially being automated, which field of computing is worth investing upon?

Are there even any field in software engineering/development where the core knowledge has remained true over the course of years? Designs and paradigm changes.

For example, basics of graphics are same over 50 years. But the way things are built have changed multiple times. Apparently, no one pays for someone who knows only the fundamentals. People need experience in practical aspects too.

Another example is AI is like a rat race going in circles and trying to catch up with the latest ideas. Contrary to hard engineering where basics remain true for a long time until we find new ways. But the basics of engineering a product or solutions translate no matter what.

So what do you think are skills that are going to be relevant no matter the hype?


  👤 newprint Accepted Answer ✓
I can imagine in the next 10 years, most of the programming will turn into typing something in ChatGPT to create cloud infrastructure and most basic code, in fact, my coworkers already using ChatGPT to create AWS Cloudfare scripts with relative success. What is not going away anytime soon (in my opinion): system programming with hard constraints - formally verified software, numerical computing software, cryptographic software.

👤 tpmx
I'm worried that the next skill to invest time in will be.. financial investing.

:(


👤 themodelplumber
> With uncertainty in the role of software engineering because of current market and it potentially being automated

This is FAR from given. Super far. I'm sorry to say that you may have to study psychology to understand why in a way that makes you go "holy sh*".

But I get the general reasons for the uncertainty, they are usually about "please welcome your exciting new replacement" concerns. Which _can_ be a thing in some cases, already have been, and so on.

> Are there even any field in software engineering/development where the core knowledge has remained true over the course of years?

Not to be disagreeable, but the core principles are generally always reliable (true|belief|etc I don't really go there with principles in tech especially) even if aspects have changed. It's still really applicable in sign painting which I do myself sometimes as a hobby. And then it's pretty wild but the same principles translate exactly into digital signage.

> Apparently, no one pays for someone who knows only the fundamentals.

No, BUT it's not a dichotomy:

- Know the fundamentals only

OR

- Know the specific new hot practicals

...it's way more than that. You can still lean to the fundamentals side and get paid well! Part of doing that involves really interesting stuff, which can be described as "developing my/the new fundamentals." (Adding the "my" part because it also can just be scoped to what you need to know to be effective at your job, it doesn't have to be discovery of some universal fundamental, and you will get recognized more easily for focusing on $JOB's details anyway)

A lot of people enjoy this part of their career in tech, and it helps them find a relatively peaceful psych-interface through which to be more OK with the ADHD-style new & changey particulars stuff.

Also sometimes it's a matter of social interface. It may be a matter of describing yourself so that people understand what you're good at, and making sure not to focus on describing what you don't like, or hate, in your career.

> Another example is AI is like a rat race going in circles and trying to catch up with the latest ideas.

This is a good example of what I'm talking about. If you can just dissect your experience a little further, you might find that it can divide up into e.g. "stuff I personally think and like about AI" and "what everybody else does and thinks with it (rat race)".

If you keep working on the former, you can eventually build some really cool community bridges and in ANY case, you'll still probably be way ahead of the people who want to pay you to interface with AI for them! Their fear of tech will never really end. Find those people. Tell them you get AI. Or whatever excites you. Get a job, get paid, enjoy.

Just some ideas & good luck.


👤 MattGaiser
What skills have stayed the same over 30 years and provided the same standard of living over that entire period of time since we passed the industrial revolution?

Nurses, doctors, pilots, have all needed to become competent with computers. Financial people needed to learn Excel. Farming requires more mechanical and chemical skill.

That is not to mention entire categories of jobs that no longer exist (telephone operator, appliance repairperson, non-luxury travel agent, etc) or jobs that only came into existence in the past few years (social media director, devops engineer, prompt engineer).

You also never know when a new technology will come along that disrupts everything. Being a cabbie used to require an incredible level of study and diligence to understand the roads of your city. That understanding is now worthless, as we all have the equivalent in our pockets. Somebody writes the weekly jobless claims articles at news agencies. A human won't be doing that in 5 years, if they are already.

I am playing around with Midjourney and I can see a lot of lower level freelance work like logo design getting utterly annihilated by it. Spinning up basic web apps is pretty easy with ChatGPT, even if you don't know very much code either.


👤 syndicatedjelly
Programming Languages. Not the syntax of individual languages, but the concepts underpinning all languages. Languages come and go, but the computer science and math underneath it all doesn't change all that much.

👤 streetcat1
Maintenance of software created by gen ai. As companies delegate mode software dev to gen ai, they would lack the experience of developing software (or lack the budget). This means that there will be ton and ton of work for real developers who can do the last mile. I.e. there will be at least 100x more software to maintain and change.

Most of the hype is generated by people who did not wrote a line of code in their life, and lack any understanding of software complexity.


👤 nprateem
Not computing, business. I.e. solving customer needs. The tech is just the tool.

👤 akulbe
Public speaking.

Sales.

Being a good human.


👤 jononor
Understanding the customer. Understanding the problems to be solved. Understanding systems. Being able to design and implement systems. Being able to communicate value to the customer. Ability to learn new things. Ability to adapt available solutions to particular circumstances. Ability to select appropriate technology for the problems at hand.

Technology comes and goes, engineering fundamentals are still behind it all.