We have all witnessed the impressive speed at which software has been developing during the last few decades. Businesses and individuals alike now have multiple solutions available to them enabling them to enhance productivity in ways that were previously not possible.
As one would expect, this can only mean great things for the future. Developers, however, have dealt with tremendous hardware challenges and onboarding issues creating stumbling blocks for the work they are trying to do. These problems are precisely what Microsoft is trying to address with the introduction of the Microsoft Dev Box.
By providing high-powered workstations in the cloud, developers can up their game and produce better work. In this article, we’ll go over what this product is and why it’s a potential game-changer.
Introducing Microsoft Dev Box
The Microsoft Dev Box is a new Microsoft product that utilizes the existing Windows 365 infrastructure to stream secure and ready-to-code developer workstations on demand. By now, most will be familiar with the Windows 365 Cloud PC. Additionally, most appreciate how it enables businesses to optimize their operations using highly secure virtual PCs.
So, it makes perfect sense that Microsoft Dev Box would leverage the infrastructure that has already proven successful. The cloud workstations that developers will get are what are known as dev boxes.
You can easily use tools, source coding, and prebuilt binaries specific to a project to configure these dev boxes. And it is because of this type of functionality that users can begin work as quickly as possible.
As far as images go, you’ll have the option of creating a customized one or using a preconfigured one from Azure Marketplace, complete with Visual Studio already installed. Depending on the unique needs of developers, they can use multiple dev boxes for their day-to-day workflows. Accessing these dev boxes is easy and similar to other virtual desktops such as the Cloud PC. So, all you need is a remote desktop client or a web browser.
Requirements
As with any other product or service, those interested in using Microsoft Dev Box will need to meet a few requirements. Each user needs to have a license for Windows 11 Enterprise or Windows 10 Enterprise, Microsoft Endpoint Manager, and Azure Active Directory P1.
Although clients can obtain these independently, you will also find these licenses included in Microsoft 365 F3, Microsoft 365 E3, Microsoft 365 E5, Microsoft 365 A3, Microsoft 365 A5, Microsoft 365 Business Premium, and Microsoft 365 Education Student Use Benefit subscriptions.
Key Components of Dev Box
In this section, we’ll be going over the key components of Microsoft Dev Box that you should know. These will help you to set up Dev Box correctly, allowing you to get the best out of it.
DEV CENTER
When we talk of a dev center, we are referring to a set of projects that will all need the same settings. Dev centers enable platform engineers to use dev box definitions for the effective management of the images and the SKUs available to the projects.
Furthermore, these engineers will be able to use network connections to configure the networks that the development teams consume. Dev centers are also used by Azure Deployment Environments to organize resources. Your business can use the same dev center for both services.
PROJECT
When it comes to the Dev Box service, a project is a team function within the organization. And each project is a collection of pools. Moreover, each pool represents a region or workload.
Once a dev center and a project link, all the settings at the dev center level apply to the project automatically. It’s important to note, however, that a project can only be linked to a single dev center.
Dev managers can configure the dev boxes available for any project by specifying the dev box definitions that are appropriate for their workloads. For developers to create their own dev boxes, they need access to projects for developers.
And you can do this by assigning the Dev Box User role. The projects for Deployment Environments, as well as those for Dev Box resources, can be configurable in the same dev center.
DEV BOX DEFINITION
A dev box definition suggests a source image and size, including both compute size and storage size. It’s here you’ll have the freedom to select a source image from Azure Marketplace. Or choose a custom image from your own Azure Compute Gallery instance. Additionally, you’ll be able to use dev box definitions from across multiple projects in a dev center.
NETWORK CONNECTION
IT admins and platform engineers will need to configure the preferred network they use for dev box creation with their organization’s various policies as a guideline. Network connections store configuration information, such as Active Directory join type and virtual network. The dev boxes use the network to connect to network resources. You will also need to choose an Active Directory join type when creating a network connection and the options are as follows:
- Use native Microsoft Entra ID for scenarios, where your dev boxes only need to connect to cloud-based resources.
- Alternatively, use hybrid Microsoft Entra ID, when your dev boxes seek to connect to on-premises resources and cloud-based resources.
AZURE REGIONS FOR DEV BOX
Every business needs to start by selecting the most ideal region before proceeding with setting up Dev Box. In cases when your region of choice may not be available for Dev Box, it would be a good idea to select a region within 500 miles. You must specify a region for your dev center and projects. You’ll mostly realize that these resources are in the same region as your primary office or IT management center.
The region for a dev box will be determined by the region of the virtual network specified in a network connection. The service allows you to create multiple network connections, based on the areas where you support developers.
After doing that, you can leverage those connections when you’re creating dev box pools so that dev box users create dev boxes in a region close to them. According to Microsoft, opting for a region close to the dev box user is what will allow you to get the best experience.
DEV BOX POOL
A dev box pool simply refers to a group of dev boxes that are going to be managed together and to which similar settings will be applied. To enhance productivity, as well as working conditions, your business can create multiple dev box pools. These support the needs of hybrid teams that work in different regions or on different workloads.
DEV BOX
Dev boxes are preconfigured workstations that have been designed to be created through the self-service developer portal. Getting set up and starting work can happen immediately. This is because new dev boxes come with all the tools, binaries, and configurations that developers need.
And for those looking to work on multiple workstreams, you can easily create and manage multiple dev boxes. Users will have control over their own dev boxes. And if the need arises they can create more. But, once you’re done using them, you can then delete them.
Pricing table
SKU | Pricing per Dev Box instance Max Monthly Price | Hourly Compute | Monthly storage |
8 vCPU, 32 GB RAM, 256 GB Storage | $138.20 | $1.49 | $19 |
8 vCPU, 32 GB RAM, 512 GB Storage | $157.20 | $1.49 | $38 |
8 vCPU, 32 GB RAM, 1024 GB Storage | $195.20 | $1.49 | $76 |
8 vCPU, 32 GB RAM, 2048 GB Storage | $271.20 | $1.49 | $152 |
16 vCPU, 64 GB RAM, 256 GB Storage | $257.40 | $2.98 | $19 |
16 vCPU, 64 GB RAM, 512 GB Storage | $276.40 | $2.98 | $38 |
16 vCPU, 64 GB RAM, 1024 GB Storage | $314.40 | $2.98 | $76 |
16 vCPU, 64 GB RAM, 2048 GB Storage | $390.40 | $2.98 | $152 |
32 vCPU, 128 GB RAM, 512 GB Storage | $514.80 | $5.96 | $38 |
32 vCPU, 128 GB RAM, 1024 GB Storage | $552.80 | $5.96 | $76 |
32 vCPU, 128 GB RAM, 2048 GB Storage | $628.80 | $5.96 | $152 |
Why should you consider Dev Box?
SIMPLIFIED INTEGRATION
One concern that organizations may rightly have involves integration. Companies want to know how they will integrate Dev Box into their already existing infrastructure. However, there should be no cause for concern. Microsoft’s design allows the Dev Box to fit seamlessly with whatever development infrastructure your business may be using.
Your development teams can deploy dev boxes perfectly tailored to the precise and unique needs of your business. If you’re already familiar with the Microsoft ecosystem, and are using tools such as Microsoft Intune or Azure, then Dev Box will be an excellent addition. It will fit well into your workflow.
EASY TO SET UP
Again, on-boarding issues and hardware limitations often pose a problem for developers. This is why the convenience that Dev Box offers can make such a profound impact. Microsoft gives you pre-configured workstations that are available on-demand to meet your needs for various projects.
Dev boxes are configurable with all the key tools that developers need. This enables them to immediately begin work on assigned projects while foregoing the often time-consuming task of setting up a development environment.
ACCESSIBILITY
Cloud-based solutions enable businesses with staff all across the globe to maintain high levels of productivity. Dev Box can offer region-specific workstations that give developers a high-level experience wherever they may be.
Any new developers you want to bring on can onboard in minutes, rather than days because of project-based configurations. And this can be done on any device, running on just about any operating system. This level of accessibility can raise the ceiling for what your organization may have previously considered possible.
COMPATIBILITY
The ease of setting up dev boxes will also make it a cost-effective solution. Similar to using Windows 365 Cloud PCs, users don’t need to purchase new devices or worry about the operating systems they use. Therefore, whether you are on a PC or tablet, you’ll still get to use your favorite productivity software and custom line-of-business tools.
HIBERNATION
Every business wants to ensure that it can get the most from the available products and services while minimizing costs. Therefore, one of the most common things you’ll see businesses do to keep costs down is to shut down idle VMs to avoid paying for unused compute.
While this may help to reduce operating expenses, it has the disadvantage of shutting down developers’ workstation VMs overnight meaning that when they begin work in the morning they need to start by reopening all their tools. Fortunately, this is one of the issues that Dev Box is addressing
The availability of a hibernation feature will enable you to hibernate 8 and 16 core dev boxes so that when you resume a dev box, your apps, and work are exactly as you left them. This feature is designed to enable admins to schedule hibernations for the end of the work day in a specific region as well as be able to configure dev boxes to hibernate after a user disconnects. To provide greater control, a dev box can always skip an upcoming hibernation from the notifications that appear.
Using Microsoft Dev Boxes
There are various scenarios that Microsoft has provided for which businesses can use their dev boxes. These scenarios are as follows:
PLATFORM ENGINEERING SCENARIOS
With Dev Box, platform engineering teams can allocate the appropriate dev boxes according to the various users’ workloads. The platform engineers can:
- Create dev box pools, add appropriate dev box definitions, and ensure that access is offered only to dev box users who are working on those specific projects.
- Leverage auto-stop schedules to control costs.
- Define the network configuration, which is responsible for determining the region where the dev box is created.
- Assign the built-in Dev Box User role to grant access to development teams and enable them to self-serve dev boxes.
IT ADMIN SCENARIOS
Here IT admins will be able to manage dev boxes similar to other devices on your network:
- There is automatic enrollment of Dev boxes in Intune. Management of dev boxes can be done through the Microsoft Intune admin center.
- Keep all Windows devices up-to-date by using expedited quality updates within Intune to deploy zero-day patches across your organization.
- Users can minimize downtime because they can be helped to get back up and running on new dev boxes if their dev boxes get compromised and need isolation.
With cloud solutions, security is always of great concern and so Dev Box offers access in a secure environment. Access controls in Microsoft Entra ID organize access by project or user type:
- Join dev boxes natively to a Microsoft Entra ID or Active Directory domain.
- Ensure that users are required to connect via compliant devices by setting conditional access policies.
- Requires multifactor authentication at sign-in.
- Configures risk-based sign-in policies for dev boxes that access sensitive source code and customer data.
DEVELOPER TEAM LEAM SCENARIOS
Developer lead teams can begin to help with the management of the project once they have been assigned the DevCenter Project admin role. Project admins can create dev box pools as well as add appropriate dev box definitions. Additionally, they can also leverage auto-stop schedules to control costs.
DEVELOPER SCENARIOS
If your business has development teams spread across the globe then Dev Box can enable them to create their own dev boxes within their closest region. Developers don’t need to wait for admin teams meaning that they can create dev boxes at their convenience.
And once that’s done, users can access their workstations on any device regardless of operating system. Dev Box offers support to any developers who may be working on several projects. To efficiently handle multiple workloads, projects, or tasks, developers can create and utilize separate dev boxes.
From a predefined pool, developers can take advantage and create multiple dev boxes if the need arises and they can later delete them when the work is complete. Not only that, but the service allows your business to define dev boxes for different roles on a team. So for instance, you can enable full-time developers to have greater control by setting up dev boxes with admin rights while simultaneously restricting permissions for contractors.
The developer experience
One of the best things about the Dev Box experience is how developers can take advantage of the available tools to better streamline their work processes. Because of the ease with which you can create secure, ready-to-code workstations, users can easily move between their primary, secondary, and tertiary machines.
When starting on a new project, developers will often want to quickly get up to speed without wasting time waiting on configuration processes. Dev boxes can be preloaded with settings, tools, source binaries, as well as caches that you need.
Moreover, running in Azure also comes with its own benefits. Not only can you access the resources and services that are needed in the cloud, but you’ll also have the option to connect on-premises resources such as file shares and databases.
Handling various tasks and workloads doesn’t have to be so difficult when you can switch between dev boxes allowing you to work more efficiently. Most of us have strong preferences when it comes to the devices we use so developers will certainly like the fact that they can use any device.
You’ll find that there are native clients for Windows and macOS and to mobile platforms like Android and iOS. And when it comes to which browsers you can use for access, most people with modern browsers should have no issues. Your IT admins will also be happy that Dev Box enables them to easily manage their environments while keeping them secure and up-to-date.
What about security?
The information we’ve gone over tells us that Microsoft Dev Box has a lot to offer businesses. But, if you’re an IT admin, you’ll probably be wondering about security measures to protect your organization. Not surprisingly, this is well covered by Microsoft.
The management of dev boxes will be similar to that of any other cloud-to-PC that uses Windows 365 or any other device that uses Microsoft Endpoint Manager. Admins can maintain the standards that their organization requires by ensuring that all standard apps and management tools are installed like any other enrolled device.
All your company’s policy settings will get deployed, meaning that they constantly receive Windows updates that keep them up-to-date.
As you develop your network connections, you can join dev boxes natively, right to your Azure Active Directory, or even to a hybrid Azure Active Directory domain. You can leverage the tools that you’re already familiar with and set up conditional access policies such as MFA.
Admins can also set it up such that all users can only access the service when using devices that comply with the standards that have been put in place by the organization. Additionally, all traffic when connecting to your dev boxes will be encrypted similarly to what you experience with Windows 365.
Wrap up
Developers have had to contend with frustrating challenges that hinder their productivity for years. These challenges also create unnecessary delays for businesses especially when working with deadlines.
In some cases, you hear of instances where it takes well over a week to onboard a new developer. As we can all imagine, this is far from ideal. When looking at the feedback from various organizations, it’s clear to see why Microsoft sees the need for Dev Box.
With the service offering secure, preconfigured, and ready-to-code workstations, the time to productivity is drastically reduced. Developers can be ready to go almost as soon as an assignment is given without having to be burdened with laborious onboarding processes.
You also have the advantage of using devices you’re comfortable with regardless of what operating system is running. Furthermore, as the service continues to improve, we can expect Dev Box to help optimize the work of developers even more.
Pingback: Weekly Newsletter – 27th of April 2024 to 3rd of May 2024 - Windows 365 Community