Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase

Production DBA Vs Project/Development DBA Expand / Collapse
Author
Message
Posted Wednesday, October 24, 2012 10:08 AM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Thursday, January 16, 2014 7:08 AM
Points: 12, Visits: 273
Hi,

Does anybody have any reference points for how the role of a production DBA may differ from that of a project or development DBA?

My previous experience has been in companies where either there was only a couple of DBA's doing everything, or in larger companies where the DBA supported a particular product/application across all environments. Does anybody have any real world experience where the DBA role is split for production and non-production? My current employer are thinking about going down that route so I'm trying to understand how it might work.

Thanks!
Post #1376573
Posted Wednesday, October 24, 2012 10:20 AM


SSCoach

SSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoach

Group: General Forum Members
Last Login: Friday, June 27, 2014 12:43 PM
Points: 15,444, Visits: 9,596
Have you asked for clarification from your employer as to what exactly they mean by the differentiation?

Explain that "DBA", even with adjectives like "Production" or "Project/Development", is recognized as being a very, very vague term. Ask them if they have some specific division of duties in mind, or if they would prefer you to provide that for them. Make it clear that you have an idea of what it would mean in an academic sense, but want to make sure "you're on the same page" together.

Nominally, a "Production DBA" would be responsible for server-level operations, like security, backup/restore operations, DR/BC, maintenance plans, performance monitoring (but probably not tuning), database growth vs disk space available, audits, resource monitoring (I/O bottlenecks, memory pressure, CPU use). Production DBA wouldn't touch data modeling, normalization, database architecture, T-SQL coding, securing dynamic SQL, index planning, filestream, etc.

"Development DBA" would be responsible for writing code to access data (CRUD operations), and might do architecture or might not.

Ambiguities left by that include things like, who's responsible for creating indexes? Do "Development DBAs" have any access at all to production servers, or just to Dev/QA servers? Is there a staging environment between QA and prod, and who's responsible for it if so? What about architecture and standards (normalization, naming conventions, DAL methodologies, etc.)? And others.

Get all that clarified by them. See what they mean by it, or if they aren't sure and are looking for guidance on it.


- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread

"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
Post #1376579
Posted Wednesday, October 24, 2012 1:40 PM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Thursday, January 16, 2014 7:08 AM
Points: 12, Visits: 273
Thanks for your reply.

We're currently going through a sort of consultation period, trying to draw the lines of how the roles might be defined. They're fairly open about trying to define the roles in a way that everybody is happy with which is good. I have some ideas of what I think will work and what won't, but not having worked in an environment where the role is split I want to try and get some background info before I air my views (and thus save myself from putting my foot in it!).

Most of what you've said ties in with the current suggestions, other than the development side of things. The true development (i.e. coding) would be done by our developers or third party suppliers, I think the intention is that this is administration of the development and other non-production (QA/UAT) environments.
Post #1376648
Posted Thursday, October 25, 2012 11:07 AM


SSCoach

SSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoachSSCoach

Group: General Forum Members
Last Login: Friday, June 27, 2014 12:43 PM
Points: 15,444, Visits: 9,596
Ah. Yep, same name, different job.

I'm not accustomed to dev servers and QA servers needing any serious admin done on them, not enough to require a full-time employee for it anyway. I guess it would make sense in a big enough environment, though.


- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread

"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
Post #1377143
Posted Sunday, October 28, 2012 9:59 PM
SSC Journeyman

SSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC Journeyman

Group: General Forum Members
Last Login: Tuesday, July 22, 2014 6:01 PM
Points: 78, Visits: 1,005
Here's an excerpt from an article I wrote a few years ago:

It's generally understood there are two kinds of database administrators, production and development, but the definition of each kind is not universal. If the difference were simply their environments (production or development) then there would be no need to distinguish between them. I would like to propose a definition with a very clear distinction. A production DBA is concerned about everything outside the database. A development DBA (database developer) is concerned about everything inside the database.

A production DBA considers a database to be the smallest item on which to focus. A production DBA handles storage space, database maintenance, disaster recovery, high availability, replication, log shipping, mirroring, logins/users, SQL Server Agent jobs, performance monitoring, and maybe some performance tuning. The primary point of focus is a server or a SQL Server instance. A production DBA has very little need to understand how the business works.

A development DBA considers a database to be the largest item on which to focus. A development DBA handles data modeling, normalization, table structure, DRI, indexes, data types, naming conventions, triggers, stored procedures, views, functions, code generation, data import/export, archiving, purging, and auditing. The primary point of focus is a database or a set of databases. A development DBA (database developer) must understand how the business works.




Post #1378090
Posted Saturday, November 10, 2012 2:48 PM
SSC Journeyman

SSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC Journeyman

Group: General Forum Members
Last Login: Saturday, July 26, 2014 3:42 PM
Points: 83, Visits: 508
Good description Journeyman. I am a production dba and your summary is very well to the point. I must add that of performance monitoring our job is to find the queries that's disruptive to normal service and hand it back to vendor/developer.

The reason why we don't do anything is in our shop "all about integrity". The applications owner must know we don't touch the structure of their database. We can recommend but never demand. If somehow our recommendations aren't met we'll pursue other alternatives - like moving database to own instance, single server (not cluster) and such. This is to commit our values to other applications owners that we take action to prevail a secure and stable environment.

This is actually very much appreciated. We have around 3000 applications and 16000 dbs to control.



Post #1383396
Posted Sunday, November 11, 2012 4:55 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 7:26 PM
Points: 6,157, Visits: 7,217
A bit of a self promotion, but please let me know if this article helps:

http://www.sqlservercentral.com/articles/Career/71608/



- Craig Farrell

Never stop learning, even if it hurts. Ego bruises are practically mandatory as you learn unless you've never risked enough to make a mistake.

For better assistance in answering your questions | Forum Netiquette
For index/tuning help, follow these directions. |Tally Tables

Twitter: @AnyWayDBA
Post #1383430
« Prev Topic | Next Topic »

Add to briefcase

Permissions Expand / Collapse