views:

1109

answers:

11

So many companies today want someone with Oracle experience. I have none, but it seems to me that it shouldn't be hard to figure out quickly. However, when potential employers ask me if I've worked with Oracle, the line "No, but I'm an expert with Microsoft SQL Server, Borland Interbase, PostgreSQL, and MySQL, and I have no doubt that I would be able to apply my experience to using Oracle's product" doesn't seem to fly. I don't think it would matter to them if I had helped design SQL Server, they want someone who's worked with Oracle. Do they know something about the magical database called "Oracle" that I don't? Or is it just another relational database that they've attached too much importance to?

+5  A: 

The biggest problem we had with it was knowing how to effectively use and tune it. The SQL was the easy part. Quite honestly, running MSSQL server was a joke to run compared to that. I'm not saying Oracle is bad. There's a lot to it, and I would definately not take the opinion that you can get up to speed in an afternoon with it.

Kevin
+2  A: 

I'm in the middle of a job search now, and I have experienced the same problem. From an application developer perspective, the underlying database is largely irrelevant; the differences can be learned/looked up rather quickly. I've had similar experiences with J2EE app servers (e.g. "must be expert in Websphere". Really?)

My conclusions have been that either the HR/Recruiter is clueless, or the management is clueless. Stuff like the database should be clearly in the "nice to have" or "software we use" category of a job description (I'm assuming here the job is not for an Oracle administrator, but for a software engineer or similar)

Developers are lucky enough to have our pick of jobs right now, so if you can't even get an interview with your very reasonable explanation, it's probably not a place you want to work anyway.

davetron5000
I can't agree with that. Writing SQL is one thing. Writing *efficient* SQL is another. Now if you think that you can simply write code that always performs full table scans then require the DBA to give you more cache memory, don't bother learning the Oracle way.
Stephan Leclercq
+25  A: 

Well, you usually don't hire a DBA, or a senior database programmer, just to write ANSI SQL. The hard parts, and the valuable skills, are in installation, maintenance, backups and restores, reporting, complex PL-SQL programming, and probably most important, tuning. All of those things are totally specific to the database vendor, and very little of your existing knowledge transfers over. That's why it matters.

Eric Z Beard
I second that statement Bill!
Kevin
Well said indeed. I should have qualified my question by saying that I've been applying for ASP.NET developer positions.
Joshua Carmody
True, Joshua. From a developer perspective it is irrevelant. I was only a MySQL dev when I joined my company a long time ago, and wrote Oracle SQL queries the first day. But as a DBA, it's a whole different ball game. Oracle is hugely different when it comes to tuning and administration.
Hector Ramos
Hector, Depends on what your devlopers are asked to do. Here, devlopers design their tables and such... that requires specific Oracle skills.
+2  A: 

I don't have experience with Oracle so I can't answer your question directly. However I can say that I have run into the same type of problem many times in my own field. It seems to be a failure of recruiters who are not technical and don't have or don't want to talk things over with a technical manager on the hiring side. Instead they rely on their narrow set of requirements and if you don't match, then you're out.

However in the case of Oracle you could download the Free Oracle Express Version and work your way through various exercises. After doing so you should be able say you have some Oracle experience.

Peter M
You can download Enterprise Edition. No need to use the "free" one. All versions are free to experiment with.
really? i didnt know that
luiscarlosch
+2  A: 

Oracle has always had a higher service ceiling, but it generally comes at the price of being harder to set up and administer, so if the company is using Oracle it's quite understandable that they would desire or require experience with it.

That said, most of the times I've encountered Oracle databases in the wild, it's been a case of howitzer-vs.-mouse. On my current project, we have a top-shelf server devoted entirely to an Oracle database with two tables with a few hundred records each.

Once you get through the configuration hassles, though (and it's wonderful to have an actual Oracle DBA do this for you), working with Oracle is barely distinguishable from any other database, so I would expect a company that already has good Oracle DBAs on hand to be more willing to hire people without specific Oracle experience.

MusiGenesis
If you design your Oracle databases like a SQL Server database, you'll have a rather crappy database unless your app is simple. Certain design choices made for performance are diametrically opposed. Oracle doesn't have "free space scans" - inserts don't benefit from clustered indexes
I agree with all of your points, but I'm not sure what they have to do with my answer here. Please explain?
MusiGenesis
Actually, I think I see what you're saying. "Barely distinguishable" is an overstatement.
MusiGenesis
I meant "barely distinguishable" from a programmer's perspective, as opposed to a DBA's.
MusiGenesis
Nice answer (imo) shame I am out of votes for the day.
Ali A
+4  A: 

Under the hood Oracle is extremely different from MS SQL and personally i'm an Oracle fan. I find it scales better, is quicker, has better support and has more functionality.

However it seems harder to understand, harder to setup and harder to perform day to day functions. Although it's not actually harder, it has a proper learning curve and is less forgiving. So experience is more valuable.

I find a trend that an Oracle DBA quickly learns how to use MS SQL and it's guis. Stick an MS SQL DBA on an Oracle database and there just lost. If only for a time. However I started out on Oracle so i'm obviously bious. I used to often think to myself 'if i was working on oracle i'd just do X' and no doubt vice versa.

I'm an Oracle fan even after working on MS SQL for 4 years now.

Robert
+4  A: 

Oracle also has a different locking architecture than most other databases. A programmer will easily be able to write crud statements that accomplish a task in oracle if they are only familiar with another database. However, they won't know how to most effectively take advantage of Oracle's unique architecture to improve performance. See Tom Kyte's Expert Oracle Database Architecture for a full explanation of this.

JasonAnderson
A: 

If you are using Oracle, you probably need oracle DBA to set it up and maintain it. If you are programmer using SQL, it is pretty similar to other DBs.

If you are to use PL/SQL, well, it's pretty unique and you can do a lot of strange stuff. For example, I saw code serving web pages using PL/SQL... Just PL/SQL, with writing out < html> and < body> tags and everything :)

I have written a few small-scale apps with different databases:

  1. Oracle - requires somebody to do some maintainance every month or so (note, we don't have a competent oracle DBA, developers are not DBAs)
  2. SQL Server - setup few years ago, nobody even touched that machine in a year or so (no DBA needed)
  3. MySQL - no maintainance in a year after DB was setup. (no dba...)

So, yes, I see the reason why company would want somebody with Oracle experience...

bh213
Wow, I totally disagree with not needing a DBA for SqlServer. That must be a really small database with few people using it. I've administered both Oracle and SqlServer, and they both require similar work, it was just all command-line with Oracle.
Eric Z Beard
As I said, all apps were small, few tables, few (hundred) thousand rows max. Yet, oracle needed supervison, SqlServer and mysql did not.
bh213
Supervision? Can you define that? Which commands were required? My clothes drier requires supervision monthly, but I don't need a Millright or a mechanical engineer, just need to pull out the screen and remove the lint.
+4  A: 

Is .Net all that different from Java?

If you ask this question to either a hard-core .Net or a Java developer you'll get very scornful looks. Yet, a DBA, or a computer scientist may see the two as almost identical... It all depends how deep you're scratching beneath the surface.

Andrew from NZSG
I love it. Great answer... how deep you scratch. Sure, both have tables and columns and indexes... Sequences, Clusters, Connect by... not the same
A: 

It is more expensive!

There are many worse career moves than being an Oracle expert, IMHO. In a way, it doesn't matter if Oracle is better...the market is the market.

pearcewg
+1  A: 

RMAN is the key to being an all knowing Oracle god or goddess. Learn it, know it, love it.

If you go into an interview gloating about your exploits at the RMAN console you are more likely to get a job working with Oracle. Especially in an interview for a DBA position.