Why CSPs need to automate Microsoft Cloud solutions
Building solutions has always been at the heart of an MSPs day-to-day craft, whether it’s configuring a scalable Office 365 environment for a new client or developing a custom virtual desktop solution for a multinational business. Building Microsoft Cloud solutions is in many ways an art form just like painting or carpentry; CSPs and their engineers will have their own unique style or ‘design fingerprint’. For example, this might involve the way that a database solution replicates across regions, or even the way that drive-mapping is applied to user-groups.
For many Microsoft Partners, the main challenge faced as the organization grows is the double-edged sword of scalability. Naturally, engineers like painters have a knack for perfection; always making sure that code is syntactically immaculate with flawless and efficient functions – never wasting a single byte. Often, the concept of adopting an ‘out-of-the-box’ solution is met with distaste. Working with someone else’s code-base just isn’t palatable for some… it’s like driving someone else’s car; the steering feels off and the buttons are in different places. Yet, without a scalable and efficient way of developing solutions, the business won’t make money, so the need for a faster and more repeatable approach to building solutions arises.
Don’t Repeat Yourself
In general, a bespoke approach to building solutions lacks scalability. Any efficient coder will understand the Don’t Repeat Yourself (DRY) principle, which can also be applied here. For Microsoft CSPs, many of the solutions built on the Microsoft Cloud are not groundbreakingly new. Migrating customers from on-premises to cloud-based Office 365 environments has been accomplished time and time again. Backup solutions, Desktop-as-a-Service and Filesharing are all common use-cases and solutions that an MSP has to configure and manage for clients on a day-to-day basis. It doesn’t make sense to have to start from scratch. Instead, engineers can adopt pre-configured solutions and help achieve scale by delivering solutions to multiple customers faster.
While many tools exist on the market today, including Azure’s own ARM (Azure Resource Manager) templates, these tools tend to be designed by engineers for engineers. You may liken this to piecing together lego bricks instead of individual resources. ARM templates are useful for developers to speed up the process of, for example, configuring a Windows VM or a DNS forwarder. However, layers of complexity still exist in combining the right templates (the larger lego bricks) to create a workable solution for an end-customer. Clients tend not to be concerned with the ‘finer’ details of an application you are building for them. Rather, they are more often interested in, for example: “Is it working correctly?”, “Can I rely on it?”, or “Will my data be secure?”. While templates help to speed up the technical deployment process, they still lack the capability to incorporate Office 365 resources into the fold – and ultimately make solutions ‘workable’ for end-users. Deploying a Windows VM only goes so far in terms of building a workable environment. Missing still might be the integration with Azure AD, Office 365 setup for a tenant and their user-groups, security settings or perhaps the end-customer’s drive-mappings including the tenant’s existing on-prem storage.
Myth-Busting: Pre-configured vs. bespoke solutions
It’s important at this point to dispel a couple of common misconceptions. Firstly, adopting pre-configured solutions doesn’t imply that quality has been sacrificed. Often, the same – if not more – scrutiny has been applied in the development of a pre-packaged solution. In open-source land, sometimes tens or hundreds of contributors work on solutions together, enhancing and improving each other’s work. At the same time, for Microsoft solutions, you can entrust that a number of Microsoft experts have worked on a given solution, pooling their vast experiences gained in multiple organizations and on myriad use-cases. Secondly, pre-configured solutions are not rigid objects that can’t be customized. It may be true in some cases, particularly where service providers have abstracted away low-level configuration options, for example where hosting providers give end-users turnkey access to website solutions with no shell access. However, in the case of many pre-configured Microsoft solutions, developers retain the same level of control over the scripting and setup process as those who built the solution.
Profitability is the main priority
The harsh reality for MSPs is the need to be profitable. A common discord between engineering and sales/marketing teams is the quality vs profitability principle. Engineers will argue that quality is the utmost priority; our solutions need to be 100% hand-crafted and bespoke to ensure they function exactly as we expect. However, crafting the finest ‘Rolls-Royce’ of solutions is great… if you can sell it to a few thousand customers, generate profit in the process and keep your dev studio employed. Hence there is a need for Microsoft Partners to build and ship solutions to clients more efficiently, avoiding repetition and increasing scalability.
Vincent Mejan, Chief Technology Officer & Innovation Lead for Spinpanel, is hosting a Webinar in April for Microsoft Partners to give the ‘low down’ on how Microsoft Cloud Automation works at Spinpanel.
Join us there and receive the latest guidance to help you increase business profitability through high-quality, scalable and automated Microsoft Cloud solutions.