Jump to Navigation

Will Artificial Intelligence (AI) replace Software Engineers?


Will Artificial Intelligence (AI) replace Software Engineers?

Developments in artificial intelligence (AI) are becoming increasingly complex every day, and as AI advances it becomes more embedded into our everyday lives. From facial recognition for unlocking our phones to healthcare management systems. AI is all around us and will only continue to grow.

Elon Musk, founder and CEO of SpaceX and Tesla has shared his concerns about AI. He has said that he fears artificial intelligence could one day outsmart humans and endanger us, citing AI as the biggest threat to civilisation. Which at present might not be as distant as we think.

Developing Generative Artificial Intelligence

Generative AI refers is the practice of using existing information, such as text, audio and video files, photos, and even code, to generate new content using unsupervised and semi-supervised machine learning techniques. The main goal is to create 100% original artefacts that closely resemble the originals. Therefore, if companies can find a way to use AI to write code, then there’s potential to use this in replacement of Software Engineers.

Google’s Artificial Intelligence Project

Google is currently working on a number of initiatives to develop generative artificial intelligence, this includes their new secret project, ‘Pitchfork.’ According to Business Insider, Google’s new project aims to teach AI to write, fix and update code using machine learning (ML).

 The anticipated outcome of the Pitchfork project is "to teach code how to write and rewrite itself." To do this, the AI will need to learn programming styles and languages to write new code based on what it learns.

Pitchfork was developed to assist Google in updating its Python code base to a newer version without needing to recruit many engineers, but as the initiative has progressed, its objectives have evolved and broadened. However, it is still unknown as to what stage the development of the project is at.

If the project does succeed, it may have a major impact on the entire IT industry, as technology advances, there will be less need for human Programmers' skills.

What can AI do that Software Engineers can’t do?

Program Writing Assistance

Programmers are able to identify flaws in their code by using AI technology. French software company Ubisoft created Commit Assistant, an AI tool that checks for improper codes utilising a software library of common coding faults seen in the past. This prevents Programmers from committing the same mistakes they did in the past, and Commit Assistant helps them avoid wasting time and energy on post-processing issues. There is also AI technology that can auto-complete suggestions as Programmers write their code.

Bug Fixing

Many software errors don't surface until after the programme has been used, and can be a fairly common issue, especially when companies rush products to market in order to compete with others in the industry. Therefore, it is rare to find a programme that doesn't include exploitable flaws.

AI and ML algorithms can be used to fix this. Before programmes are released to the public, they can be configured to examine them for faults and make the necessary corrections.

Accurate Project Delivery Estimation

Timelines and budgets for software development projects are rarely met once they have started.

However, with AI's assistance, Programmers and project managers can use historical data from prior projects to give management with more realistic timetables and financing requirements, while considering all potential situations and obstacles.

GPT-3

GTP-3 is an AI-language-generating system that can turn description into code, then that code can become the backend for the grounds of a new website.

In 2020 researcher Sharif Shameem shared online that he used GPT-3 to lay out a web page by just inputting descriptions. GPT-3 turned his descriptions into JSX code. JSX code is a syntax extension to JavaScript (JS) that produces websites with React, an open-source JS library for building user interfaces (UIs) or its components.

However, the issue with GPT-3 is that it is not constantly learning. It has been pre-trained, which means that it doesn't have an ongoing long-term memory that learns from each interaction.

Will AI replace Software Engineers?

Even though AI has the potential to write and rewrite code, it doesn’t completely replace the need for Software Engineers. Writing code is only part of a Software Engineers’ responsibility, and if AI can take this task away from them, they can focus more of their efforts on higher-level creativity, problem-solving, and design.

Software Engineers will instead become more of a generalist discipline with fewer mundane routine tasks, fewer specialisms, and a greater general focus on performance, reliability, sustainability, and security over traditional programming. Something that AI and machines cannot currently do.

Find Software Engineer jobs here.