Data is the lifeblood of your code, so the services deployed to accompany your application are a meaningful design decision. Relational databases, non-relational databases, message brokers, they all have unique use cases. Learning how your language and framework can best take advantage of each can really empower how you build applications.