Software Engineering: 2030
Knowledge and Skill Investments for the Decade Ahead

Do you invest in the stock market?
If so, what are the principles you apply when deciding how to invest your hard earned money?
Do you:
Look exclusively at past performance?
Follow your close circle of friends, and invest in the same things?
Follow the market? You trust the masses, most of them are probably right… right?
Not see the need to invest? You have enough money for your current expenses, and the money you are saving in a low interest account is good enough. But what about the falling purchasing power of that capital over time?
Carefully research company fundamentals, look at the price-equity ratio, consider future direction etc., assuming you either have some knowledge of the domain, or rely on trusted experts who do?
Look at broad social, economic and industrial trends, spot areas of promise, and find investments that fit these areas?
If you’ve ever had money to invest, you’ve given this some thought (hopefully).
Now let me ask you this:
Have you given as much thought to your knowledge and skill investments, as your monetary investments?

If you’re a Software Engineer like me, you are a knowledge worker. You invest your time, energy and money acquiring knowledge. You expect these knowledge investments will pay dividends, and increase your value to the market (Aside from the satisfaction of constant growth from learning).
Look back at the 6 broad strategies above, they’re all equally applicable to making knowledge investment choices.
What has your strategy been? What are some of the areas you’ll want to invest in over the next few years?
Here are some of the big trends I anticipate. Emphasis on some, because I won’t call out the ones that seem obvious to me (e.g. Artificial Intelligence) or ones I am not personally interested in investing in right now.
The rise of the socially and environmentally conscious engineer
The standout challenges of the coming decade will likely be in the areas of
Clean energy tech
Economic empowerment and social mobility
Equal access to quality education
Food technology for a growing population and,
Health technology for an ageing one
All while building products and services that have a low environmental impact.

It’s going to be a unique time in the short history of software engineers, as we have the opportunity to engage in deeply meaningful and valuable work, and a responsibility to be a defining force for good in all of these areas.
Actions for Impact:
As of December 2019, Angellist shows 250+ startups in clean energy tech, and 1400+ startups in education tech. And those are just the startups! Have you explored their mission and vision? What about the other areas mentioned above?
As a software engineer, have you thought about the role you can play in the climate crisis? The energy crisis? Or helping to level the playing field for those vastly less fortunate than you?
What diverse sources of information can you tap, to educate yourself about global issues and the ways in which some people / organizations are tackling the problem?
A demand-supply tension for systems programmers
Hundreds of millions of devices are online with more coming online every second. We know this as the Internet of Things (IoT).
5G is almost here, which means a lot of these devices, now and in the future, won’t be constrained to a WiFi connection to talk to each other.
This is going to further enable
Robotics (everything from drones, to warehouse bots)
Autonomous systems
Augmented reality systems
Data gathering and transmitting sensors etc.
We’ll all be living on the “edge”. (Sorry, I couldn’t resist!).
The complexity of “edge” devices is dramatically scaling up with every passing year. I expect this to lead to a spike in demand for Systems engineers and programmers.
On the supply side, we have numerous issues:
Formal computer science course enrollment seems to be dropping year-over-year, all the way from secondary school to college, at least in the US.
I suspect languages like Python and Javascript are becoming the lingua franca of programming courses, with an increased emphasis on application building, and a reduced emphasis on deep computer science concepts.
The silver lining here is that a lot more children are being exposed to robotics and hardware-software interfaces through school, or coding / robotics camps.
I should add that a lot of systems programming, particularly for complex applications (think industries like industrial automation, automotive and aerospace) is also done via “Model-Based Design”. High-level block diagrams created in software result in auto-generated code for embedded devices.
Even here, having a solid knowledge of low-level programming languages and hardware fundamental is inescapable.
Actions for impact:
Learn a systems / low-level programming language like C or C++, or a more modern systems programming language like Rust.
Work towards building an awareness of low-level / deeper computer science concepts. You don’t necessarily need a computer science degree for this.
Buy an Arduino, or maybe a Raspberry Pi. Understand the hardware-software interface, make a few LEDs light up, then do something bigger and cooler.
Learn about Model-Based Design, and explore some tools that allow you to model your system and generate code from the model.
Full Disclosure: Model-Based Design Tools like Simulink and Stateflow are close to my heart, since I spent a good chunk of my early career on Stateflow development.
Emotional Intelligence in an era of low empathy

My last suggestion is not a tech-skill, but a collection of soft-skills. The term “soft-skills” doesn’t do it justice. I’m referring to Emotional Intelligence and everything it signifies, such as excellent communication, the ability to have difficult but candid conversations, demonstrating grit, motivating others, being mindful of mental health etc.
All of these skills are only “soft” in that they are not as tangible as learning a technology. In reality, there’s nothing soft or easy about them.
Add to this the fact that we live in an era of low and divided attention spans, lower empathy and lower social interconnectedness.
Sadly, emotional intelligence runs the risk of becoming rare at a time when we need it the most.
Emotional Intelligence has always been necessary, but it’s especially important now as the decade brings an economy that is becoming increasingly knowledge based.
An economy that rewards innovation, creativity and working well with others. Exhibiting emotional intelligence is going to be a hard pre-requisite, as opposed to a “nice to have”.
Actions for impact:
How well do you truly know yourself? Have you taken something like a briggs-meyers personality assessment test to get a rough sense for how you operate in most scenarios? How self-aware are you?
The World Health Organization says that Depression is one of the leading causes of disability worldwide. What do you know about mental health in general? Do you know how to spot the signs of a mental health issue in yourself, or others? If you did, would you know how to intervene?



