• One good way is to periodically put DBAs to work within a developers team and the reverse. For my experience, developers should not take SGDBs abstractions as granted and having a DBA on the team helps evaluating and anticipating real world behaviour of the code; likewise, DBAs would have a glimpse of the pressure and time constraints that are so common on developer teams and maybe this could lead to development of better (deployment, maintenance, ..) processes. Having developers working within a DBA team would teach the long term consequences of bad designed code and the pressure that these teams usually are so that things just work, no matter what.