Original Post Read More
Bottleneck to agility
Many developers are still constrained by the tools they use to perform their day-to-day work due to the complex setup that they require or to the lack of scalability that they provide.
For example, when onboarding a developer to a new project, there must be communication with the infrastructure team to set up and configure a proper workstation that includes access and dependencies needed for this specific project. This can take up to a few weeks and this manual process is error-prone which may introduce even more delays into this workflow. Developers usually also work on multiple projects at any given time and managing all the required dependencies for various projects (different programming languages or versions) can lead to errors and conflicts.
Adding all of those dependencies and projects to one physical device also means that it is hard for developers to quickly switch between tasks and perform high-demand processes as their device is limited by its static compute resources because it provides no scalability.
On the security front, modern developer workstations also pose several security risks for the organization. As remote work becomes more common, it’s harder than ever for IT administrators to control access to sensitive information or to manage remote workstations in the same way that they would with on-premises workstations putting developers and their devices at risk of exposure.
How Microsoft Dev Box can help
Microsoft Dev Box allows developers to access high-performance, cloud-based workstations that are preconfigured and ready-to-code for specific projects and tasks. The workstations are created in a self-service environment by the developers who can select from a pool of pre-configured Dev Boxes based on images curated by their development teams that include dev tools, SDKs, code repos so that developers can hit the ground running as soon as the Dev Box deploys.
Even though the Dev Boxes are easy to provision, they are managed and secured through centralized governance tools such as InTune/Endpoint Manager. No matter where the Dev Boxes are running, IT admins and Infrastructure teams can track and monitor their usage to ensure security, compliance and cost efficiency.
Ready to code
Dev Boxes make it easy for developers to onboard to a new project by providing them with self-service access to workstations that are purpose-built for their current projects and tasks without having to work with an infrastructure team and waiting for physical hardware to be provisioned.
Developers can also deploy multiple Dev Boxes simultaneously which makes context switching between different projects much easier as their individual Dev Boxes only target a specific project and do not have to support multiple sets of dependencies.
Dev Boxes are highly customizable and flexible. They support any dev tool, code repo, SDK and more that developers may need for their project or task. That means that they can be used for any developer workflow such as desktop or mobile development, gaming, IoT and more. Dev Boxes can scale up to support high-demand workloads meaning that you can proconfigure with the right amount of compute, RAM and storage that will fit even your most demanding workflows.
Access to Dev Boxes is based on Azure Active Directory groups making it possible to limit access for certain roles while giving greater permissions to others. For instance, if you need to establish a secure environment for a site reliability engineer, you can setup a Dev Box as a privileged access workstation. Conversely, on large projects where parts of the work are outsourced, you can apply stricter permissions for external contractors.
It is also important to think about cost efficiency and it is possible to set rules to automatically stop Dev Boxes during off hours when they are not in use. Dev Box uses a consumption-based pricing model that charges for storage and compute used, meaning you only pay for what you use.
Managed and secure
Microsoft Dev Boxes are automatically enrolled in Intune and managed by Microsoft Endpoint Manager making it easy for IT administrators to manage Dev Boxes just as they would with any other physical device.
Comprehensive access controls in AAD enable IT admins to organize access by project or user type, making it easy to control permissions and policies on a project-by-project and Dev Box-by-Dev Box basis. For especially sensitive workloads, for instance, you can set conditional access policies or risk-based sign-in policies, such as requiring users to connect via a compliant device or requiring MFA sign-in.
Thanks to Intune integrations, IT admins can easily push out zero-day patches to whatever devices they need to update across the organizations, ensuring all Dev Boxes are kept up-to-date. Should a Dev Box ever become compromised, IT admins can isolate the Dev Box while helping the developer get up and running on a new Dev Box.
Comparing Dev Box
Multiple options are available to you when comes the time to provide your development team with workstations. Here is an high-level comparison when trying to decide if Microsoft Dev Box is the right choice for your organization.
Microsoft Dev Box and Windows 365 are similar solutions with different userbases. While Dev Box is optimized for developers and offers self-service, high-performance workstations that are preconfigured and ready-to-code when developers need them, Windows 365 Cloud PCs are suitable for multiple personas and securely stream users’ personalized Windows experience to any device. While Dev Box is optimized for developers, dev teams can still choose to use Cloud PCs. Both Dev Box and Windows 365 use Microsoft Endpoint Manager and Intune to maximize security, compliance, and cost efficiency.
In general, Microsoft Dev Box is the preferred solution for developer teams. While Windows 365 Cloud PCs provide organizations with a powerful, easy-to-use solution for a variety of personas and workloads, Dev Box is specifically tailored for developer teams. Of course, this isn’t to say organizations can’t use Windows 365 for development purposes. If self-service access and high-performance computing aren’t a priority for your developer team, or you prefer predictable per-user/per-month pricing, Windows 365 could be the right solution for your developer teams.
Alternatively, if your development teams do need high-performance workstations that are tailored to their specific projects, self-deployed by developers, and ready-to-code on deployment, then Dev Box is the better solution.
Azure Virtual Desktop
Microsoft Dev Box is a developer-optimized solution that provides self-service, high-performance workstations that are preconfigured and ready-to-code when developers need them. While Azure Virtual Desktop can also be used by dev teams for a secure remote desktop and app experience, Azure Virtual Desktop only has some device-based and user configuration management capabilities, while Microsoft Dev Box provides comprehensive, centralized management capabilities in Microsoft Endpoint Manager and Intune.
Codespaces and Dev Boxes are complementary services that developers can choose between depending on their current use case.
GitHub Codespaces is a cloud developer environment that is great for building cloud-native applications. If you’re building web apps, APIs, and libraries built with Linux containers, and you’re using GitHub, Codespaces provide a tightly integrated experience accessible from GitHub and Visual Studio Code.
Microsoft Dev Box is a great choice for developers who need a Windows-based development environment. Dev Boxes can run UI-based tools like SQL management studio in the dev environment, and they can target any code host or version control systems. They support workloads ranging from mobile to desktop apps, IoT or games. Applications can be built to run natively on Windows or cross-platform using WSL.
If your IT organization uses Microsoft Endpoint Manager to monitor and control your dev infrastructure, then Dev Boxes are a great place to start.
Together, Codespaces and Dev Boxes provide developers with two powerful, ready-to-code dev environment solutions so you can choose the right solution to match your development scenario.
Your organization is likely already comfortable providing your developers with the on-prem resources you have. Staying on-prem means that you get to continue leveraging existing infrastructure and investments, and you can easily provide basic and vanilla machines to your developer teams located in the same office.
While Microsoft Dev Box represents a new investment, it provides many new benefits above what you can do with on-prem workstations. For one, dev boxes support flexible, hybrid work scenarios on any device—a feature that is becoming more important as remote and hybrid work becomes more common. Dev Box also empowers your developers with self-service access to workstations that are preconfigured for their different projects and tasks and ready-to-code on deployment, increasing their productivity. Additionally, Microsoft Dev Box comes with comprehensive, centralized device management and governance to maintain security and compliance even while supporting hybrid work scenarios across locations.