Lessons Learned Inside Oracle

Anyone who knows me know that if I form a strong opinion about something, it’s because I believe I have examined all the available facts.  Of course, I don’t always have all the facts; so even when I have a very strong opinion, I am open to opposing views and to changing my mind.

I love a lively debate on almost any topic.

When I’m wrong, I admit it, and I try to admit it to anyone who I may have influenced with my previous, wrong opinion.   It’s almost a compulsion for me.  The more wrong I am, the more public I try to be as I make things right.

If you know me well enough to already know the above, then you will understand why I have written this post.   If we haven’t had the chance to meet, you may read this and think it is just some kind of shill post from an Oracle employee.  That’s OK; I would probably have thought the same thing a few short months ago.

The vast majority of my career has involved working with Oracle databases as a developer for Oracle customers. I have always believed that Oracle makes the best database available (its commercial Oracle Database, I’m digging into  MySQL and Oracle’s NoSQL database and I’m sure we’ll talk more about those at another time.)

Bottom line: If you can afford Oracle Database, use it.

On the other hand, over the years I had formed some negative opinions about Oracle as a company. They didn’t disappear the day I started working for Oracle, but they have been fading away steadily, as I learned about Oracle from the inside.

A big, heartless corporation?

New York City, New York State, USA --- Modern skyscraper --- Image by © Ditto/Image Source/Corbis
New York City, New York State, USA — Modern skyscraper — Image by © Ditto/Image Source/Corbis

We’ve all seen the stories depicting Oracle as a monolithic company that only cares about the bottom line.  Before I joined Oracle, I rarely noticed any instances of Oracle giving back to the community or helping those in need.

Now that I have an @oracle.com email address, I get several emails a week looking for volunteers to help with one charity event or another.  It reminds me of how I never notice a certain type of car on the road until after I buy one myself. Now that I’m working at Oracle, I see Oracle in my news feeds all the time.  For example, I’ve started noticing projects such as the Raspberry Pi weather station or  Kids coding events when they pop up.

I guess it’s just a matter of my personal awareness.  If something isn’t in my  current focus (or reinforcing my current bias?), I see the attention-grabbing headlines, which (as we are used to in 21st century media) tends to the negative, rather than the positive.

Soul-crushing grind?


I have to admit: when I accepted my new position, I felt a little twinge of dread: would I face a soul-crushing grind, with too many hours worked and a bare-bones benefits package?

My dread was completely mis-placed.

The insurance package, educational opportunities, and internal perks are some of the best I’ve ever had.

Sure, there’s some red tape and progress reports and all the typical things that come with a technical job at a company with over 130,000 employees. But I have never had this level of freedom to shape my own work. I am able to use and expand my strengths, while being supported and mentored to improve my weaknesses.

Stuck with “old” technology?

Over the last few years I’ve been using all sorts of new fun stuff, including NodeJS, AngularJS, and document databases. I’ve dabbled with graph databases, a bit of Java, and all kinds of cloud products.

When I applied for the Oracle Developer Advocate position I was concerned that I would be pigeonholed into a small set of “mature” technologies.  As I proceeded through the interview process, I learned that I would be covering many different languages; starting with Python then moving on to others like Ruby, JavaScript and PHP.  Still it was hard to shake the feeling that most other techies at Oracle would be focused on Java and PL/SQL – which might alienate me a bit.

Once again, I was so wrong.  I have seen (and am working on) many projects in all kinds of languages and technologies. I’ve learned about Oracle products using all of the technologies I’ve been interested in and many more that I had just assumed Oracle would not encourage.

My list of “Ooooh, I want to get involved in that” projects here at Oracle gets longer every day.

I feel like a kid in a candy store.

Open Source and Oracle – Really?


As you may have noticed, I am the Oracle Developer Advocate for Open Source.  One of the reasons I applied for this position was that I’d always thought that Oracle was against open source and I would have a small, possibly quixotic chance to nudge Oracle towards open source.  I expected to have a lot of push back on anything open source.

What I found, instead, was that almost every one of my “brilliant ideas” for getting Oracle interested in open source was already in place or in the process of being implemented.

Much to my surprise and pleasure, I find myself playing catch up.

Here are just a couple of examples:

  • Oracle open source projects:  There are quite a few already and the open source resource are growing.
  • Oracle on Github: Already up and running.
  • Allow employees to contribute to open source projects:  An existing approval process was already in place and anyone interested just needs to apply. I have applied.
  • Support Oracle and non-Oracle owned drivers for languages more often used with open source projects:  Not only already existing, but one of my first assignments was to create an entry level tutorial and some examples for the cx_Oracle Python driver.

I still joke that Oracle hired its Open Source advocate on April Fools Day, but now it’s a great ice breaker when I’m at a Python or JavaScript meetup. They can hardly believe I am there, but there I am: eager to learn and eager to share what Oracle’s doing to support open source communities.

Can’t learn anything new if you think you know everything


I often say that “I learn more from being wrong than I do from being right.”

In my first four months inside Oracle, I have learned an awful lot from my inaccurate perceptions about this company. I expect to be learning lots more in the years to come.

Does this mean I agree with everything everyone at Oracle says and does? No way (except for my manager, of course). But I’ve now learned that many of my beliefs were just that – things I believed, rather than things I know.

The more knowledge I acquire about Oracle, the more glad I am I took this job and the more optimistic I am that open source developers will “catch on” like I have.

Who knows what the future holds for me, I enjoy this position and I hope to stay here for a long time.  But, if something ever does draw me away from Oracle, I will be quite a bit smarter and hopefully I will be less quick to form negative opinions from limited data.

Leave a Reply