AI coding assistants: 8 features enterprises should seek
- IDE integration: Find a tool that integrates via plug-in with the IDEs your enterprise uses. Many AI coding assistants are available only as web applications hosted by the provider, which means developers need to copy and paste the AI-generated code into their work. Names, paths, and so on must be changed after the code is pasted, increasing the likelihood of error and impeding productivity gains.
- Context awareness: Every enterprise software development operation has its own practices, conventions, and styles. For AI-generated code to reflect those parameters, the AI coding assistant must be trainable on your organization’s code base, resulting in private code models specific to your team. That context awareness also reduces the number of natural language instructions a developer needs to enter to generate relevant code, with fewer corrections required for the code itself. An added bonus is the ability to connect AI models to different code repositories for different teams.
- Code privacy: An AI coding assistant should be trainable using your own code, but no one wants private code to be viewable to all. For maximum security, an enterprise coding assistant should be installable on prem or in a virtual private cloud. Neither customer code nor customer training data should be available to the solution provider—and training on customer code should occur in a secure and separate environment.
- Open source compliance: Generative AI solutions, both those that generate natural language and those that generate programming code, have an unfortunate tendency to plagiarize. That’s not a problem for an AI coding assistant if the code it’s trained on is covered under permissive open source licensing, such as Apache 2.0 or MIT (most of GitHub’s open source code is licensed under the latter).
- Centralized configuration: Like almost all enterprise software, an AI coding assistant should enable you to manage subscriptions and assign user roles and permissions from a single console. The security model should be adaptable to the one established by your organization. Private code models should require an explicit opt-in from the team administrator.
- Security and privacy: Control over where code is sent, how it is processed, and how it is used are central to many enterprises. To ensure the security and compliance of their code many companies need complete control over where the code and models run and how they are accessed.
- Monitoring and reporting: The more AI coding assistants are used by your team, the better the code generated. Monitoring dev team usage and generating periodic reports enable team leaders to evaluate how well coding assistants are working for developers and whether adjustments need to be made.
- Code testing: AI coding assistants are moving beyond code generation to the automatic creation of unit tests. Those tests should tailor themselves to the customer’s common patterns, easing the burden of one of the most tedious software development tasks.