2 added 355 characters in body
source | link

I see two questions here:

  • Should database developers model business logic?
  • Should I know how to persist data to the database?

Business Logic

  • Business logic does not live in a database. It's a conceptual model which must be independent of other layers within your system.

  • You can always replace one database with another, or you might even decide to use a NoSQL solutions to address potential performance issues. 

  • Database developers can be involved during modelling process, but normally this is done by people with a complete understanding of a problem domain. In our organisation this is done by server side developers.

  • Many think that database is a foundation of your application. Make poor foundation, and the system will fall. I disagree with this. I see database as a storage medium that can be always replaced.

Persisting Data

  • You should know how to persist data to different storage mediums, including SQL and NoSQL solutions.

  • Level of required expertise will vary with the size of the system that you are working on.

  • Small companies would expect you to have that knowledge, when larger companies would normally hire experts to address performance, scalability and security related requirements.

To summarise:

  • Domain model is a foundation of your system, not the database.

  • If you work for a small company on a relatively small project, then you should probably design the database yourself.

  • If you work for a large company on an enterprise system, then it probably makes more sense to pass work to the domain experts.

I see two questions here:

  • Should database developers model business logic?
  • Should I know how to persist data to the database?

Business Logic

  • Business logic does not live in a database. It's a conceptual model which must be independent of other layers within your system.

  • You can always replace one database with another, or you might even decide to use a NoSQL solutions to address potential performance issues.

  • Database developers can be involved during modelling process, but normally this is done by people with a complete understanding of a problem domain. In our organisation this is done by server side developers.

  • Many think that database is a foundation of your application. Make poor foundation, and the system will fall. I disagree with this. I see database as a storage medium that can be always replaced.

Persisting Data

  • You should know how to persist data to different storage mediums, including SQL and NoSQL solutions.

  • Level of required expertise will vary with the size of the system that you are working on.

  • Small companies would expect you to have that knowledge, when larger companies would normally hire experts to address performance, scalability and security related requirements.

I see two questions here:

  • Should database developers model business logic?
  • Should I know how to persist data to the database?

Business Logic

  • Business logic does not live in a database. It's a conceptual model which must be independent of other layers within your system.

  • You can always replace one database with another, or you might even decide to use a NoSQL solutions to address potential performance issues. 

  • Database developers can be involved during modelling process, but normally this is done by people with a complete understanding of a problem domain. In our organisation this is done by server side developers.

  • Many think that database is a foundation of your application. Make poor foundation, and the system will fall. I disagree with this. I see database as a storage medium that can be always replaced.

Persisting Data

  • You should know how to persist data to different storage mediums, including SQL and NoSQL solutions.

  • Level of required expertise will vary with the size of the system that you are working on.

  • Small companies would expect you to have that knowledge, when larger companies would normally hire experts to address performance, scalability and security related requirements.

To summarise:

  • Domain model is a foundation of your system, not the database.

  • If you work for a small company on a relatively small project, then you should probably design the database yourself.

  • If you work for a large company on an enterprise system, then it probably makes more sense to pass work to the domain experts.

1
source | link

I see two questions here:

  • Should database developers model business logic?
  • Should I know how to persist data to the database?

Business Logic

  • Business logic does not live in a database. It's a conceptual model which must be independent of other layers within your system.

  • You can always replace one database with another, or you might even decide to use a NoSQL solutions to address potential performance issues.

  • Database developers can be involved during modelling process, but normally this is done by people with a complete understanding of a problem domain. In our organisation this is done by server side developers.

  • Many think that database is a foundation of your application. Make poor foundation, and the system will fall. I disagree with this. I see database as a storage medium that can be always replaced.

Persisting Data

  • You should know how to persist data to different storage mediums, including SQL and NoSQL solutions.

  • Level of required expertise will vary with the size of the system that you are working on.

  • Small companies would expect you to have that knowledge, when larger companies would normally hire experts to address performance, scalability and security related requirements.