SQL SERVER – Are you a Database Administrator or a Database Developer?

This blog post is written in response to T-SQL Tuesday hosted by Paul Randal.

I think following questions has been always very interesting question for everybody who is working with SQL Server.

Are you a Database Administrator or Database Developer?

The answer of this question varies from organizations to organizations and to countries to countries.

Quite often I see people call them developer and doing tasks of backup and restore of the database. Often I see Administrator writing efficient code in application development. I totally understand that it is almost impossible to draw a line and quite often we are comfortable doing all the tasks.

Additionally, there are few tasks which can be done well by either Database Administrator or Database Developers. E.g. Index management and creation.

However, I want to start an interesting conversation with all of you today.

Question for you -

Irrespective of your job description do you consider yourself as Database Administrator or Database Developer?

Why?

Please leave your answers in comment area. I am also creating pole along with this post – I have not kept the others options or both options as they take away fun of this question.

Reference: Pinal Dave (http://blog.SQLAuthority.com)

About these ads

45 thoughts on “SQL SERVER – Are you a Database Administrator or a Database Developer?

  1. Well, I still cant think if I will fit into any. I am equally a developer and DBA alike. That is the power of working with SQL Server. Gives the options of being both easily.

    Vinod

  2. I am a .Net developer and I also work in SQL Server 2005 But I want to work in database more and more, I want to learn new things. I visit to http://blog.sqlauthority.com on routine basis and really I learn lot of new things. So firstly I want to say thanks to PINAL.

    I work on following sections in SQL server 2005

    1) Design and create database structure
    2) Write stored procedures and user defined functions for database
    3) Use tools for SCHEMA comparison and data comparison
    4) Try to find new free tools and add ons for SQL server to make my work easy and fast
    5) Now I am trying to work for database optimization

  3. I hope I am only a database developer, because I’m into coding. I know some of the works done by DBA can be done through SQL codes, but I’m not much aware of that. Even for taking backup and restore I will go through the menus only.
    Its just like a Driver, who knows how to drive the vehicle and he might be knowing some simple repair works, but when it comes to something serious, Driver(like developer) have to approach a Mechanic(like DBA).

    Regards,
    Nanda

  4. Though choice. I love working in various roles at my current job but what I’d wanted to be most is database administrator. I’m not a generalist type allthough I have a lot of experience from different technologies and consider that as a advantage, so yes, DBA it is :)

  5. Hi Sir,

    I am working in the SQL SERVER from the past 6 months only.
    First i want to be Database Developer, and after that only i will think about Database Administrator.

    Thank you

  6. I am a SQL Server developer who has the mindset of a SQL Administrator. In result, I think about performance and design before I code; this is how it should be – both roles have great responsibility, and they are related. I have seen “office wars” between Developers and Admins, and it was not nice, since both were wrong at the time (because they had a hard time communicating and understanding each other’s point of view). :)

    • Thats a very good approach for a developer and u can b a very good developer.but u ll stll b called as develpoper.DBA not only involves performance tuning and optimisation of code.
      There are much more imp tasks like data security ,high availability , db security etc

  7. I consider myself as a DBA, till today most of my assignments and projects are to install, configure, performance tuning, although most of the time I end up writing or customizing readily available T-SQL to match the project requirement and to automate routine DBA tasks like defragment, top I/O, Indexes with Most Contention etc.

    Hemantgiri S. Goswami

  8. I consider my self as a DBA but personally I think good developer could be good DBA as along with backup/restore, defragment, indexes management DBA has to do performance tuning also, if you are good developer and know script well, you can perform your work efficiently. good knowledge of development makes you write customize script for your needs to automatize regular DBA task.

    I 101% agree with Vinod Kumar that SQL Server provides you facility and tools which helps you perform best in both the roles.

  9. I can’t see an “Other” option in the list? Please allow me to explain my thinking…..

    As a “Data Professional” I consider my function, fundamentally, as a combination of problem solving and solution delivery. To this effect I will use the appropriate means necessary to get the job done, irrespective of whether or not the implementation would be considered DBA or DEV territory.

    To me, the two functions are one and the same, united under the “Data Professional” banner. The only reason I acknowledge the concept of distinct DBA/DEV functions, is because this is how the roles are commonly considered/understood in both the SQL community and Industry.

    There is an increasing trend and understanding however, that there is more to the Data Professional than just DBA or DEV. Take a look at Buck Woody’s blog to see what I mean, he “gets” that as Data Professionals, we are soon to be expected, if not already, to provide consulting to the business on ALL things data related, irrespective of the technology used or the role you believe you currently have.

    What do we all have in common? We are all Data Professionals.

    Great question Pinal, guaranteed to invite debate!

    Shhhh I voted DBA :-)

  10. Hi all,

    The same question was raised in my mind on long times ago, but myself i found the solution as, suppose consider if you are a DB Developer and not willing to do the Admin task (viseversa..)what happen when your possition goes higer(think developer to manager)?. On that time you cant say to your belowed persons to i dont know the admin task,So as a DataBase guy you should invole all the activities depends on your technology.Finally it comes under what technology u r.

  11. The real strengths of SQL Server are the tools that come with it. I find that my first month at a new job is DBA, setting up the right backup/cleanup routines, cleaning up the indexes, etc. Once the environment is running smoothly, I can relegate the DBA responsibilities to a fraction of my time, checking that everything is working as I intended and occasionally setting up new databases. Other than that, it’s all about DBDev, coding middle-tier TSQL for the front-end developers and planning for the future.

    I suspect most people are in the same boat because we’re very often the only database professional on the team, and we’re expected to know the entire application. There’s a big, big difference between working for a development company or an organization large enough to support a large development team where DBA/DBD duties are separate, and working for a small or mid-size company to support their internal applications.

  12. Most of my work with SQL Server are installation, configuration and management of SQL server instances which also includes Backup & restore, DBM, Replications, etc.. As in my day-to-day job, I am not writing much of SQL Statements, so I think I am not falling into the Dev category..

    Excellent thought, Pinal Sir..

  13. for many dev tasks, sql requires some admin knowlege/work, e.g. timing jobs, query loads on the server,etc. this makes it understandable that there is overlap between responsibilities.

  14. Both. As a consultant, my clients expect me to be an expert in both specialties and be able to easily slip back and forth between roles. Even more importantly, they expect SQL solutions to adhere to both development and administration best practices and performance optimization. Its actually quite fun!

  15. Hi Pinal,
    You could add other options like BI developer, most of my work is database development but from a BI perspective (Like creating SSIS packages, writing procs, creating ssrs reports), just a thought.

  16. Great question. I would say I am a Database Developer that must also perform Administrative tasks. My primary duties are to utilize the database to create solutions to problems. However, along with this comes the need to administer the database. However, the database administration is a side effect of the process in most of the cases.

  17. hi,

    i am not wondered , i know one day every DBA will have to raise this question for himself. Medium level organizations don’t really employ dedicated DBAs. The programmers generally write procedures and queries. And the website admin who doesn’t really know anything about the sql development takes care of the Maintenance. I am a .NET dveloper , but i work mostly on sql coding , performance tuning and Index tuning , setting up the job schedules. so suggest me how should i consider myself

  18. Good question Dave and there are a lot to be discussed here. I would certainly consider myself as a DBA and hired as a DBA. There are some tasks that distinguish clearly a DBA from a Developer. Stuff like backup/restore, data/log file management, performance monitor, security settings and maintenance tasks (index fragmentation, upd statistics, up usage) should be done only by a DBA. DB settings and server settings should never be done by a developer.

    Of course the decision to create or drop an index should be discussed with DEV because they are the ones who know the queries than come in and out from application.
    But the missing and unused indexes, should be monitored on a daily basis by the DBA. To make the long explanation short:

    A developer digs into the database from a programmatic point of view and has a dipper knowledge of every object of the database and its functionality while a DBA controls and manages all the factors that affect the server hosting the database.

  19. I’m a DBA. I don’t come from a DEV background. I look at Databases from a systems point of view, how they perform, process improvement etc. I write code when I need to but often I recommend stuff to developers.
    Also being a DBA is a slightly more pressured or at least unplanned (at least in my organisation) and I’ll be more likely to have to come in out of hours to repair things.

  20. I am a DBA. I don’t do code. I come from a systems background. Don’t get me wrong, I can muddle my way through some intermediate SPs, functions, and triggers but I am more comfortable with keeping database systems available.

  21. Officially I’m a DBA but due to the fact that we are understaffed and also the fact that our databases and DB jobs have been set up well and run smoothly I therefore do a lot of DB developement.
    Of course, as a DBA I prefer to do real DBA work.

  22. Pingback: SQL SERVER – DBA or DBD? – Database Administrator or Database Developer Journey to SQL Authority with Pinal Dave

  23. I am doing the following tasks

    1) Design and create database structure
    2) Create stored procedures functions
    3) Schema Comparision
    5) Try to Optimize the Query

    I am DBA Developer, because i am not doing any kind of administrative tasks in SQL Server

  24. Pingback: SQL SERVER – 3 Simple Puzzles – Need Your Suggestions Journey to SQL Authority with Pinal Dave

  25. I call myself “Database Engineer” because I am not simply implementing what others told me to do …
    Yet my job description simply sounds “Database Specialist”.

    • I agree with that… Database Specialist :D

      But to choose between DBA or DBD, I choose DBD. In SQL Server administration things feel seemless, coz lotta
      administration thing can be done easily.

      Diffrent with Oracle guys, which sounds good to call himself DBA, coz there is lotta administration things come with complexity and effort.

      The other way developing things in oracle is the same like developing vb/c#/java/web program to access db (oracle need oracle developer like sql server need visual studio or others).

      Simply (just my 2 cent) :
      SQL Server = DBD
      Oracle = DBA

      Thx

  26. I have done both database development(Unix and Windows platforms) and now administration for 14 years and and am a MCDBA of which involves server, network, database, application, installs, configuration, performance, troubleshooting, investigation, recomendations and any and all other possible senarios. It is then hard to define the fine line of developer or administrator but my role is defined as DBA specialist.

    THX..

  27. Great topic. I find that having some DBA skills really help me as a developer. I look at chose I wrote before I started performance trouble shooting, and I can’t believe it is mine.

  28. You need to be either a developer or a database administrator nothing in betwwen It is isolation of tasks that means that it is. Too often you may be called to develop and then deploy what you develop as most cases the dba is the gatekeeper and does all deployment and so breaks the rule. Dont try to convince me otherwise as there must be segregation of tasks. DBA developer is a recipe for disaster

  29. I think Database Administrator can work as DBA and aslo as DBD, because he know about both creating procedure, triggers, indexes and also knows how to take backup and restore them. I current profile gives me the opportunity to develop the procedure, triggers and also of taking backup and maintaining databases.

    Hardik Thakore

  30. it’s difficult to say that i am an administrator , because i really don’t like doing the backup or fixed problems of database i didn’t write its code ,, so i am a developer … but not a professional

  31. Pingback: SQL SERVER – Beginning New Weekly Series – Memory Lane – #001 « SQL Server Journey with SQL Authority

  32. I m Diploma holder working as System Administrator I want to go for Database Administration please help me what should i do??
    my email id is [email removed]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s