Turning to the technical side, I quickly found myself feeling very under-challenged/inspired. The tasks I was assigned were mainly fixing bugs in a huge code base (granted this is probably expected and a decent way to get new hires up to speed on the project). They weren't very involved bugs and never took more than a day or two to correct. So I was constantly asking for more tasks to work on. Frankly, I got bored. I realized the environment wasn't for me. Having come from a very rigorous undergrad program, the difference was like night and day. So I found a startup to work for (something I always knew I wanted to do at some point) and tendered my resignation 10 weeks after starting.
However, I got the impression that each division/group/project at Oracle have fairly different cultures. Perhaps I would have had a different/better experience had I been on a different project. Though for what it's worth, a friend of mine who graduated a year later from the same school had the exact same experience at Oracle as I had.
My biggest surprise is that there is still really interesting (at least to me) work to be done in the 30 year old RDBMS kernel. There's always places to innovate and my manager has always been encouraging of thinking of new ways to do it.
But then again, I've never had the itch to work for a startup, so maybe I'm just suited for a rank-and-file job :)
My time at the company was brief. Though I did meet a few people who clearly loved their work, the feeling I had was of a vast, top-heavy organization with a culture of micromanagement, and I was glad to leave. I don't know if any of the above is applicable outside of the division that I worked in.
Development Environment: Everything is an "Eating our own dog food" type thing. Bug Database was built in-house and backed by an Oracle Database. Same story for the source control system (which, to my pleasant surprise, was a DVCS). Conferencing software and e-mail infrastructure is based on Oracle beehive
On the logistics side, quite a bit of bureacracy; Functional Specs, then design specs by certain deadlines. Significant changes need to get approval from maybe two levels of management. I only have about one meeting every two weeks, so that's a plus. The stress level is extremely low as releases are very very far apart, so unless we're dealing with a high priority customer bug, there's not much urgency to anything.
Edit: oh, there they are :-)
But anything dealing with the Oracle at large started looking a lot more bureaucratic. We had to get rid of our toaster because it was a fire hazard. And I wasn't a big fan of their development tools, or internal website. It wasn't a big deal though.
Generally I think it depends on the group; as with any large group there's the excellent and below average, you just see more of it. Different to a startup/small company though where you can't really suffer poor performance for long.
As a engineer I went into dev management. Anything above IC5/6 (high level engineer) in Aus seems not really to happen, but more a function of less product dev as opposed to service delivery in Aus. This is generally true of Aus. Good product management and strategic releases, so was interesting experience. I found your M/IC level matters dealing internally within the org, ie trying to make stuff happen with people you've never met before means you prioritise based on looking at ARIA, but what you'd expect in a large distributed org.
I've got friends still there, still fighting the good fight. As with all things it's really about what you make of it and want to do.