Good software engineering requires lots of creativity as well as superb skills in solving problems. But the daily work is also full of tedious and repetitive tasks. There are tests and failures as new code is produced — and it all takes time and energy.
Can Artificial Intelligence (AI) help software engineers do their tasks faster?
Schibsted’s Chief Data & Technology Officer Sven Størmer Thaulow believes so.
“Generative AI has proven itself to be a powerful technology — and used in the right way it can help many professionals do their work better and more efficiently. For Schibsted as a tech company, it is important that our experts have the opportunity to experiment with and use the new tools that are being developed.”
34,000 lines of code
After a pilot project, Schibsted has decided to let all its software engineers use the AI tool GitHub Copilot in their daily work. GitHub Copilot is like a ChatGPT for programmers — and suggests software code instead of normal text.
The decision immediately caused excitement among the software engineers in Schibsted and almost 400 have already started using it. So far, after only a few weeks, 34,000 lines of code have been accepted by the software engineers. (For comparison: Some estimate that an average programmer writes about 25,000 lines of code in a year.)
“It saves me a lot of time every day. I am very impressed with what it does. It is not just another auto-complete function. It’s way smarter,” says Pedro Goncalves, site reliability engineer in Schibsted’s Developer Foundations team.
Pedro explains that the AI tool transforms how he works as a programmer.
“It just makes me more productive at work. For instance, it saves me a lot of visits to Google to figure out how to solve different problems. And I save time on the actual writing of code, especially the more tedious parts.”
How much more productive?
“A conservative estimate would be at least 15%. I am actually sure it is more.”
GitHub Copilot explained
So what is GitHub Copilot and how does it work?
Essentially, it is a large language model similar to ChatGPT. But instead of being trained on ordinary text, Copilot is trained on billions of lines of programming code. That way, Copilot can suggest software code in different programming languages.
The Github Copilot is integrated into the environment where the software engineers do their coding. It suggests actual code, sometimes even big pieces. The programmer can choose to accept the suggestion or ask for an alternative.
“Very often I can just accept the code and save myself the time to write it. Of course, I still need to read through and do a quality check, but very often I can use it as is,” Pedro says.
See a short demo from Pedro here
Successful pilot project
Schibsted ran a pilot project during the spring and summer to test if Copilot would be a useful tool.
“The response was very clear: Our developers identified significant productivity improvements in their work when being assisted by AI,” says Sven Størmer Thaulow.
The pilot project was run by Jon Gunnarsson, Service Manager Collaboration & Productivity.
“Schibsted is far ahead of most companies in making use of AI for software developers early. I love that we have a management that encourages us instead of being stopped by fear. ‘Handle with care — but please do handle’ is the message they send out,” he says.
And yes, Copilot also makes stuff up
ChatGPT has been known to hallucinate — or make up answers — when it does not have the right information.
What about Copilot? Is it also a happy liar on occasion?
“Oh, yes! Sometimes I conclude that right now Copilot is just drunk. In general, the tool seems to be decently accurate with small pieces of code, but produces more errors on larger blocks,” says Pedro.
Will not replace programmers
The use of the AI tool grows every week. On average 25 % of the code proposals are accepted by the software engineers, Jon says.
So will tools like this eventually replace the need for human software engineers?
Neither Jon nor Pedro are worried:
“No, it will not replace humans. You still need the creativity that is at the core of good software engineering. But it saves time, and that means that the programmers can do more,” Jon says.
“It changes how we work. I think that this symbiosis of AI and human input is probably how we will operate in the future. The best, both for me as an individual programmer and Schibsted as a company, is to adjust to that reality and see how we best can work with it,” Pedro says.