I feel I may be in the "people unclear on the concept" group here.
System Default Settings is a great mechanism, and we use some custom code to deploy it in our pipeline after environment specific changes have been applied to the content. However, we are trying our best to reduce the amount of custom code we use in our system that does not relate directly to the business. For CI/CD, this means we are trying to leverage IPM for the heavy lifting.