tags:

views:

753

answers:

9

For some or other reason I have never liked to learn or program with Databases (ok nothing more than average SQL queries).

Are there any programmer jobs in cloud computing that won't need involve working with DB on a day to day basis.

I did try to look around some job sites but that did not help much.

Edit notes: going by the down votes :( I think I should add couple of notes. I have been programming in the area of desktop apps (3D cad, gaming, h/w interaction) and embedded systems that do not need to interact with a DB per say.

Now if I want to move to cloud computing, I am wondering if it is absolutely mandatory to learn DB to survive in cloud computing. I was mainly looking for people who are already doing so (i.e. managing without DB, other than a occasional small job).

thanks

+5  A: 

The chance of getting any programming job with absolutely NO DB skills would be almost Zero IMHO...

cgreeno
Plenty of embedded devices don't use databases.
Bill the Lizard
Yes but cloud computing is very DB heavy
Neil Aitken
No argument there, but this answer says "any programming job".
Bill the Lizard
I have been working for 8 yrs as a programmer (graphics, 3d cad...) basically standalone desktop apps that do not use DB. Now for cloud computing, I am wondering if I can still manage to be away from DB or not.
Sesh
That is a fair point, but how many of those people do you think have ZERO skills when it comes to using a database? I think you almost would almost have to try to avoid it not to pick up some skills.
cgreeno
A: 

I have never had a job that didnt involve DB work every day. If you don't want to work with DB's, i would say go for sysadmin work.

fARcRY
A: 

It may be possible. In fact there may be some downside to learning cloud with a row oriented RDBMS background given that some of the terms are overloaded, etc. But, overall, I think that programming with either type of datastore is similar, and if you didn't like one, you most likely won't like the other too much either. From a pragmatic standpoint, I think that most customers are going to default to RDMBS, due to maturity, mindshare, tooling, etc., and force you to prove the benefit of cloud. I would at least investigate RDBMS enough to know where the limits are, and where cloud might be an appropriate alternative.

Joe
+8  A: 

You want to work in a field which involves processing huge amounts of data but don't want to have to write any database code...

I think you need to think about why you wan't to do what you want to do.

The only fields I can think of that might not require DB knowledge are game development and client application development. Even then you'll be hard pushed to find anything.

My advice is learn how to do DB programming it's not hard.

Omar Kooheji
+2  A: 

I avoided databases for a long long time. Eventually it pigeon holed me into an industry where it was very difficult to get a job and, even more ironic, Microsoft came out with a new install technology that was heavily DB based...

I honestly can't think of one instance on the web these days where you wouldn't need some type of database as a programmer.

My suggestion is to bite the bullet and learn what you need. Databases really aren't that bad and can actually be fun in some cases :)

G-Man

GeoffreyF67
+2  A: 

I think that to be a well rounded developer, you should at least read up about a little bit about databases. Since currently relational databases are most widely used, understand the history behind relational databases (EF Codd is your friend) and try to learn a little bit about the differences between various database systems (SQL Server, Oracle, MySQL, etc.). To make yourself more balanced, look in to different database architectures (relational vs. object vs. unstructured). Even if you never intend to use the knowledge, it won't hurt to be a little educated.

As for cloud computing, there are so many DB issues in that realm that I think it will be unavoidable. To see what I mean, take a look at the section on cloud computing in The Claremont Report. I think that'll be a good starting point for you and may explain WHY you'll need some database knowledge to do something innovated with cloud computing.

Goodluck!

Tina Orooji
+1  A: 

There may be some on-line storage solutions that may be done without resorting to a DB other than managing a filesystem of what files have been copied and possibly applying some form of version control to them. Most things in the cloud do involve some form of DB work whether it be involving search a la Google or something a bit bigger like Salesforce.com's Saas applications.

JB King
+2  A: 

I assume that by "cloud computing" you mean building cloud computing services, not using them.

If that is correct, the answer is Yes.

Enabling cloud computing means utilizing many technologies; familiarity with database technology is helpful (since you have to deal with issues that DBs have been working with for 30 years) -- but it's not absolutely required.

What is required is understanding of distributed systems. Distributed agreement protocols; replication; distributed file systems; synchronization and scheduling issues; networking; transactionality; backups and recovery; etc, etc.

Understanding how databases, especially distributed databases, deal with these issues, would be extremely helpful; but you can come at the same information from the systems side of things -- look at OSes, networking, move on to NTP, and so on.

If I had to pick just one area a person must know to work on cloud computing initiatives, it would be "Networks." "Databases" would be second, tied with "Distributed Storage."

SquareCog
A: 

I completely agree with the learning RDBMS and SQL.

It's a very portable skill. That's huge. Sure, VB.NET translates to C# and there are a lot of differences between SQL variants, but the core concepts, normalization, query plan, understanding the relational model is all transferable.

I remember being almost terrified of databases when I came from C/C++ in the mid 90s. We used ISAM files in C/C++ and I had to use Access. Ironically, we had to use Access in ISAM mode using DAO (.Index = , .Seek) from VB4/5/6 to get the performance we needed for 200MB databases over 10Mb networks.

Once I got into SQL Server, I never looked back. You do need to dedicate some time to it, but with the help of Celko et al, you really can get up to speed on databases rather quickly. Although the field has quite a lot of depth, I think compared to client-side platform APIs, the various frameworks and then the rich languages we have today, SQL is still probably less complex than any single one of those technologies by about a factor of 10.

Cade Roux