The use of artificial intelligence (AI) in software development is on the rise, with 63% of professional developers currently utilizing AI within their development process, according to Stack Overflow's 2024 Developer Survey. AI coding assistants powered by large language models (LLMs) are proving to be an incredible time saver for boilerplate code, simple functions, documentation, and debugging. However, experts caution that AI-generated code is riddled with quality concerns, and a heavy reliance on it compounds technical debt.
Kevin Swiber, API strategist at Layered System, emphasizes the importance of knowing when and how to rely on AI code assistants. "It's changing day by day as the technology advances. It's hard to keep up." AI performs exceptionally well with common coding patterns, generating new code with low complexity when objectives are well-specified and popular libraries are used. Web development, mobile development, and relatively boring back-end development are usually fairly straightforward, according to Charity Majors, co-founder and CTO of Honeycomb.
AI coding assistants truly shine when they augment developers, taking on routine and repetitive tasks like generating boilerplate code or suggesting code snippets, functions, or even entire classes. They accelerate rapid prototyping, exploratory design, and experimental coding, turning initial ideas into tangible code much faster. Harry Wang, chief growth officer at Sonar, notes that AI excels at well-understood programming tasks like scaffolding microservices, generating REST APIs, or prototyping new ideas.
However, AI coding assistants fall short in situations where engineering goals go beyond a one-off function, aren't well-specified, involve large-scale refactoring, or span entirely novel projects with complex requirements. Generative AI tools can falter when modifying or extending an existing code base, and quality and security can suffer from vague prompts or poor contextual understanding, especially in large, complex code bases.
Experts warn that AI-generated code requires careful review and validation, as it can create a new burden to debug and fix subtle issues. "In a worst-case scenario, the time and effort required to debug and fix subtle issues in AI-generated code could even eclipse the time it would require to write the code from scratch," says Wang. Moreover, AI outputs can be syntactically correct but contain logical errors or subtle bugs, originating from a "black box" process.
Despite these limitations, AI coding tools are improving exponentially, and executives are taking notice. Shopify's CEO's AI mandate is anticipated to usher in similar decrees and affect hiring. Spencer Kimball, CEO of Cockroach Labs, believes that AI can give companies an edge, stating, "Don't worry about spending in the short term—figure out how to use this stuff. It's much better to be a 500-person company than a 5,000-person company."
However, leaders must understand the limitations of AI and begin delineating boundaries. Deploying AI willy-nilly can quickly lead to frustrating outcomes, and developers will use generative AI regardless of whether they have approval yet. Both developers and leadership should gain familiarity with AI coding assistants to understand their strengths and weaknesses, which will be critical to rolling them out effectively.
The future capabilities of AI are hard to forecast, but more and more developers are bullish on its role in their day-to-day workflows and big picture goals. Salesforce's latest State of IT survey found that 92% of developers expect agentic AI to advance their careers. As Kimball notes, "The future of software is AI. This is the worst the models are ever going to be." With context window limits constantly improving, many of the issues surrounding AI in large code bases could evaporate, opening up new possibilities for software development.
Ultimately, the industry must start considering data sovereignty, as regional data restrictions are rising and agentic AI will lower the threshold for data access. Data providers will have to satisfy these regulations and learn how to appropriately secure their data. As AI coding assistants continue to evolve, it's essential for developers and leaders to stay informed and adapt to the changing landscape of software development.