One advantage is that you encounter, and have to resolve, cross-platform compatibility and divergence issues early in the development process. Everyone is used to dealing with such monkey-wrenches and obstacles.
You're also seeing the downside to such divergence: The environment is harder to set up, maintain, secure, and develop for because of those divergences. Everyone has to be working on divergence issues early and often. Setting the Chaos Monkey loose at the outset can be a considerable distraction from making forward progress.
In my experience, divergence hassles are not worth the effort unless you are very specifically working on a product that must be eminently cross-platform. But, that is a judgment call different teams have to make for themselves. I prefer to have at least a modicum of sameness across my project teams—but the reality is that's a desire rather than something I can enforce. Some people have & use Windows, others macOS, others some flavor of Linux. Multiply that times all the tools developers might want to use.
You can lay down some core project standards like Python 3.5, PostgreSQL 9.5+, gulp-based asset pipeline, git, Github, rebased branches, ... to which everyone must conform. This helps cut divergence, thus the time/effort required to accommodate and wrangle it. The more corporate and lock-step your organization, the more standardization and commonality you can insist upon. Developers, however, tend to be the metaphorical unherdable cats. So keeping divergence "down to a dull roar" is often the best you can practically do.