Product Engineers > Software Engineers
The role of software engineers is about to undergo a transformation as no-code solutions, hyper-abstraction, and AI capable of building software reshape the industry. Approaching the era of AGI, traditional coding roles may diminish. Engineers must now become holistic problem solvers—product engineers. Future software engineers will have to do things differently: deal with stakeholders, design user interfaces, solutions architecture, deal with financial constraints, code (maybe?).
In a world where software engineers compete with product owners, designers and project managers - The day of software engineers is ending, the time of product engineers is upon us. The future belongs to those who can bridge the gap between technology and product.
Ellis Taylor
Ellis previously worked as a platform architecture lead at The Economist and most recently co-founded and is the CTO at NovelApp, a platform that allows consultancies and accountancies to submit Research and Development claims at speed and scale, whilst upholding accuracy and quality.
Ellis is an AWS Certified Solutions Architect and Developer, and has a background in GoLang, Node, leading technology teams, and Tottenham Hostpur.
Links
Video Permalink ¶
Transcript
I think this probably based on Dave's definition just about qualifies as a lightning talk.
So it's quite high level. And as I was writing it, product engineers greater than software
engineers, I know it's quite a big statement. But when I was writing it, it sort of reminded
me of the passion that I felt for what software engineers have to go through on a daily basis.
So with that, I took the opportunity to rename it slightly. Software engineers are sort of
on their way to product engineers already. And it's down to a sort of never ending evolution.
My name is Ellis. I'm currently the CTO and co-founder at Novalap. Beforehand, I was the
lead technical architect at The Economist. My background is in all things AWS, Golang,
Node, and a bit of React and TypeScript as well. I was previously AWS solutions architect
and developer. However, that's expired. And apparently they don't care that much about
in interviews about it anyway. So I never got it renewed.
So one question that I have been trying to answer over the last, at least the last year,
is how fast the industry is actually moving. And one of the reasons I started asking myself
this is because throughout the years of my professional career, people have always asked
me, "What do you do?" And I'm sure some of you guys have had the same question, "What
do you do?" And said, "Oh, I work in software." And the response more often than not is the
same. The industry moves very quickly, doesn't it? And to sort of preserve their opinion
and understand, I say it moves very quickly.
It's taken me about 15 years to get a base understanding, professional understanding
of JavaScript, Golang, and AWS. From a macro point of view, one of the things I've been
trying to understand is where the market in terms of software engineering is actually
heading. For the last 25 years or so, it's grown and grown and grown. In fact, 2023 was
the first year that it didn't actually grow as a labor market. It looks like there's a
bit of a bounce back this year, but that is about half of what we've seen in previous
years.
So the aim for this session, really, over the next 15 minutes, is to try to make some
sense of what we've seen over the last 30 years and whether that's changed in the last
24 months. And there's specific reasons for that. We won't go into the underlying data
and research that I've done for it now, but if anybody's interested after, I've got quite
a bit.
So, hands up, any web developers, software engineers in? Most. Not unexpected. Project
managers? Very good. Product owners? Any recruiters? That's good.
I hope not.
Everybody who's happy in their job and doesn't want to leave? Okay, good. People who are
not so happy in their job and looking for something new, officially? Okay. Okay. And
people who, if you've come with colleagues from your current job, don't put your hand
up. But people who are secretly looking for a new job? Very good. It's a shame there's
no recruiters.
So before we can go forward and try and assess what's going to happen over the next five
to ten years in the market, it's worth looking briefly at history. And the history doesn't
always reflect what's going to happen next, but it can give us a bit of an idea.
And the way we're going to do that is with a bit of a timeline. So on the top half, we
can see the engineering skill change as different inventions and innovation arrived in the world.
And what it took for a software engineer to overcome that innovation. So you can see,
World Wide Web, obviously, software engineers had to start to get to grips with HTML, whatever
beast that was at the time. We've got things like Netscape, Java. So a lot of engineers
had to specialize in actually learning Java and backend engineering became more important.
On the bottom half, we've got incoming roles. And by that, I mean incoming flavors of roles.
Roles that have been transformed by certain innovations and roles that fell out of favor
as a result. And this is just three of maybe 100 in a decade. And that's true for the 2000s
as well. So 2001, the Agile Manifesto was released. All of a sudden, software engineers
had to go from working in long waterfall style of engineering to much shorter rounds of trips.
They had to sort of go back and forward between customer, go back to UAT engineering. The
process became much quicker. In 2006, Amazon released AWS. And there's a number of concepts
that weren't previously available to software engineers that were classically in the sort
of network engineering domain or the sysadmin domain, things like scalability, load balancing
and distributed systems. But through the power of infrastructure as code, software engineers
were exposed to that. In 2007, Apple released their first iPhone and some engineers diversified
into native engineering, whether that was Objective C, Swift. And for those who didn't,
they had to learn this thing called responsive design. Early 2010s, Microsoft released Azure
and the cloud computing boom sort of ignited. All of a sudden, there was a whole host of
different services that software engineers had to get to grips with, even just in the
AWS domain. Things like the concepts of microservices, Terraform, CloudFormation and Lambda, all
different ways of applying the same sort of code but different techniques. The containerization
revolution, the release of Docker and Kubernetes, different ways for deployment. In around 2016,
talking about machine learning was very popular. Data scientists and machine learning engineers
became very popular. Have we got any of them? No, okay. Trying to gauge where they all sort
of went. And in around 2018, although it didn't have a big impact on the skills of traditional
software engineers, we sort of started to see the rise of no code and no code engineers.
So it didn't impact us on a skill set basis. However, it did have some underlying effects
in the industry. So what do we know? Software industries evolved with increased accessibility
due to the abstraction of technology. Sounds reasonable. Secondly, every innovation expanded
the pool of who could work in tech. For example, mobile developers in the 2000s to what we
now know as no code creators. Let's call them creators, not engineers. But no code creators.
And merging and consolidating of roles. Thirdly, where accessibility to developing technology
increased coexisting roles were consolidated and merged. And finally, the shape of industry
and in demand roles have been in continuous change. And it's more than likely that they
will be over the next 10 years. So slight segue, but recently, Sam Altman, the chief
executive officer at OpenAI, talked about five different steps to AGI. Conversational,
reasoners, autonomous, innovators and organisation. We won't go through all of them. Is everyone
familiar with what they actually are? What is AGI? That's artificial general intelligence.
So we're only going to cover the first three because that's all I think we can get anywhere
near to trying to predict. We're at step one. So I think who on a daily basis uses things
like GitHub Copilot, Cursor, GPT? Some. It's OK. It's fine. So quite a few of us have felt
it. And in terms of how AI, the step one of AI has actually changed our job already. Next
year, maybe we won't see step two, but we might see a sort of step one point five. And
at that point. We see it sort of see an enhancement of what we've seen over the last three years.
And then based on Sam Altman's predictions of thousands of days by twenty twenty eight,
we might see a sort of step two. And that's where AI properly assists in how we design
our applications. And maybe or maybe not is quite I'd say it's quite far out at the moment.
We might see a step three and then software engineers sort of migrate into a position
where they actually become sort of more system architects and they're working with AI agents
to augment different applications. But they're not actually writing the code for the applications
themselves. They're actually augmenting the AI to go and do that. Picture the provisioning
of a relational database, for example. At the moment, you set up you go through all
of the schema, you go through the different access patterns in some some platforms already
claim to be able to do this sort of thing where they can automate the provisioning of
it. But by sort of step three onwards, you would be working directly with another sort
of entity to do that for you. And it all leads us here. We all know about what abstraction
actually means from a software point of view. But I suppose there's this concept of hyper
abstraction when you roll together things like no code and AI platforms, they reshape
software, they look like they're going to reshape software development again and again,
even in the next five years. The barrier between idea and implementation is disappearing slowly.
So what could change? A single engineer may be responsible for more things, things like
product and stakeholder management, design and other roles may begin to emerge as part
of the engineering role. And why should we care? Well, longevity. Engineering becomes
about a combination of different things. Code, yes. System architecture and design, more
of that. Soft skills, things like just communication and leadership. Engineering becomes more holistic
as a role. So the main takeaway is the industry over the last 24 months, I believe, is now
on rocket boosters, whether it's no code, AI or something else, the engineering landscape
is changing rapidly. So how does the conversion take place? Because AI and no code tools may
begin to automate routine coding, developers will be able to do their thing more quickly,
possibly freeing them up to take on other roles. Where is it happening? Well, the shift
is happening, I would say in startups and SMEs now. Large companies of maybe a thousand
or more who can naturally react less quickly, it might take a little bit longer. When it's
happening is now. It starts to happen over the last 24 months, maybe three years. But
it's not going to slow down. If anything, it will speed up. There'll be lower barriers
to innovation, AI and no code tools, democratized software creation, enabling faster iterations
and reducing reliance on specialized engineering teams. So how can we prepare for the future?
Regularly engage with emerging technologies like AI and no code platforms. Explore how
they complement your skills to remain indispensable in a shift in landscape. And develop soft
skills alongside technical skills. Develop complementary skills such as communication,
leadership and user focused problem solving to seamlessly move into hybrid roles. Align
skills with market direction and prioritize strategic learning. Identify where the industry
is heading, whether in AI integration, product ownership or advanced system design and invest
in mastering those areas. Be adaptable. View change as an opportunity because there's
going to be a lot of change over the next five to 10 years. And maybe most importantly
of all, remain open to evolution. Software engineering is evolving, but the demand for
creative and adaptive problem solvers has not gone away. Stay curious and be willing
to sway with the industry. The industry is moving at light speed. But by understanding
its trajectory, we cannot only keep up, but as software engineers, we can lead the way.
The future of engineering belongs to those who prepare for it today. So take proactive
steps toward professional development in technical and software and soft skills. For anyone who's
interested in hearing more about product engineering, there's now a product engineering manifesto.
So if you are interested, scan this QR code. You can start a repository and have a read
list on a PDF. So, yeah, that's it.