The need for software engineers in a digital-first world
How important are software engineers going to be in a digital world driven by the rising tide of ready-made AI and SaaS solutions often requiring little to no engineering skills? And how can businesses maximize the potential of their engineers as well as their non-engineers to develop successful long-term digital strategies?
This is what we’re going to dive into in this article, exploring both the technology aspect and the culture/people aspect. Let’s get started.
The need for digitalization
By now, the need for digitalizing has become obvious in all areas of business and society. On the one hand, there are more and more digital products and services; on the other, more and more physical products, services and facilities rely on these very same advanced technology solutions.
But where exactly do these digital solutions come from? We’re living in a world where new low-code/no-code and SaaS tools popping up every day have streamlined the creation of digital experiences so much that it has produced a kind of illusion that these ready-made tools are able, or are soon going to be able, to take care of pretty much every part of a digital strategy.
But someone has to build those tools. Someone has to maintain them and keep them streamlined. Someone has to provide help to customers and clients when there are issues with those tools. And even if we create more tools to handle this, similar problems will arise with these new tools.
In a world of so much complexity, even the most honed and advanced tools can have shortcomings, and humans are thus essential in not only developing but also overseeing these digital technologies to maximize their potential while minimizing any shortcomings.
Balancing engineers, non-engineers and technology
As mentioned above, even physical products and services have been streamlined by digital technologies, ranging from the pretty trivial, such as online purchasing/e-commerce, to much more critical ones, such as aviation and autonomous driving systems. An issue with the former can lead to frustration, while an issue with the latter can literally decide between life or death of not just a few individuals but potentially huge numbers of people.
A negative customer experience caused by an issue with a user interface or an automation algorithm can often be fixed by doing some damage control, and even when it can’t, the worst case scenario is lost customers. In the latter example with aviation or autonomous driving, the worst case scenario is lost lives.
This shows us two key aspects of human/technology interaction:
- The ones developing it need to take the utmost care and precision to prevent or at least minimize the potential of critical errors as much as possible;
- And the ones working with it need to be equally careful and focused when using rather than relying on its “automagicality”.
Both of these cases give rise to a critical need: both engineers and non-engineers need to be equipped with the right skills to handle their own respective sides of the human-technology equation. And businesses need to provide them with the necessary training and support to develop and hone those skills. In many cases, this means a complete redefinition of the company culture and business strategy.
The right skills for the new age
A different set of skills, both hard and soft, is required in a world ruled by constant change and uncertainty, as opposed to one ruled by stability. And while new technologies such as AI do offer a lot of potential, that potential cannot truly get unlocked by people with outdated skill sets working in a rigid company culture.
In many cases, this will mean reworking both individual mindsets and skills, while also making fundamental changes to your company culture and incorporating some type of (continuous) learning/upskilling as a key area of your business success.
For example, at Agiledrop, we’ve honed our different engineering onboarding processes through the years, beginning with and refining our Drupal onboarding, as well as expanding into other frameworks and languages, e.g. React, Laravel, Angular, etc.
Our development director recently spoke about the importance of onboarding the next generation of (Drupal) engineers at the latest DrupalCon, which the broader Drupal community has also recently highlighted as a key priority in a world where a plethora of shiny new frameworks and tools coexist with high-level needs for older web languages and frameworks such as Drupal and PHP.
In the context of this discussion, the skills and experiences of seasoned software engineers will still be invaluable and irreplaceable, perhaps even more so, since new sets of tools and solutions lead to new sets of problems, as already mentioned, and the value of an engineering mindset will be hard to surpass in addressing all this.
Here we should also highlight the importance of a human in the loop when working with technologies such as (generative) AI; as already pointed out early on in the article, even when tools are so advanced as to make the creation of new tools pretty much effortless, humans will still need to oversee this and ensure everything is done according to agreed upon strategies and existing legal requirements while responding swiftly and effectively to any changes and disruptions coming down the line.
The drive for innovation vs. future readiness
With so many different but very similar options in terms of digital products and tools, it can be a challenge for businesses to determine how to make the best use of all this potential.
As IBM iX’s Jan Pilhar points out in our latest podcast episode, innovating only for the sake of innovation due to the fear of missing out on a hyped up technology is unlikely to yield outstanding results and can lead to unforeseen issues further down the line.
But on the other hand, never innovating and simply relying on the innovations of others comes with its own significant drawbacks. Jan also highlighted the importance of this question of “buy vs. build” when it comes to implementing new technologies such as AI, and how the main challenge for companies will be finding the right balance between “buy” and “build”.
As long as there’s a need for “building” alongside “buying”, the need for skilled software engineers will remain, and they will continue to build the tools that others will buy and use. In many cases, this will mean building something new on top of something someone else has already built, i.e. innovating on top of innovation.
And to enable that, the innovations will need to be robust and streamlined rather than thrown together quickly with the help of a generative AI tool or a ready-made app building tool, possibly by someone who lacks the skills needed to effectively gauge the accuracy of what such tools produce and/or make any kind of meaningful customizations to what is thus produced.
Even with the rise of generative AI and other low-code/no-code tools that bring the creation of digital experiences closer to non-engineering roles, software engineers are still going to play a major part in the digital infrastructures of the future.
We hope this article has provided you with the right insights to empower your engineers while balancing them with non-engineers and ready-made technology solutions. And in case you find yourself lacking engineering capabilities and needing some help there, reach out to us directly or check out what it’s like to work with us and how we can help you out.