How to build AI Products
Managing research & application development
While Arnekt continues to play a dual role in Research and development, we often try to come up with a combination of engineers and researchers.
A mix that is a considered a challenge to manage and deliver products !!
Development of products and services using AI is increasing by the day.
Many products/services are attracting a great deal of attention and are effective in making excellent predictions aiding in automation, optimising operations etc.,
While tools and products that claim to be effective in the above mentioned areas are launched, there are several cases where development is stalled and projects are on the verge of failure.
A typical AI development flow in various organisations is as follows:
Researchers, who have specialised training in AI, make models and pass them to engineers.
The research team is trying to create optimised and fast AI models, so they complicate the model to improve performance and repeat detailed customisation.
On the other hand, software engineers are mandated to package the software/product for quick commercialisation, while doing so the engineers have to consider UI, scalability, security and a “clean” code from maintenance point of view.
Experience tells us that products never see the light of day if researchers only focus on models and hand them over to the software engineers expecting them to consume those models. Both teams working without enough knowledge in each others areas is a primary cause of failure despite having project managers bridging the gaps !
Arnekt, having delivered successful products and projects advocates the following list of do’s and dont’s:
To Do:
First, hire researchers who are familiar with software engineering.
Let researchers come up with new ideas, models etc.
In JOINT meetings, emphasis should be placed on the software engineering aspect of things viz. ease of product management, stability, scalability and simplicity of the product.
Train all software engineers on the development side to update or at least maintain the models.Things you should not do:
Let researchers write code bases in “silo”
Have researchers define metrics without sharing/considering details about product needs.
Data models with pure emphasis on accuracy rather than ease in management.
Tuning models without keeping “commercialisation” aspect in mind.
We think, Machine learning is now a basic knowledge similar to “networking concepts” for all engineers. From our point of view, almost 70% to 80% of machine learning knowledge and skills can be acquired by software engineers with a bit of experience and an engineering background
The clear challenge is that of “producing a machine learning / Deep learning model that is accurate, easy to understand, and manage” rather than “making an excellent model”.
Companies that understand the importance and can create an environment where engineers can constantly update their knowledge and skills with the latest machine learning tools will see a decent rise.
At Arnekt we have a team where all engineers have deep knowledge of AI!