Throughout my career, I have worked with many talented engineers. The people who have had the greatest impact have always been those who combined strong technical capability with something broader: curiosity, empathy, communication, judgement, and a deep understanding of the problem they were solving.
Technical skills are essential.
Software engineering is a craft, and building reliable, maintainable, scalable systems requires deep technical knowledge. Understanding architecture, writing quality code, designing effective solutions, and applying good engineering practices are fundamental parts of being a great engineer.
But technical capability on its own has never been enough.
The difference between someone who can implement a technical solution and someone who creates meaningful impact is often found in what I think of as core skills.
The best engineers I have worked with do not see their work as simply delivering a technical component.
They understand the context around it.
They ask why we are building something, not just how to build it. They consider the customer experience, the business outcome, the operational impact, and the future teams who will need to work with the system.
This does not mean every engineer needs to become a product manager or a business analyst. It means recognising that software does not exist in isolation.
Every technical decision is ultimately a decision about creating value.
A beautifully engineered solution that does not solve the right problem is not engineering excellence.
This is one of the reasons I have always believed so strongly in diverse teams.
Diversity is sometimes discussed as a representation goal, but the real value is much deeper.
When we bring together people with different backgrounds, experiences, perspectives, and ways of thinking, we increase our ability to understand complex problems.
Software is built for humans.
The more perspectives we have in the room, the better we become at recognising assumptions, seeing blind spots, and designing solutions that work for a broader range of people.
Different experiences create different questions.
And often, the quality of the questions determines the quality of the solution.
This is also why the rise of AI makes these skills even more important.
As AI accelerates parts of software development, the ability to produce code becomes less of a differentiator than it has historically been.
But understanding problems, making decisions, collaborating effectively, and applying judgement become even more valuable.
When more people can create technical solutions, the ability to decide what should be created becomes increasingly important.
The engineer who can connect technology to outcomes will continue to stand out.
I do not think this represents a new definition of engineering.
In many ways, this is something strong engineering cultures have understood for a long time.
The best engineers have always been more than their technical skills.
They have always combined craftsmanship with curiosity, technical depth with empathy, and delivery with understanding.
The future of engineering is not moving away from technical excellence.
It is recognising that true engineering excellence has always included the human side of technology.
Technical skills make engineers effective.
Core skills make them impactful.