Hi guys

I am an electronic engineer doing mostly embedded device programming. Lately I want to switch fields to become from a half behind IT guy to a full IT pro.

The two field I am interested in are:

1. Embedded linux development
2. Oracle DBA (specialize in tuning)

From my brief salary surveys it seem that on average the DBA pays higher than the rest of other IT discipline like networking, security, application programming, and embedded linux programming.

For instance in Singapore:

http://www.payscale.com/research/SG/Job=Embedded_Software_Engineer/Salary

http://www.payscale.com/research/SG/Job=Database_Administrator_(DBA)/Salary

In UK, DBA pays slightly higher than embedded linux developers.

Now why is that? IMHO embedded linux developers requires to know a large amount of material eg linux kernel, system programming, device drivers, embedded system architecture, i/o hardware (each one whole book), C, and wireless network.

From my studies, DBA seems to require to study a comparative much smaller amount of material eg SQL, network administration, and tuning. Database concept for me are much easier to absorb than embedded systems.

But yet DBA seems to pay higher than embedded linux developers. Is this true based on your experience?

If true, why are DBAs paid higher than the rest? I read a couple of DBA books, all seem to mention that DBAs are required to survive on pizzas, not sleep for 4 days, and handle a long line of angry managers etc (other tech books never seems to mention career requirements). Is this the main reason?

One of my former lectures used to joke that the reason DB Admins get paid more than anyone else is because the work is so boring and tedious (compared to software engineering or development for example) that there aren't a lot of people willing to do it, let alone make a career out of it.

I think there might be some truth to that.

DBAs are not paid more than Linux developers around here. a DBA is a guy who finished an Oracle course, and has some experience maybe, a developer is someone with at least 4 years of BSc studies, and someone who actually does low level dev, especially on non standard systems, is valued very high.

You shouldn't think about the average pay level, you should think about what you'll be paid.

Your average s/w engineer can work regular hours (for the most part).

A DBA would probably have to work a shift pattern, and perhaps even be "on call". If you want a job which can drag you out of bed at 3am on xmas morning, then that has a premium associated with it.