Current events

Software developers need to be empathetic and creative if they're to face up to the challenges of artificial intelligence

  Foto: Unsplash/Fatos Bytyqi

Foto: Unsplash/Fatos Bytyqi

Software engineers are among the most sought-after professionals in Spain, but they will have to be ready to face process automation

People with basic programming knowledge will no longer be able to carve out a career in the field

IT professionals are currently in high demand in both the Spanish and the North American job markets. However, with the emergence of Artificial Intelligence (AI), there is concern about whether this career will be at risk in the future. Many of the applications in the future will be developed by smart bots (only available in Spanish), either alone or with the participation of the end user. However, for ICREA research professor at the UOC, Jordi Cabot, expert in software engineering, this profile will continue to be essential only if professionals are ready to face process automation.

To see how software development will evolve with AI, and in which tasks these human engineers will be essential, AI expert Kai-Fu Lee, a former director of Google in China, has taken an in-depth look at the relationship between AI and the evolution of society in his new book. He uses two aspects to classify tasks: empathy (i.e. the ability to understand people and “connect with them”) and creativity. This classification produces four types of task:

  1. Not very creative tasks without the need for empathy: AI takes control.
  2. Not very creative tasks that require empathy: AI makes the analysis and the human takes control of the interaction with the person.
  3. Creative tasks without empathy: the human is in control and AI provides support.
  4. Tasks that require both creativity and empathy: the human takes control.

“Any type of interaction with the customer needs a capacity for empathy and communication that AI cannot provide”, commented Cabot, who is also director of the SOM Research Lab at the IN3-UOC. After having understood what the customer wants, the degree of support that AI will be able to give will depend on the complexity of the software that has to be developed. “In the case of a standard data entry web app,” the expert explained, “AI will be able to do it alone. However, if it’s a case of control systems where optimization plays a very important role, this is where an experienced programmer who is able to find creative solutions to the problem will still be necessary”.

The current initiatives that set out to give everyone programming knowledge are excellent as a way of teaching concepts of computational thinking that will be useful in many aspects of someone’s professional life, even if they don’t work in computing. “We are moving towards a future where programming will never again be a professional option for people with very basic programming knowledge. It won’t be enough to do a couple of Javascript courses (or whatever language is fashionable at the time) and start working”, Cabot observed. The expert recommends getting away from repetitive programming tasks and moving into the ones that provide more added value. The more knowledge and creativity that a task requires, the more prized the professional’s contribution will be.


Photograph of Jordi Cabot

Jordi Cabot Sagrera

ICREA Research Professor

Expert in: All kinds of techniques for the analysis, design and implementation of software with the greatest possible quality and productivity. This includes areas such has handling open data, analysing free software projects, and the automatic code generation.

Knowledge area: Software engineering.

View file