What role does ChatGPT play in software development?

Written by Caleb Panza on March 14, 2023

ChatGPT from OpenAI has become something of a global phenomenon as people of all industries and vocations have begun to use the power of artificial intelligence and machine learning in everyday life.

While this technology is not new by any stretch of the imagination, the accessibility and capability presented by ChatGPT has projected the technology to a brand new level — freeing up more time for innovation and creativity across thousands of organizations.

Hey, I’m Caleb, software developer at Differential. I’ve been exploring ways to unlock value through ChatGPT in my everyday work. I truly believe that ChatGPT is not meant to replace your expertise as a software engineer. Rather, it’s meant to augment your skills and save you time on tasks that can be automated.

As a developer, you probably agree that data parsing, test writing, and refactoring are all development tasks that can eat up hours of your week. But they no longer have to through the use of ChatGPT and AI tools.

Here’s a summary of how the Differential team and myself are thinking about ChatGPT.

Shape your perspective — setting reasonable expectations for ChatGPT

A virtual assistant, not a new DTU

It’s important to remind ourselves that ChatGPT is a virtual assistant. It’s not a new DTU or a new headcount on the team. A virtual assistant is somebody that you bounce ideas off of. You’re going to bring them into the fold of everything that you’re already doing, rather than offloading the entirety of your workload to them.

Rubber ducky debugging

Developers no longer have to talk blindly at a rubber ducky or the wall hoping to say something to spark an idea. Now, we have real time collaboration and communication with ideas organized and made up of billions of sources throughout the whole of the internet to help spark some type of realization that gets us over hurdles.

Enhancing productivity, not replacing core competencies

This is a tool that’s meant to enhance productivity. ChatGPT can be trained to automate repetitive and tedious tasks such as data entry, data parsing, and data analysis. By freeing up time spent on these tasks, developers can focus on more creative and strategic work that requires their expertise. It can also be trained to provide insights and recommendations that can assist in decision-making, but it is not a replacement for core competencies.

Learn more about ChatGPT in software development

Grab a sandwich and watch my informal Lunch & Learn where I demystify the reality of ChatGPT and hopefully sparks some excitement for time saving opportunities that we can all begin to practice in software development (and beyond).