[NEW] Provenance and Attribution: Minimize IP liability for GenAI output
Home / Blog /
5 software development skills AI will render obsolete
//

5 software development skills AI will render obsolete

//
Eran Yahav /
3 minutes /
April 16, 2024

The common refrain that “AI will change everything” is outdated; AI has already had a monumental impact, perhaps nowhere more so than in software development, thanks to the rapid adoption of AI coding assistants. According to a 2023 Stack Overflow survey, 44% of professional developers are already using AI in their software development process, and some reports say that number will more than double by the end of 2025.

The quick uptake of AI in software development stems in part from developers’ well-deserved reputation as early adopters who know a productivity boost when they see one. Yet the “AI coding assistant” moniker undersells the benefits. The latest offerings go far beyond completing lines of code to helping developers hash out functionality, craft the UX, choose the right libraries, apply proper syntax, run ad hoc tests and more — all through an interaction similar to the one users enjoy when interacting with their favorite AI chatbot.

The beauty of AI coding assistants is that they help expert and beginning developers alike. Not even the most skilled and experienced developers know everything, so suggestions derived from vast repositories of broad, deep, varied code are welcome. Likewise, those new to software development get the benefit of AI guidance in the context of their specific tasks, accelerating the learning process and even enabling adept business users to build apps for the first time.

AI coding tools automate so many tasks that developers are likely to discover that some of the skills they’ve acquired will no longer be needed. But that’s OK, because many involve drudgery that developers will be happy to let go.

1. Heroically seeking obscure details

Even the sharpest developers spend an inordinate amount of time chasing all sorts of details via Google or Stack Overflow. AI tools are terrific at surfacing the right information in a flash — for details such as the proper syntax for an API, but also for broader prompts such as “what are the arguments for this function?” or “find a component that does X.” Yes, developers need to verify the AI responses, but the time-savings and reduction in tedium can be phenomenal.

2. Writing monster tests and documentation at the end of the cycle

Already, agile development methodology mandates that developers should test as they go, rather than at the end of the software development cycle. But that requires work. AI coding assistants enable developers to generate tests at a granular level automatically, as a byproduct of generating the code itself. By the same token, the chore of writing documentation just got much easier: AI coding assistants can deliver a well-organized first draft based on code alone. That documentation won’t be perfect (typically not including the important aspect of explaining design choices), but editing it will be much easier than starting from scratch. AI lets us spend more time on building apps instead.

3. Slogging through code maintenance

With AI coding assistants, developers who are charged with maintaining code won’t have to pore over other people’s work to understand what the heck they were trying to do in the first place. Developers can simply select a code snippet and ask the AI coding assistant to explain it.