Hacker News new | ask | show | jobs
by samoright 3215 days ago
I have worked in Oracle for 2 years and I have worked at other Fortune 500 companies. Oracle, by far, is the most soulless and lethargic company among all of them.
3 comments

Having worked for and worked with the major licensed software vendors (Oracle, SAP, MS, etc), I echo that Oracle is by far the worst of the bunch.
Sure, not all of them are the same.

However those with heavy use of external consulting and off-shoring, seem to come pretty close.

I don't understand the negativity towards using consultants and off-shoring.

Using consultants is a business decision which helps the company hire people for the short term of the project and also offload risk. Not all companies have the capability to handle all kinds of risk. For example, software companies don't specialise in financial models and investing. So they don't take on financial risks by investing in derivatives and other instruments to make profit. Whenever possible, risk outside core competencies is outsourced. This is good for the company as then it can focus on the core business and make money.

Off-shoring is bad in the sense that jobs are lost in the local economy. But, this is again similar to having a factory in China as opposed to San Francisco. It brings in more expertise at a reduced cost. Off-shoring helps make things cheaper in the end. For example, as your insurance company uses off-shore consultants to make their software, it is cheaper directly translating to lower insurance premiums. the same for many other products.

While I understand that software is a different beast to build unlike toys or other products. Once built, the normal theories of economics still apply.

They both reduce institutional knowlage. This tends to be extremely detrimental in the long term.

Outsourcing software is like burning all the design documentation for hardware your having someone else build. Even something as well known as injection molding tends to work vastly better if you have experienced staff as part of the design process. And software is worse than that because the design process is part of development, so outsourcing means you don't even understand the problem space.

Ya.

If I wouldn't pay the consultants in the office across the street to work on my core IT (outsourcing), why would I pay someone separated by oceans, timezones, language, culture... (offshoring)?

