Конструктор нужно заменить фабричным методом, если не хватает возможностей самого конструктора, например нужно создавать экземпляры разных типов имеющих общего наследника, такое бывает, в проценссе рефакторинга Replace Type Code Subclasses, когда мне нужно создать подклассы, а конструктора не хватает, поскольку он ничего не возвращает, а только создает объект
public enum EmployeeType
{
Fix,
Hourly
}