SQL dba vs SQL Developer: Wha tis the 'intersect'?

Can a competant/seasoned developer, generally, be able to cope with the Admin duties of a DBA, on a small curve?

What about a knowledeable DBA who may try to cope up as developer? How realistic is it?

Any experiences? Thanks


LVL 6
anushahannaAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Raja Jegan RSQL Server DBA & Architect, EE Solution GuideCommented:
Ok.. To clarify your basic doubt, DBA is required to know the following things:

1. Installing and Upgrading an SQL Server
2. Monitoring the Database Server's Health and Tuning Accordingly
3. Planning for Proper Storage
4. Performing Backup and Recovery Duties & Maintenance Tasks
5. Managing Database Users and Security
6. Working with Developers / Programming
7. Transferring Data / Migration
8. Replicating Data / High Availability
9. Data Warehousing
10. Database Documentation & Coding Standards Design.

As you see the list of tasks above, A DBA is expected to be strong in everything except in Step 6 ie., Programming. If DBA is strong in Programming knowledge its preferable as it would help in better coding Practices being followed across.

A Developer can learn all the things other than step 6 for his day to day activities which can help a little bit too.

Hope this helps
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Aneesh RetnakaranDatabase AdministratorCommented:
>Can a competant/seasoned developer, generally, be able to cope with the Admin duties of a DBA, on a small curve?

Depends on your skills and adptability

>What about a knowledeable DBA who may try to cope up as developer? How realistic is it?
I know lots of DBAs who hate programming
0
Raja Jegan RSQL Server DBA & Architect, EE Solution GuideCommented:
One more reference wrt DBA Roles:

http://sql-server-performance.com/Community/forums/p/21365/122039.aspx

And a Developer can also be expected in some cases to be aware of all these aspects which would help them code better.
0
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

RiteshShahCommented:
well DBA and Developer both are challenging and important duty. As long as my view is concern, both should have their own task only. how do you expect that DBA will be free from his routine task and will work as developer? If DBA is really working properly than he has to do lots of thing as I don't think so he can spare that MUCH TIME which he can spend in development and same with developer.
0
Eugene ZCommented:
you'd like to be DBA-  no problems

just be ready to be 24x7x365 on call duties,
for a lot of stress = much-much more then developer

so if you mentally and physically  ready - you on your way to be  dba

now - you need to know everything what developer knows, and much more: people call  it database administration (see posts above): sql server, Windows, networking, etc...
---
it is not easy job and not for everyone ...
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<Can a competant/seasoned developer, generally, be able to cope with the Admin duties of a DBA, on a small curve?>>
Interesting question.
The gap between the skillset for being considered a decent DBA and a decent Database Developper has been widenning *only* the last decade.  

There was a time where a DBA *had* to have a good grasp of  database developpment for maintaining his system right, and a time where a developper could not be doing a good job if he/she did not take into consideration precisely how his application would actually run on daily basis (how easy it would be to maintain).  Unfortunately, in the last years, developpers are totally ignoring the conditions, on which what they developp, may actually be running in production, and DBA's totally gave up on development and perefered to focus on maitaining availability on an *as-delivered* basis.  

The main reason for that is the ignorance of database fundamentals.  The fundamentals for any database practitionner should be the same so my best advice is for you to get back to the source that is common to both job profiles.


IMHO
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<now - you need to know everything what developer knows, and much more: people call  it database administration (see posts above): sql server, Windows, networking, etc...>>
Yep.  Just as a side note and food for thought...  

Many years ago I used to work with good database analysts and developpers who were aware of all consequences of undeducated database programming.   My job at that time was ideal: no regular on calls, good/performant applications, my job was mainly about maintaining scalability. Now database analyst and true database developpers are almost an extinct profession.

It is only when we start considering that the two database jobs should not respect the same fundamentals that an artificial rift occurs between the two professions, hurting both professions.

IMHO/
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<What about a knowledeable DBA who may try to cope up as developer? How realistic is it?>>
An educated database practionner should be able to be totally interchangeable in both professions.
0
Raja Jegan RSQL Server DBA & Architect, EE Solution GuideCommented:
>> An educated database practionner should be able to be totally interchangeable in both professions.

To achieve this, that person should be a developer first knowing all concepts and then can be an administrator.
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<To achieve this, that person should be a developer first knowing all concepts and then can be an administrator.>>
Well if you ask me I don't believe that it is simply a matter of *who came first* debate.

One could argue, that there is *no way*, one could make proper development if he has not tasted the *joys* of seeing database systems fall appart in production as a dba (and had to fix them).  Knowing how the database system behave in production will make you a better developper, I guarantee that.

*Database Concepts* are a vague term which is why I prefer to refer to a proper *fundamental* education in database management.  Reading books to understand relational model form people like CJ Date are the only way that a database practitionner can understand what is truly happening, and independently from specific situations, contexts and assigned roles.
0
Mark WillsTopic AdvisorCommented:
>> Can a competant/seasoned developer, generally, be able to cope with the Admin duties of a DBA, on a small curve?

Should be able to. The better SQL Developers know or study various DBA tasks any way.

>> What about a knowledeable DBA who may try to cope up as developer? How realistic is it?

Should be able to. The better DBA's know or study various SQL development tasks any way.


