Virtual Machine — Designed by Freepik

Our view on the Future of Software Engineering: the top 3 AI use cases for next-gen Software Development

Chiara Gambarini
Inkef
Published in
3 min readApr 6, 2022

--

The software engineering landscape is highly innovative, dynamic and ever-evolving. It is also the most expensive part of building a new software product, both in terms of time and resources. In the current hyper-competitive environment where organizations are still struggling to meet the rapidly growing demand for software, cutting time to market while delivering high-quality software is imperative.

The combination of foundational technologies, such as cloud computing and containers, with new frameworks, development tool-kits and access to open-source software led to a paradigm shift towards a more flexible and agile ecosystem. Nevertheless, developers are still spending a great deal of their time on repetitive tasks, rather than focusing on value-creation. For instance, it is estimated that developers spend about 45% of their time fixing bugs or addressing technical debt, rather than building new features or improving existing ones. This is where artificial intelligence can help in freeing up key resources and help software-intensive organizations push innovations to market.

AI-powered tools have a remarkable impact throughout the entire software development life cycle, from ideation to deployment. In particular, we believe there are three domains where automation is playing a key role: developer enablement, software testing and software delivery/deployment. This blog post focuses on development enablement, which consists of the practices, tools and approaches that support a better and smoother development of software products. This includes tools aimed at improving productivity as well as tools that improve the overall development experience. In essence, we are referring to instruments that can help developers in writing better code, faster and with that automate a core component of the software engineering process.

From an investment perspective, start-ups offering AI-powered software development tools raised about US$ 704M in 2019 alone, and this figure is forecast to surpass 1B in 2022.

Below we have listed the three use cases for AI in software development that we are most excited about this year:

1. Code automation

Code automation refers to an AI anticipating and providing code suggestions to auto-complete code in real-time. There is an opportunity to significantly reduce the time spent writing boring and repetitive code, by getting concise code suggestions while typing, directly in the code editor. With an estimated reduction of 47% in keystrokes typed by developers, code automation tools are taking developer team’s productivity to the next level. Take start-ups like Tabnine, which leverages insights learned from millions of repositories and projects to streamline the development process by providing code guidance and real-time suggestions.

2. Automated code review

This is the process of catching bugs and security vulnerabilities in pieces of code, before the testing phase. Currently this is done manually, for example via forks and pull requests in GitHub, and takes upwards of 10% of developers capacity. This creates the opportunity to streamline this process with tools that can integrate with code management platforms and leverage AI to identify critical issues, bugs and potential vulnerabilities. For example, Amazon CodeGuru is an AI that acts as a human reviewer providing intelligent suggestions to improve code quality.

3. NLP to code

This is the process of automatically generating snippets of functioning code or building simple web applications from a natural language description of the functionality. The value-add of such solution is twofold as there is an opportunity for NLP-to-code tools to both accelerate the development process for engineers, by supplying working code based on simple descriptions, and to make the creation of basic working software available to non-technical professionals. For example, start-ups like Cogram allow you to gain access to data without writing a single line of SQL, by translating plain English into database queries.

Players offering AI-powered tools for developer enablement typically offer a combination of multiple AI-enabled features in support to one key goal: to create-value for developers by cutting down the time spent on repetitive and low-value activities.

- THE END

PS. Are you a start-up in the Software Engineering space looking to raise VC funding? Please do reach out to chiara@inkef.com

--

--