DBadministrator vs Developer

  • There are lucky cases when the two roles are personified by the same person.But when is not...?!?

    Is there a way to draw the line between where DB's role stops and where Developer's role begins and vice versa?

    What a DB should be responsible for and when developer should interfere with db's work?

    //Sica

  • I would say that a DBA is responsible for the integrity and performance of the database. Therefore the DBA should do all object and query development OR review all queries and objects. Otherwise they will run into performance or integrity issues.

    Developers can create objects and queries in the development environment here, but they CANNOT move these to QA or production without my review. Saves hassles later on. Of course, my job gets more tedius when I don't have time to do all development, I then start editing their work instead of doing it my way the first time.

    Steve Jones

    steve@dkranch.net

  • First being both the developer and the DBA can have it's downsides especially if some other developer messes up something that brings down the server that you happened to miss since you are split on duties. Guess who they point at and has to fix it.

    Anyway, I agree and would add that any good DBA must also have been or be a developer as they is responsible for fine tuning queries and indexes. In addition they must be able to debug visually code and correct issues. Their ultimate role is the reliability and security of the server.

    "Don't roll your eyes at me. I will tape them in place." (Teacher on Boston Public)

  • I agree with both Steve and Antares, particularly in that a DBA should first have been a developer. This helps you both to understand code coming at you and the better to spot bad code before it cripples your DB.

    The converse is also true, it helps if a developer has some understanding of DBA concerns, the better to code


    I have found it is possible to please all of the people all of the time if you do exactly what they want. Harold Macmillan 1961

  • It is a good question. I act as both developer and DBA.

    The main problem being a developer is that unrealistic target is provided and it is expected you to checkin the code because a build has to be delivered on some date. So, it sometimes becomes very difficult to clearly check the performance of the query especially the usage of index etc.

    But whereas when I work as DBA along with QA I can review and monitor these queries and make improvements to that.

    So, in general if there should be a line between developer and DBA -- then all queries written by a developer should be reviewd by a DBA.

    It need not be developers fault. It is the time constraint and sometimes ignorance.

  • DBAs have a far higher chance of writing decent, set based SQL. Most developers don't get past simple selects and inserts, and prefer to process a row at a time client side because they don't understand how to do it on the server as a set based operation.

    Jon Reade


    Jon

  • In our company we have a separation of duties. Our DBA don't do development. On our development team we have a very knowlegable boss who actually knows DBA part as well as programming, so we are pretty safe. This way performing regular DBA duties don't interfere with development and we, developers, have ability to learn and implement more complicated tasks, otherwise would be hidden from us.

    May be for small companies one person in both fields would be acceptable, but I'm glad that we have a different structure.

  • I`m in the unlucky position of being Analyst/Programmer/SQL DBA/Datawarehouse Analyst/Reporting Architect all in one. It`s never boring though!!

    Andy.

  • Competent database developers should be allowed to develop unfettered. Key word is develop. I agree with Steve about moving to QA or Production. How you define competent is based on your organization's expectations.

    If the development group is weak on database development skills, a DBA should be doing the coding on the database side. Otherwise, the DBA will be rewriting the code, so why pay twice in resources?

    Good DBAs don't necessarily come from the dveloper ranks. I think an analyical mind is the key to success. Performance tuning is all about working logically step-by-step through the possibilities to find out what's causing the issues.

    But the bottom line is if it's not political suicide to implement, DBAs should have complete veto authority (as long as they can provide sufficient justification) before allowing code into QA or production on their DB servers.

    K. Brian Kelley

    bkelley@sqlservercentral.com

    http://www.sqlservercentral.com/columnists/bkelley/

    K. Brian Kelley
    @kbriankelley

  • Andy Skinner and I have similar jobs. The unfortunate part with me is that it's not always SQL/Data warehousing. There's always another project or emergency that vies for my attention. I wish we had a few more servers to worry about, then my boss would not have any choice but to say "Ron, you're full-time with SQL Server, Datawarehousing, etc.". I'm looking forward to that day.

    There is NO difference here between a SQL DBA and Developer. I'm the only SQL-knowledgeable person in a 50-person IT shop. BUT... that's probably going to change within the next year.

  • Like Andy Skinner, I am in the position of DBA, SQL Developer as well as VB/ASP Developer as well as Application support from time to time!

    Is a bit of a pain as I'd really like to move more to the DBA side of things and do a lot less front end development.

    I agree with lots of points in here. There is a line to be drawn between DBA's & Developers. Developers here (except myself) only have use of the dev boxes. Any changes go through me and only I can move new code/objects through to QA and then onto Prod.

    Clive

    Clive Strong

    clivestrong@btinternet.com

  • when the feature set of the system involving the database changes you are a developer/DBA...when the feature changes stop and you are only concerned with keeping it work the way it worked the first time around, you are then only a DBA. =)

  • My official title is SQL Programmer. However, from what I read here it sounds like I am doing many DBA tasks.

    I develop stored procedures for new features as well as check performance and move these to our testing environment and to our production environment. Our web developers create and/or modify SP's when they have time. Our VB developers usually develop their own SP's. I move everything they develop to testing and production.

    We only have 3 people in our SQL department. One is designated DBA and the other and myself are designated SQL Programmers. Our DBA monitors our SQL Servers, decides how new servers will be set up, and makes final decisions on dificult choices. Me and the other SQL Programmer implement most changes on all our servers.

    Robert Marda

    Robert W. Marda
    Billing and OSS Specialist - SQL Programmer
    MCL Systems

  • Hello All Fellow DBA's and those waiting for their Chance, My DBA role is a global postition looking after multiple SQL7/2000 Servers with over 50+ DB's on a dozen Server's..'m also responsible for some coding reviews of the less expericenced Web Dev's we have. I'm the only really expericenced team member with SQL and it is not always easy..

    My current (BAG) is replication, Log-shipping (2000), Production DBA, Production Server Builds, Trouble-shooting Issues etc...

    In my Opinion a GOOD DBA is one who can turn his hand to any Data related Topic with Confidence including Developement..but has the Last word when it comes to implementing the final production model as it is he/she who will be responsible ultimately for it's success.. any comments or argurments for/against...would be intrested in your opinions

  • I somehow envy some of you who gets to have the final say on implementation and screening of queries/codes for production. I am a DBA and was also an analyst/programmer before really being officially designated as DBA. Having the final say on how to implement and screening queries would be the best practice in my opinion. After all, it's the DBA who will be called upon when server performance is poor, not the developers. DBA's should be given absolute authority over SQL Servers. Too bad, I do not have that much authority.

Viewing 15 posts - 1 through 15 (of 26 total)

You must be logged in to reply to this topic. Login to reply