While working in healthcare, our corporate overlords repeatedly rammed the "blended shore" model down our throats. Which never worked. (Got to know some nice people, though. So there's that.)

The easiest part of our job was the coding. Requirements gathering, analysis, project management, customer relations, QA/Test, etc. Working shoulder to shoulder with our clients, it was hard enough. No way our work could be further delegated while still delivering something useful.

Preaching to the choir, I know, apologies.

Exactly. It's a good short-term, bad long-term strategy.

Just like any other short-term strategy, could be appropriate sometimes, but very rarely is.

One other big concern is the incentive structure. A contractor will do whatever their contract incentivizes, and any as complex as software has plenty of areas where that can be gamed or will encourage bad outcomes. Charging for defects encourages litigating each bug; not charging encourages skimping on QA, etc.

Not having in-house expertise has the really big problem you mentioned because the only way to avoid these problems is if you have experienced oversight and that's almost inevitably the first “expensive” staff cut.

Off-shoring takes all of those problems and amplifies them with a big communications latency hit. I've never seen that go well except when an entire product can be handed over, including the management.

I agree with your point. Its just that not all consulting or outsourcing is bad.

A decade ago, at least in my experience, Chinese products were synonymous with bad quality and were not considered reliable. Nowadays, while those kinds of products do exist there also exist very good products designed and made in China (eg: DJI, OnePlus, etc.).

I reckon its still early days for software and going forward, we will learn how to build higher quality standard stuff and even high quality novel products. Generating this stigma against against consulting and off-shoring before we have had time to properly analyse the cost-benefit tradeoff doesn't help anyone.

They might be and are probably bad in many cases, and cases where they did not work should be publicised and studied. But making broad statements and correlating them with bad work environment is not helpful.

I think there is plenty of data to start drawing conclusions.

In the short term it can often work really well. Somewhat more rarely it can also work long term.

The trick IMO is to be hands on. Apple's approach to manufacturing is to be aware of what's going on even if they are not actually doing it.

I happen to do enterprise consulting, so I get to live through "us vs them" situations within companies with cultures similar to Oracle quite often, hence my example.
Lethargic? How so? How did they become so - because they live off of the support portion of the Enterprise Oracle licenses?
Oracle is lethargic from the perspective of its employees because the company is extraordinarily sluggish and apathetic.

The pace at which Oracle develops software, the flagship Oracle Database for example, is ridiculously slow. The Database team takes about 3 months to 6 months to develop tiny changes (say 10 to 20 lines of code). In other Fortune 500 companies I have worked for, I have seen such changes taking about a few days (5 days max!). I am not kidding! What takes say 3 days to develop in a normal software company may take about 3 months to develop in Oracle. And mind you, Oracle Database is one of the premier departments of Oracle; other departments are even worse!

Oracle is also remarkably apathetic to its employees. The link[1] shared by foo101, i.e. has a few anecdotes that highlights this apathy. In fact, when I read James Gosling's account of Oracle in that link, I thought, "Wow! This is so accurate. Even someone of the name and fame as James Gosling had to face the same lowly problems at Oracles that relatively unknown developers in Oracle face."

Disclaimer: I worked for Oracle for 2 years.

[1]: http://www.eweek.com/development/java-creator-james-gosling-...

Oracle lives in a market protected by high barriers to entry and low customer expectations. Protecting corporate databases from corruption and unauthorized access is crucial to any IT department. Incentive to change the DBMS vendor is nil compared to the expense and risks of converting. And no one, from CTO to DBA, makes any demand to substantially improve the product, such as by rectifying theoretical problems with SQL that have been recognized for decades.

It's no different with SQL Server or DB2. Each vendor has its captured market, with very little power to enlarge its share and commensurately little need to innovate. Customer demands amount to operational window dressing. Why spend money on engineering when customer and vendor are both satisfied?

Sorry that is not how the database market works.

> Oracle lives in a market protected by high barriers to entry and low customer expectations.

This is false. Oracle has a very tough competitor called Microsoft SQL Server. In fact, Oracle tries to catch up with many existing Microsoft SQL Server feature with its every release. Like it or not, the NoSQL database servers like MongoDB, ElasticSearch, etc. are also competitors of Oracle. That is why Oracle was forced to introduce supporting for storing, indexing and querying JSON in their database. This was a completely new feature that required Oracle to develop new querying syntax, new querying mechanisms and new constraint validation syntax. There are many such examples where Oracle is forced to improve due to competition.

> And no one, from CTO to DBA, makes any demand to substantially improve the product, such as by rectifying theoretical problems with SQL that have been recognized for decades.

This is true. But then everyone from CTO to DBA make a lot of demand in substantially improving the product in other awys, such as providing new features regarding scalability, robustness, security and auditing. This is why Oracle Database has seen a lot of enhancements in multitenancy in the last few versions.

> Why spend money on engineering when customer and vendor are both satisfied?

Oracle does spend a lot of money on engineering. Why? Because it has a lot of development to do in their database to remain competitive. If anyone thinks that the field of RDBMS is mostly a stagnant field and no new development happens in this area, then that is a gross misunderstanding of this market. Database market is still very competitve especially when Microsoft SQL server leads the game with modern features and as open source databases and NoSQL databases are eating away the market share.

See the following two URLs for example to see how Oracle has been adding new features in the last two releases:

* https://docs.oracle.com/database/121/NEWFT/chapter12102.htm

* https://docs.oracle.com/database/122/NEWFT/new-features.htm

While all this looks good on release notes, it is only someone like me, who has had the misfortune of being an Oracle developer, that can vouch that the development process and the development pace within Oracle is hopelessly archaic and painfully slow. Oracle still follows the waterfall model of development for example. There are probably hundreds of reasons and contributing factors to this. A few of those hundreds off the top of my head.

* Management that does not care about absolutely anything apart from their own promotion.

* A culture that rewards talking out loud rather than actual work.

* Top-down heavy handed management that provides zero autonomy to engineers, thus no motivation in engineers to innovate and improve engineering practices.

> > Each vendor has its captured market...

> This is false.

You have no further to look for Oracle's captured market than the US federal government. When Snowden talks about the realtime interception, tracking, and monitoring of any and all electronic communications, worldwide, he's talking about the NSA using Oracle databases to do it. Ellison made the company successful by selling the as-yet-unproven technology of a relational database to the FBI (IIRC), and it's just continued from there. This is the environment that led Scott McNealy, then CEO of Sun, to famously quip, "You have no privacy. Get over it." He knew that the NSA was collecting everything it could, and storing it in an Oracle database running on Sun hardware. Well, the commodity hardware caught up, but Postgres is still struggling to match the features Oracle had 20 years ago, so Oracle DB is still the king of enterprise databases, where cost is no object. Ellison owns government IT, which is what leads him to be so smug about his success. Even if all Fortune 500's would cut Oracle off, Oracle would continue to rake in piles of cash from the government. It is the definition of a captured market.

It's the lethargic "itis" a tick or mosquito or lamprey feels after sucking your blood.

http://www.urbandictionary.com/define.php?term=the%20Itis

You buy an Oracle DB because (a) you have a fleet of Oracle DBAs who agitate for you to keep Oracle, (b) plenty of software you want to buy only works with Oracle (or only has Oracle as the top-tier option) and once you've bought Oracle and hired Oracle DBAs it's hard to justify having other things, and (c) Oracle are very good at selling their product up the management chain; their enterprise sales teams speak the language people who run companies do, and IT departments don't.

(And I don't mean golf.)