Clutch spoke with Alexey Trigolos, IT Services Director at Elinext Group, and Nikolay Karzhan, .Net Development Team Leader at Elinext Group, about the benefits and challenges of utilizing cloud platforms, specifically Microsoft Azure – an important consideration for organizations familiar with Microsoft technologies seeking a Cloud Service.
Please describe your organization.
Alexey: We are a software development company specializing in full-cycle product development. Enterprise web and mobile application development and QA consulting are among our core activities. We are well experienced with SaaS solutions, particularly Amazon Web Services and Microsoft Azure. Right now, we're involved in Azure projects related to payment services and enterprise resource planning systems.
What is the business challenge a company faces that initiates the need for this platform?
Nikolay: We particularly use the Azure cloud solution because we've developed our projects using .NET. Azure provides a lot of flexibility in managing different aspects of .NET projects, and gives us the ability to store our entire solution in one place. We have the ability of creating a database for our projects and scale it according to need. We have traffic management, diagnostic, login, and task management mechanisms.
A: Another reason for using Azure is that our e-payment solution required a secure implementation. We needed to store our environment using a third-party company, which uses Microsoft Azure. Scalability was important because, even though we're currently in the production phase, we expect the application to have a high database load. We plan to meet this demand by running additional servers, which is something that Azure can facilitate.
How does your company implement this platform?
A: We have three different environments in Microsoft Azure, all related to our production. We have a real production environment, a pre-production one, and a staging environment which is used for testing purposes. The latter is used locally by our customers in Canada.
N: Azure is a Microsoft project which provides easy development abilities on local machines. Our local solutions can be moved to any Azure environment. Another benefit is that they provide good integration with Visual Studio.
How does the cost of Azure compare to comparable solutions?
N: I can only compare it with GoDaddy, which is another solution for Visual .NET hosting. Price-wise, Azure is within market standards, but they have very flexible pricing plans. For example, for the initial implementation of a project, a client can opt for the free hosting. This free version provides limited resources, mainly that no more than 10 websites can be created, the dedicated CPU doesn't exceed 2 Ghz and the memory is no larger than 1 GB, which is shared between all projects. This can be enough for initial development. Afterwards, clients can buy the first commercial plan, going into pre-production. This offers more resources, and as the main benefit, they can make scaling configurations. If, for example, the traffic spikes during evenings, when most users visit online shops, Azure can automatically increase the needed resources and make performance better. After user-request numbers return to normal, the default configuration is implemented. This comes with a typical cost of $5 per day. An increase in users drives up the price only for the hours in which additional performance is needed.
We've tested the system's ability to cope with several hundred payments per second. In cases such as this, Azure can offer more than 10 CPUs in parallel, which can process requests without result errors. The price will grow accordingly but the same configuration on a non-cloud system could cost the same or more.
A: The initial expenses can be quite significant for a company, so a solution like Azure can be the ideal choice. In the long-term, costs grow as more powerful environments are needed, and at some stage, cloud solutions can become expensive. Customers reaching a large-enough size will usually try and organize their own server environment.
Why do you recommend that platform over other platforms?
N: Azure is an ideal solution for hosting and developing .NET applications, as well as using the Microsoft-recommended technologies for such an application. Azure automatically provides integration with development tools and gives management abilities that are usually not permitted by other platforms. It also has a good scalability mechanism. Web applications created on .NET work best on Azure.
Looking back, are there any areas of the platform that you feel could be added or improved upon?
N: At one point, our service stopped working. We contacted Azure support, which solved this problem within several days. We use the free support plan, which nevertheless solved our problem quickly.
In regards to features, during the two years in which we've used the service, the Azure team has integrated a lot of different functions on the administrative side of the platform. From our point of view, they currently cover all of our needs. This is the result of a good collaboration with their customers and administrators.
During the last year, Azure has allowed the upload of custom certificates and the configuration of custom website DNS. They allow the use of source code from development tools and have updated their database to SQL Server 2016. These are just a few examples that show the mobility of the Azure platform. They have very good support and are constantly working on new functions.
Have you had any interaction with the support team or any of the support resources?
A: The support team of Microsoft Azure has made huge progress in terms of documentation. I was involved in projects for which customers gave us access to their systems. Whenever we encountered problems in these cases, we had difficulty in identifying their sources. Due to the fact that Microsoft Azure provides very good documentation, we have managed to identify errors very quickly.
N: Two years ago, their level of documentation was still lacking, but they've solved this problem and improved their system.
We have five additional questions. For each of these, we ask that you rate Azure on a scale of one to five, with five being the best score.
How would you rate Azure for it functionality and available features?
Five. We would have rated them a three a year ago, which indicated that they've grown in the meantime.
How would you rate Azure for ease of use and ease of implementation?
How would you rate Azure for support, as in the response of their team, and the helpfulness of available resources online?
Four. The main distinction is regarding who will actually use their services. If a user is not familiar with Azure from the start, they have to experiment to a degree in order to understand their documentation. Support resources are written for professionals, rather than juniors.
How likely are you to recommend Azure to a friend or colleague, out of five?
Five. My friends are mainly .NET developers, so I will recommend Azure every time if the need is to deploy an application with great performance.
How would you rate Azure for your overall satisfaction?
Four. Azure still has areas of improvement. For instance, the debugging speed on remote servers could be better. Other problems are the accuracy of error messages and general deployment speed.