Estou ouvindo mais e mais desenvolvedores optando por essa configuração e, às vezes, usei isso por mim mesmo.
Essencialmente, você tem seu sistema operacional host, onde você trabalha no dia-a-dia e trabalha em uma VM limpa.
Se algo der errado, você não precisará reinstalar, basta fazer uma nova cópia da VM.
Isso significa que você pode ter várias versões de seu software instaladas de uma só vez (em VMs diferentes) e que todos os desenvolvedores têm um alvo de compilação padrão.
Você pode configurá-lo com praticamente qualquer software de virtualização, basta instalar um sistema operacional cliente e clonar a imagem da unidade.