Category
5 min read

Why Successful Companies Don't Have DBAs

Database administrators play a crucial role in our organizations. They manage databases, monitor performance, and address issues as they arise. However, consider the possibility that their current role may be problematic and that we need to rethink how they operate and integrate within our organizations. Successful companies do not have DBAs. Continue reading to find out why.
Published on
August 6, 2024
Share this post
Contributors
Adam Furmanek
Dev Rel
Metis Team
See how Metis can make your database 3x faster and 50% cheaper!

Database administrators play a crucial role in our organizations. They manage databases, monitor performance, and address issues as they arise. However, consider the possibility that their current role may be problematic and that we need to rethink how they operate and integrate within our organizations. Successful companies do not have DBAs. Continue reading to find out why.

DBAs Make Teamwork Harder

One of the problems with having a separate team of DBAs is that it can unintentionally push other teams into silos and kill all the teamwork. Let's explore why this happens.

DBAs need to stay informed about all activities in the databases. They need to be aware of every change, modification, and system restart. This requirement clashes with how developers prefer to deploy their software. Developers typically want to push their code to the repository and move on, relying on CI/CD pipelines to handle tests, migrations, deployments, and verifications. These pipelines can take hours to complete, and developers don't want to be bogged down by them.

However, this approach doesn't align well with how DBAs prefer to work. DBAs need to be aware of changes and when they occur within the system. This necessitates team synchronization, as DBAs must be involved in the deployment process. Once DBAs are involved, they often take control, leading developers to feel less responsible.

This dynamic causes teams to become siloed. Developers feel less responsible, while DBAs take on more control. Over time, developers begin to offload responsibilities onto the DBAs. Knowing they need to coordinate with DBAs for any database changes, developers come to expect DBAs to handle them. This creates a vicious cycle where developers become less involved, and DBAs assume more responsibility, eventually leading to a status quo where developers do even less.

This situation is detrimental to everyone. Developers feel less accountable, leading to reduced involvement and engagement. DBAs become frustrated with their increased workload. Ultimately, the entire organization wastes time and resources. Successful companies tend to move towards greater teamwork and faster development, so they limit the scope of DBAs and let them focus on architectural problems.

Teams Do Not Develop Their Skills

Another consequence of having dedicated DBAs is that developers stop learning. The most effective way to learn is through hands-on experience, which enables teams to make significant progress quickly.

With DBAs available, developers often rely on them for help. While it's beneficial if they learn from this interaction, more often, developers shift responsibilities to the DBAs. As a result, developers stop learning, and databases become increasingly unfamiliar territory.

Instead, we should encourage developers to gain a deeper understanding and practical experience with databases. To achieve this, developers need to take on the responsibility of maintaining and operating the databases themselves. This goal is difficult to reach when there is a separate team of DBAs accountable for managing database systems.

Teams Overcommunicate

When DBAs are held accountable and developers take on less responsibility, organizations end up wasting more time. Every process requires the involvement of both teams. Since team cooperation can't be automated with CI/CD, more meetings and formal communications through tickets or issues become necessary.

This significantly degrades performance. Each time teams need to comment on issues, they spend valuable time explaining the work instead of doing it. Even worse, they have to wait for responses from the other team, causing delays of hours. When different time zones are involved, entire days of work can be lost.

Successful Companies Have a Different Approach

The best companies take a different approach. All these issues can be easily addressed with database guardrails. These tools integrate with developers' environments and assess database performance as developers write code. This greatly reduces the risk of performance degradation, data loss, or other issues with the production database after deployment.

Additionally, database guardrails can automate most DBA tasks. They can tune indexes, analyze schemas, detect anomalies, and even use AI to submit code fixes automatically. This frees DBAs from routine maintenance tasks. Without needing to control every aspect of the database, DBAs don't have to be involved in the CI/CD process, allowing developers to automate their deployments once again. Moreover, developers won't need to seek DBA assistance for every issue, as database guardrails can handle performance assessments. This reduces communication overhead and streamlines team workflows.

What Is the Future of DBAs?

DBAs possess extensive knowledge and hands-on experience, enabling them to solve the most complex issues. With database guardrails in place, DBAs can shift their focus to architecture, the big picture, and the long-term strategy of the organization.

Database guardrails won't render DBAs obsolete; instead, they will allow DBAs to excel and elevate the organization to new heights. This means no more tedious day-to-day maintenance, freeing DBAs to contribute to more strategic initiatives.

Summary

The traditional approach to using DBAs leads to inefficiencies within organizations. Teams become siloed, over-communicate, and waste time waiting for responses. Developers lose a sense of responsibility and miss out on learning opportunities, while DBAs are overwhelmed with daily tasks. Successful organizations let DBAs work on higher-level projects and release them from the day-to-day work.

Database guardrails offer a new approach to database reliability. With these tools, manual issue resolution is unnecessary. Database guardrails can identify problems early, detect anomalies, and automatically fix issues. This allows DBAs to focus on strategic business objectives and enables developers to take responsibility and accountability for their work.

This is some text inside of a div block. This is some text inside of a div block. This is some text inside of a div block. This is some text inside of a div block. This is some text inside of a div block.

Never worry about your
database again!

Start using Metis and get your database guardrails set up in minutes