AI has recently entered the scene and is causing quite a stir, with people suggesting that certain kinds of jobs will become obsolete because AI will be able to completely replace them. While this may be true in some small corners of the workplace, I’m not convinced that there is a need to fear AI replacing jobs, particularly in software development. The fact of the matter is, AI tools such as ChatGPT are only as good as their user. As a software engineer, I’ve played around with ChatGPT since it was released, and based on what I’ve seen, I have no fear whatsoever that I’ll soon be out of a job.

The Reality

With that said, ChatGPT and tools like it are game changers when it comes to improving the speed and efficiency of talented software engineers. These tools become invaluable when you understand what you are doing and know how to frame the right questions. I have attempted to use ChatGPT for tasks like writing full functions to format dates in JavaScript, and, in my honest opinion, it was an abysmal failure. Ultimately, I had to go back and work through the problem on my own, and I was better able to solve it without the help of AI.

However, I have realized some value in using AI for smaller, mundane, and repetitive tasks. I believe that if you can develop the skill of leveraging AI in these areas, you can focus on the bigger picture, which can lead to significant value in software engineering and potentially other professions as well.

In the remainder of this post, I would like to discuss one example in which I have found value in using AI in this manner. If you enjoy this post and find it valuable, let me know and I’ll discuss other ways that I’ve leveraged AI to improve my value as a software engineer.

Example: Creating Test Data

I have recently been working on a proposal for a prospective client of my software development agency and realized that building a small prototype would be beneficial in demonstrating a specific part of the discussed app. As part of the prototype, I wanted to use realistic data to better showcase the concepts we were discussing.

The app will essentially serve as a portal where users within the organization can fill out and maintain a variety of fairly complex forms that need to be completed periodically throughout the year. For the prototype, there were four different types of forms I wanted to demonstrate, and I decided to utilize ChatGPT to generate test data in the form of JavaScript objects.

To be completely honest, my experience with ChatGPT had a slightly bumpy start. The initial response to my first prompt was a JavaScript code snippet that addressed what I was asking for. Once you see my prompt, you’ll understand why.

And here is the ChatGPT response that was generated:

ChatGPT did exactly what I asked, but not what I wanted. This highlights an invaluable lesson that I’ve learned—it’s crucial to know how to prompt the AI effectively. Prompting is a skill that requires deep domain knowledge.

To address this issue, I reframed the question to provide a more specific purpose for using ChatGPT as test data. Here is the revised prompt:

The following output was generated by ChatGPT, which is much closer to what I was looking for:

I was able to generate test data for the prototype, covering four different types of forms, each with its own unique nuances. I used this data to demonstrate the prototype to the user, and their response was very positive.

Conclusion

Thanks to ChatGPT, I didn’t have to spend a significant amount of time on this repetitive task. Instead, I could focus on building the prototype itself, greatly improving my efficiency. I believe this is one of the keys to leveraging AI for software engineers and professionals in any field. AI won’t replace your job, but it can enhance your performance, particularly in areas that involve a lot of repetition.

One more final thought. When it comes to test data, the repetitive nature of creating it often leads to lower quality. However, by utilizing ChatGPT, I was able to maintain a high standard for the data, making the prototype much more convincing to the client.

If you found this post interesting and haven’t already subscribed to this newsletter, we would greatly appreciate your support through subscribing. Stay tuned for more content on the latest trends in software engineering, entrepreneurship, and building a software development agency!

NOTE: For complete transparency, I utilized Chat GPT to proof read this post.