Solved

Developer vs DBA role

Posted on 2004-03-24
5
373 Views
Last Modified: 2010-04-17
Hi,
I would like to know where the fine line normaly goes between a developer and a DB admin.

The situation is that we (the developers) have been asked to do some traditionaly DBA stuff like account management, back-up job's, system supervision, set up new SQL Server instances and so on.

As it is now I do the database design and implement it with sp's, udf and DTS packages after that I code the desktop application/web application.

So what is normal where do DBA end and where do DEV begin ?
0
Comment
Question by:SNilsson
  • 2
5 Comments
 

Assisted Solution

by:sir_flexalot
sir_flexalot earned 150 total points
ID: 10669496
That is a good question, and it depends on the size of your organization, and whether or not you already have a DBA.  DBA's typically do anything related to the modification of the production database system, the grey area being in setting up test db structures for applications in development.  A lot of smaller companies that don't have a DBA will simply pass on the DBA-related tasks to programmers, though, especially tasks like setting up back-up jobs.  I would say from your question that you don't have a DBA -- if you do, they should definitely be doing the SQL Server instances, account management, and system supervision from a DB standpoint.  As a developer, it is not your responsibility to decide whether or not people are messing up the database, unless the DBA comes and says "your application is inserting junk into my database."  However, I can understand if you are developing an application, that you might be required to set up testing DB elements, like test accounts, but on a TEST system, not on the live system, if there is an existing DBA.  I get asked to do stuff like that all the time at smaller clients.  The larger clients have a DBA to go through, who I only go to if it's time to add functionality/features into the production system.
0
 
LVL 8

Author Comment

by:SNilsson
ID: 10669977
Well it is a VERY large company and we have plenty of DBA's but due to a re-organization we are supposed to do more with less manpower and the discussion right now is where the natural line should be, and yes i'm talking about production systems not test enviroments those we(developers) can handle ourself.

As I see it everything that is related to development in SQL Server is our territory, like database design, complex stored procedures, user defined functions and tricky data transformation.

Responsibility for the DBA should be to maintain the backups, handle accounts, supervision and perhaps installing scripted databases made by us.

But thats what I think, maybe there is a lot of programmers who do server side administration when the organisation is cut down, but I dont see how I can possibly have time to do this also :)

More input and thought's please.
0
 

Expert Comment

by:sir_flexalot
ID: 10670463
I don't think a large organization would find it financially sensible to have programmers in the production systems.  For security and stability reasons alone, it makes sense to not have the people coding also in the live database -- not saying that you'd do anything, but it invites the possibility of unauthorized changes in order to allow certain functionalities to work.  Those changes might break other things, etc.  
You are 100% correct IMHO.  You should not be doing production database changes & maintenance at a large biz, if you are an app developer.  The company should pick one role for you (preferably based on your stronger skills) and stick with it.  
0
 
LVL 6

Accepted Solution

by:
pillbug22 earned 150 total points
ID: 10670667
I would agree for the most part.

May last job was at a place with 100+ staff in IT, and we all had specific roles in the different systems.  We had a couple of DBAs (usually 1 for each type Oracle, SQL, etc), and the Web/App developers pretty much stayed with file share permissions, letting the DBAs do most of the DB work.  If we needed a new database, we'd get a DBA to make the DB for us, and then would give us permissions for that database so we could create all the procedures, tables, etc.

Now, I'm at a much smaller place with only 22 or so in IT, and the 2 developers have pretty much act as DBAs for the systems we write/need.  There are vendor systems that the Admins/DBAs handle the SQL parts, but anything we are pretty much expected to help keep our own DBs cleaned up and working.  I guess it's feasible since we (developers) know what to do in SQL, plus it helps take the load off our Network Admins/DBAs since they have multiple jobs as well.

In essence, it probably depends on the size of your IT shop.  In the large scheme of things, it's probably better to split up as much responsability as you can, but that's not always a valid solution for the given situation...
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
hasOne  challenge 59 91
Replace a tag with sed 2 42
Hide vba in gp 7 43
Currency Conversion? 1 37
Here we come across an interesting topic of coding guidelines while designing automation test scripts. The scope of this article will not be limited to QTP but to an overall extent of using VB Scripting for automation projects. Introduction Now…
Does the idea of dealing with bits scare or confuse you? Does it seem like a waste of time in an age where we all have terabytes of storage? If so, you're missing out on one of the core tools in every professional programmer's toolbox. Learn how to …
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now