I develop on my Windows machine and I use Docker for testing. We have a a microservices architecture in production and using Docker is easier and less messy to run locally parts of our infrastructure such as Postgres, Redis, Consul, Nats and some of the needed microservices instead of using VMs.