Artificial intelligence is not yet ready to be a replacement for the strategic ideas and creative thinking of developers

5 min read
11 September 2023

Eugene Yakubovsky's company has gone from writing educational courses on how to develop chatbots to developing its own platform where users of any level of technical expertise can write a chatbot for their tasks. Inqoob has trusted artificial intelligence to process large data sets, transcribe calls, and develop an optimal communication path with the customer. We talked with Evgeny about the role of AI in software development and testing.

Most people believe that artificial intelligence (AI) is still far from replacing developers, and the debate is losing steam. What role do you assign in the software development processes in your company? 

Within our chatbot platform, we now have AI that automates customer actions. Upload an image of another chatbot or test, and the AI decodes it into a coherent text for a new chatbot.  People may upload calls with a customer, AI transcribes these recordings, creates a summary on them and tasks when to talk to this person next time, makes recommendations on how to improve communication with the customer, and highlights their trigger points.

What tasks have already been automated using AI? And which ones would you like to automate?

Artificial intelligence can be used to automate template-based code generation, documentation creation, and version control and coding. However, so far, it only handles tasks that someone else has already solved. If the training sample contains the necessary code fragments, it reproduces them. In general, there are many tasks in the development process that are automated and do not require artificial intelligence. There is no need for AI because libraries or frameworks for front-end development are already automated. 

But AI not only speeds up the work, it also makes the results more accurate. Defects that would be difficult to detect manually can be detected by automated AI-based testing.

Personally, I would like to automate the testing and the writing of the documentation. Writing code is the least of the problems, but writing tests and documentation is a tedious task that is not the most appealing to employees. 

The verification of chat interfaces is also an interesting direction. For example, AI can ensure all responses are neutral or dialogs follow a script.

AI will not replace developers, but it will obviously change the IT industry. How do you think the scope of software development and testing will change in the future?

That's right. Generative AI will not replace developers in the near future. While it can automate certain aspects of software development, it cannot replicate the creativity, critical thinking, and problem-solving abilities that humans possess. Team leads should increase the value of their teams by demonstrating that generative artificial intelligence is a force multiplier that can increase efficiency. I believe the focus will be on developing the soft-skills and creative thinking of the team.

There is also a fear that AI will take the place of inexperienced developers. But in fact, the concept of "junior" and the set of required skills for him are constantly changing, specializing, while the field of work becomes more difficult. Some of Junior's skills will simply be on the way out, and there will be some new ones on the way in. However, the basic things are with us for a long time: mathematics, linear algebra, statistics and C++.​

What is the place of AI in software testing? What do we need to do ourselves, and how much of the routine has already been given to AI? 

According to the forecast Statista.com, the number of developers will continue to grow next year and will approach 30 million specialists. This means that the number of released software that needs to be tested will also grow. The demand for automation and acceleration of testing processes will grow. This is where AI and machine learning can help.

But there is still an urgent need for human intelligence to apply business logic, strategic thinking, and creative ideas.

AI in testing and software development has many advantages over the work of a human specialist: accuracy, multi-platform, high speed. And what challenges will you face?

 The first is the training of AI models. It requires a large amount of data and computing resources. Additionally, models must be properly configured for each software type.

The second is the ethical aspects. Using AI can raise ethical and security issues, especially when AI makes important decisions while developing.

The third one is the need for expert knowledge.  Expert knowledge of AI and programming is required to effectively use AI in software development.

It is important to understand that a developer's job is not just to write code. It takes much more time to understand the task and translate it into a technical statement. And this requires human experience and the ability to understand each other. People can't always do this, much less AI. All the current automation solutions are pretty much wrapped around standard tools, and that's not going to change in the near future.

In case you have found a mistake in the text, please send a message to the author by selecting the mistake and pressing Ctrl-Enter.
Oleksandr 660
Joined: 1 year ago
Comments (0)

    No comments yet

You must be logged in to comment.

Sign In / Sign Up