In the coming decade, all software development will be assisted by AI. Either the code is going to be generated with the help of AI, or it is going to be reviewed by AI, tested by AI, or even deployed by AI.
Image generated by DALLE2 with the prompt: “software development with artificial intelligence assistance neural network happy”
So, if you are an engineer or an engineering manager, it is safe to assume that there is an AI in your future. And this is due to several factors:
- We are all facing the challenge of shipping software with limited resources. We cannot hire all the engineers that we want, and even if we can hire them, onboarding is slow and expensive, so we need to find ways to move faster with the resources that we have.
- There’s an opportunity for automation. We know that at least some of our tasks as engineers are repetitive and can be partially automated. Even code itself is often repetitive and common. This is why things like StackOverflow are so effective.
- In recent years, we have seen the rise of powerful ML models that learn from massive amounts of data and can generate text and even images.
Combined with high-quality open-source code artifacts and code artifacts from your organization, AI is beginning to change how we do software development.Get Started
In the past decade, organizations realized the importance of solid source control and CI/CD pipeline for high-quality software delivery. Having these in place also turns the organizational codebase into a rich source of collective knowledge about software that has been reviewed and tested. AI assistants can learn from this collective knowledge and bring it to the fingertips of all the developers on your team.
So you can think of AI as another layer on top of your source control and CI/CD that learns from these processes to improve your team’s productivity. In the coming years, AI will use this information to accelerate all stages of the development lifecycle.
Over the years, much effort has been invested in the automation of test/review/deployment processes. This part of the pipeline has seen a lot of improvement, even without AI. However, the left end of the pipeline, writing code itself, has not changed much since the introduction of IntelliSense in the 90s (or even earlier if you trace it back to its sources). And this phase is really where customer problems are being solved, where we can automate mundane tasks and help developers focus on creative work.
And this is exactly what we do. We use large language models trained on code with permissive open-source licenses to predict code in all common IDEs and languages. This makes developers better and happier, automates mundane tasks, it prevents errors, and keeps developers in the flow. It is also safe and secure, and you can run it in your private cloud if you have to.
Vision for Doubling Your Productivity with AI
Doubling your productivity with Tabnine
In this video, Eran Yahav discusses some of the challenges and opportunities associated with using AI to enhance productivity within development teams.