March 5, 2015 by Mike Hillwig
DBAs have a natural conflict with developers. I like to think of it as the battle between good and evil. Developers like to break stuff, and our job is to prevent them from doing something stupid in production. Another group we often have an antagonistic relationship it’s is the sysadmin team, whether it’s servers, storage, or network. In my current position, that’s. not exactly the case.
Speaking for myself here, I will gladly admit that I’m only as good as the sysadmins who manage my servers. At this company, we’re in silos. I’m responsible for the database server, but not the windows machine, the storage, or network. That means I have to have a great partnership with my sysadmin team. Notice that I call it a partnership. I truly mean that.
Within my company, my relationship with our sysadmin team is legendary. Chris, our senior Windows guy is nothing short of awesome. I work just as well with Jon and most of their offshore people. Several months ago, my old manager was quite miffed when I got a phone call and dropped everything to help Chris with a problem. She was appalled by the fact that I didn’t follow the process to the letter and wait for him to put in a ticket first. I just looked at her and said “That’s because Chris does the exact same thing for me.” I had to explain that if it weren’t important, he would have put in a ticket or emailed. In this case, he had called my mobile. Without him needing to explain, I knew this was important.
Chris and I have a unique method of communicating. If the IM conversation starts with “Do you have a minute?,” we answer honestly. Then we triage and prioritize. But if the conversation starts with “I need help” then we drop everything for each other.
Our Windows team builds and maintains the servers where I run SQL Server. If those servers aren’t stable, neither are the databases on it. I manage the SQL instances that host many of their tools, including VMWare Virtual Center. Their tools are only as good as the databases I’m managing for them. Our success depends on each other. I recently found a careless mistake made by my own team on a VCenter server. I was not pleased, and my colleague got an earful. I look after those guys and they do the same for me.
When I want to try something new on a server, whether it’s a change in permissions, a group policy, or a radically different configuration, I have a conversation with my Windows team before just putting in a request. It gives us an opportunity to collaborate on things instead of just executing someone else’s vision. They do the same for me. One of the greatest lessons I learned in college is that people support what they help create. That is entirely true in my world. Our Oracle DBAs don’t have the same partnership with the Unix team and it shows. Sometimes I think they’re jealous of just how well our relationship works.
Chris and I have an unspoken agreement: we never blindly throw things over the wall at each other. When my boss wants do do something that impacts our Windows team, my response is predictable–“I don’t think it will be a problem, just let me run it past Chris first.”
Sometimes being a DBA means being good with the technology. More often, though, it means being good with people.