The truth is more like a Programmer gets involved with SQL development without the appreciation and knowledge of database structures, so creates convenient data repositories more so than well designed databases.

Second truth is a lot of DBA's are the accidental DBA where they find themselves in the role of having to look after a server.

Fortunately SQL database does a reasonable job of protecting the innocent.

However, the "accidental" roles are a long way off the dedicated and special purpose roles of DBA.

The better DBA's have an affinity and understanding of the development task. I do not believe it is entirely neccessary the otherway around, because the most likely first appointment into a specific SQL role really should be the "hands-on" DBA. The SQL Developer is a harder role to justify in anything but the larger organisation with data warehousing projects and the like. Whereas the DBA role is important from the get go, and good DBA's can do the development work. There are a lot of DBA's who do not like to, or do not have to, but then they are also likely to be part of the larger organisation where they do have SQL developers.

0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<The truth is more like a Programmer gets involved with SQL development without the appreciation and knowledge of database structures, so creates convenient data repositories more so than well designed databases.>>
Very true.  I like the term used for that by CJ Date for what you are refering to: *data bags* vs *databases*.  

In any case, the distinction between the skillset required for the two roles is a mistake itself.  

Could we consider that a developer can actually do a good job while ignoring the current conditions on which his code will actually be running ? No.  Developpers who totally ignore economical aspect of their code are doomed to be poor developpers (in any language).
Inversely, can we consider that a DBA can actually well protect better his system if he is no involved at some point in helping development on the SQL part?  No.  DBA who do not treat potential threats in a proactive way remain poor DBAs.

Best regards...
0
Mark WillsTopic AdvisorCommented:
Love the "data bags" haven't heard that before...

The expertise of the (app) developer is not overly different to the SQL roles, in so much as, the better ones do have an understanding. I would go an extra step and say that "knowledge" of the better developer equally applies to any computing environment such as network (comms), security, hardware (resource) utilisation etc.

However in the bigger development groups, it is likely that they are less exposed, or, don't have that responsibility. I have most definitely seen developers that really do not have any interest in database nuances, other than "tell me where I get it from".

One thing for sure is the more you actually have to perform a specific role, then the better you get at doing that job, so long as you a prepared to learn. So, fro someone to pick up elements of DBA, if they are thrust into that role then they will get better at the role, the more they do and the more they learn. It might not be enough to say "I am a bonafide DBA", but it is a starting point. If they cannot then they possibly are not the best developer either.

So the only real answer I can give is it really depends on the individuals ability to learn. Some are clearly better than others. That is most likely to show in their current role - regardless of that role.

The propensity to learn more likely translates to an evolution towards the DBA role (on a small curve) rather than from the DBA becoming a developer. It is a question of evolution, experience and theoretical seniority. We also need to be mindful that in the SQL world it is a relatively new recognition of the need for a dedicated or purpose built DBA and so, for a lot of DBA's, it is most likely that they have evolved from a development role of some description anyway.

But these are all very broad generalities. What is the background for this question ?
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<I would go an extra step and say that "knowledge" of the better developer equally applies to any computing environment such as network (comms), security, hardware (resource) utilisation etc.>>
Yes.

<<other than "tell me where I get it from".>>
LOL. ;))  I particularly like the *silence* that follows the DBA's response.

<<One thing for sure is the more you actually have to perform a specific role, then the better you get at doing that job, so long as you a prepared to learn. >>
I'd argue it depends what you learn.  An old friend of mine used to say *there is a significant difference between 20 years of experience and 20 time 1 year*.  He also said *Experience and Intellectual Agility can replace fundamental knowledge only in a limited fashion*.  After 35 years in the database industry, he finally gave up, considering it a lost cause.

<<But these are all very broad generalities. What is the background for this question ?>>
I do believe that this discussion will give a broader picture to the questionner to help him make a decision.

Anyway, it's interesting, once in a blue moon, to have the opportunity to exchange on important issues such as the one the questionner has raised.

Thanks.
0
Mark WillsTopic AdvisorCommented:
Not sure whether I should post a *laughing* because of your comments, or, *crying* because it is unfortunately often the case.

It also depends on the definition of DBA - anyone can learn to build a maintenance plan, make sure backups happen, add new users etc. For some, they don't need too much more - especially if using good quality third party packages with their own databases (and no, we will not get started on that one - there are tons of third party packages that do not do the right thing with a database). So, for a small shop, with very few requirements of the database, then it becomes relatively easy. But then I would argue those tasks alone do not make a DBA.
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<Not sure whether I should post a *laughing* because of your comments, or, *crying* because it is unfortunately often the case.>>
At some point, humor is the only sane response to absurdity.

Check out the site below...

http://www.dbdebunk.com/laughcry.html
http://www.dbdebunk.com/content2006.html

Regards
0
Mark WillsTopic AdvisorCommented:
Interesting to see our own dportas feature in a few of those discussions :)
0
Racim BOUDJAKDJIDatabase Architect - Dba - Data ScientistCommented:
<<Interesting to see our own dportas feature in a few of those discussions :)>>
Yes.  Fabian PASCAL work in dbdebunk and his books was a beacon of reason for a lot of *thinking* practitionners.

Regards..
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft SQL Server

From novice to tech pro — start learning today.