I have created a custom content type for our company's projects. It is a document set with some columns for basic project information: customer, assembly, etc. At first I set these columns to be "required" so that people wouldn't skip filling out information.
But people started adding documentation to their project folders and nobody else was able to see it. This is because when documents are added, they are checked out until you fill out all the required column information properties (a step already completed when creating a new document set). It doesn't make much sense to have people filling out the same information over and over again, especially if your projects contain hundreds of documents.
I wanted to make the columns "optional", but then I'm not able to take advantage of content organizing rules, which need columns to be set as "required" to work.