The future of business and software development is complex.
In order to develop, deploy, and manage cloud-native applications that effectively deal with this complexity and volatility, IT organisations must become lean and agile.
That's the word from Dmitri Tcherevik, the chief technology officer of Progress, an application and software development company that recently acquired DataRPM.
In addition, Progress also acquired backend as a service (BaaS) company Kinvey.
Tcherevik says that traditionally, IT organisations were structured by function: design, development, testing, and DevOps.
However, Tcherevik explains that as organisations break monolith silos into serverless functions and microservices supporting a broader range of end-user experiences, they must reorganise into self-contained multi-functional units responsible for this or that service, process, function, or experience.
In this exclusive interview, Tcherevik continues this discussion by explaining how to form a successful app development strategy.
He also discusses the company's recent acquisitions and how DevOps helps companies utilise cognitive computing, artificial intelligence (AI) and Internet of Things (IoT).
With your long history in the software industry, could you discuss the current era of application development we are experiencing today?
This era is characterised by an unprecedented level of complexity.
Life used to be simple when we only had to choose between ASP.NET and Java and worry about differences between the various flavours of web browsers.
These days, there is tremendous fragmentation at every level in the architecture stack: mobile platforms, APIs, cloud platforms, databases, and so on.
This unprecedented level of complexity and volatility is driving the need for the next generation of development tools and platforms that can mask the differences and provide a higher-level set of abstractions, APIs, and utilities.
Applications developed with NativeScript, for instance, support many different types of mobile platforms with a single codebase.
What trends around software and app development are you currently noticing in the A/NZ region?
As an accelerating megatrend, we see organisations migrating their IT solutions to the cloud in search for higher operational efficiency, performance, scalability, and agility.
Deploying an existing IT solution in the cloud “as is” is the first step in this journey. Lightweight virtualisation based on Docker and Kubernetes is proving to be very popular in this context.
As a result of this step, an IT organisation may end up with a hybrid solution that spans multiple clouds and several on-premise deployments.
Orchestrating business processes and connecting components and data sources across infrastructure boundaries is the next challenge.
Ultimately, to achieve the full benefit of cloud computing, an IT solution must become cloud-native. It must be re-engineered around public and private APIs, microservices, and serverless computing.
We see a growing number of organisations enter this advanced phase of the transformation.
What components make up a successful app development strategy?
I believe that the end user experience must be in the focus of any application development strategy.
We used to build applications that were designed to perform a certain function in a certain way on a certain platform. Users had to spend time learning their way about the app.
They had to use a particular device, such as a company-provided laptop, to interact with the application.
These days, expectations are totally different.
Instead of a user adapting their behaviour to learn and use an app, an app is expected to learn users’ preferences and adapt accordingly to provide the best experience on whatever device the user happens to be using at the moment to access the application.
This knowledge and experience are expected to travel with the user as they change devices and transition between environments.
As an example, I can begin watching a movie on my phone on my commute from work and continue watching it on my TV as I arrive home.
This level of experience is expected not only from B2C apps but also from B2B and B2E applications.
This requires a change of mindset on behalf of application developers.
How are cognitive capabilities impacting business applications and how accessible are these today?
What can be done to democratise these capabilities?
To deliver this new level of experience, applications must become truly cognitive.
A cognitive application is capable of using machine learning algorithms to analyse immense volumes of data and make predictions.
These predictions may be related to user preferences, client behaviour, reliability of manufacturing assets, crop yields, or anything else that the application is designed to deal with.
Predictions can be turned into tangible outcomes. For instance, a sales person can be automatically notified of a local sales opportunity as she lands at an airport.
This, of course, is easier said than done.
Traditionally, enterprise applications were built by business analysts and software developers.
Cognitive application development, on the other hand, requires active participation of domain experts and data scientists.
Domain experts turn raw data into signals that can be processed with algorithms designed by data scientists.
Both domain experts and data scientists are in short supply. Given the type of knowledge and training required, we cannot expect their numbers to increase dramatically any time soon.
The good news is that predictive models can be packaged as cloud services and offered to broader audiences.
We can expect a growing number of cognitive services providers in different industries, such as healthcare, financial services, and manufacturing, in the near future.
What role does DevOps play in a company’s ability to utilise cognitive computing, AI and IoT technologies?
Deploying cognitive models in production and offering them as scalable cloud services requires new skills, processes, and platforms. DevOps has a critical role to play in enabling this transformation.
Many folks know how to organise continuous deployment of microservices.
A much smaller number of people know what continuous deployment of machine learning models is and what a successful implementation may look like.
As a cognitive-first platform vendor, it is our responsibility to make this knowledge and the required tools and processes broadly available.
How have your two recent acquisitions (DataRPM & Kinvey) contributed to Progress’ overall business strategy?
With our recent acquisitions, we are skating to where the puck will be very soon, I hope.
Kinvey is an industry leading platform for cloud-native and serverless applications. It is a platform that enables organisations to successfully migrate their existing IT solutions to the cloud and re-engineer them to take full advantage of the benefits offered by cloud computing: operational efficiency, higher scalability, availability, and others.
The DataRPM story is two-fold.
First, it is a cognitive platform that can be used to create, test, and deploy machine learning models for all kinds of applications. We are working on integrating this functionality with Kinvey in order to provide a holistic platform for cloud-native cognitive-first apps.
Second, it is a complete predictive maintenance solution for industrial IoT applications.
For this narrow domain, the DataRPM team figured out how to automate tasks that are typically performed by domain experts and data scientists. As a result, the solution can be deployed in a matter of weeks with very tangible results.
Where to next for Progress? Which areas will be the primary focus for Progress over the next year?
With our two recent acquisitions of Kinvey and DataRPM, more opportunities arise every day and we look forward to helping more companies across the APAC, EMEA and North America regions take advantage of Progress’ cognitive-first capabilities.
IoT is growing very rapidly in APAC, which is why this is a key region for us.
In particular, we see opportunities in the manufacturing and logistics/transports space, where we feel there is a strong need and ROI for automation, improving productivity and discovering new sources of revenue.