I am bit confused which career path should I choose. Currently I am doing development in my company and also managing database. I am thinking of sticking to only one. Can suggest which career is more challenging?
How about both?
I'm a web developer for a small company, so I do SQL/C# and ASP.NET ... I love it!
Honestly, it really depends on where your desires are. When you JUST work with SQL it can be thankless because you aren't putting out a PRODUCT and people can ooooh and aaaah when you are a SQL admin you never hear "wow, the database is running really fast today" you hear "I ran a query and it took me 229043980 minutes and this is rediculous!!!!!"
If you like organizing and envisioning data (and reporting) SQL is the way to go.
Both careers present their challenges. However 'DB' is vague while c# is specific. If you love to program and create I would suggest c#. If you like to maintain databases and fine-tune queries, etc, be a DBA.
Whatever you do, it doesn't hurt to know some about the other though.
Stick with what you do best and enjoy most. You'll be happier with the choice.
Which is more challenging will depend greatly upon your strengths. As a developer at the core I would find being a DBA more challenging.
Being a "Good Developer", who follows best practices as often as possible, makes reliable, fast, requirement meeting code is very challenging.
On the other hand it can be easy in todays world GUI, wizard driven development to be a poor developer, but one who gets the job done.
I would expect the same to be true of a DBA. You can keep things running, backed up, etc. and be an average DBA, or you can dig in to performance analysis, metrics, reporting, drive design with your developers and be a "Good DBA".
The choice is yours. Whichever you choose be "Good" at it, there are plenty of average DBAs and Developers in my company...
...or do both as others have suggested.
I think both have their own challenges, I'm not sure I'd say one is more challenging then the other. Which one do you like more?
I think you would make yourself more valuable if you continue to learn both fields. Maybe pick one to be an "expert" at but continue to learn the other since they compliment each other so well.
I'm a SQL Developer and I love it! I get to do both programming with C# and manage databases. My position has also been called Development DBA at other companies.
Both are challenging in their own way. Production DBAs usually have to wear a beeper, and be available 24x7. The larger the company you work for, (usually) the more specific the database role will be.
Depending on the company you work for, programming is a lot more relaxed but still challenging. Programming regular CRUD (database) application can get boring for some folks. Just remember that there are different types of programming. The most prevalent one is business programming. If you want really challenging programming problems then go into the sciences like bioinformatics, genetics, and finance.
I find that when I'm programming, I generally am a SQL developer at the same time... must be nice to have someone dedicated to writing Stored Procedures and Views for you! lol
They have very different focus:
A DBA's role is all about stability. As a DBA you might have a bonus based on uptime or similar metric. A DBA will often switch to new technologies only after they are mature in the market - they want to avoid risk.
A developer's role is all about change. As a developer you might have a bonus based on new features added. A developer often wants to use the latest 'bleeding-edge' technologies to get exciting new features in their products.
That said, the crossover value is very high. C# developers with really strong SQL skills or vice versa can earn more than either skill-set in isolation.