Finally, it's often easier to experiment with and tune a system written declaratively than one written as bespoke code. That's partly because development costs are often lower to begin with for declarative code. But modification costs can also be lower. A change of a few lines in a declarative program might be a major undertaking in an object-oriented language, as in our Employee/JobTitle example, or even a complete rewrite in another language.
If it's cheaper and easier to change something, then you'll feel more free to explore the design space and to try out changes that might not work out.