The typical configuration I see is a shared development server to which developer’s connect.
I have also seen a distributed configuration work well where each developer has their own IS instance and when they complete a component/project they promote to a shared dev testing environment.
Each developer is responsible for managing/configuring their IS instance. In this set up, good version control is even more important to success, IMO.