Major IT companies in India get a lot of revenue from maintainence projects and there is usually no scope for making major changes or innovating there.
The time and material billing for these make it quite attractive from a revenue point vs fixed bid greenfield projects. I don't think that situation will change anytime time soon as along as these companies stick to services.
This 100% it's not a problem with talent alone or their approach to their problems presented to them. It's what they are engaged on and that's controlled by the consumers of these services.
It's pretty much, the one and only thing that keeps enterprisey software maintainance people occupied.
Thought, the Java is finally on decline on the backend. Android is pulling Java devs from enterprise, and cheaper to use languages displace Java there.
This is so very true. I just migrated a 17 year old Struts 1.* app with most of my team in India from Weblogic to Tomee. It's a mission critical application with 400 users during business hours. It's not going anywhere anytime soon.
There is nothing wrong with Java. Modern Java is pretty nice to use, fairly fast, has an incredible amount of libraries and tooling to do just about anything you want to do and a vast pool of talent to draw from.
At my current job I try to stick to Java for any new services because it's a great overall language.
Almost all mainstream languages are nice to use, have sufficient tooling, and are fast enough for almost any purpose one might care to apply it to.
Java has become an enterprise language and is associated strongly with many negative elements of enterprise culture, though. "Written in Java" may as well be "designed by committee" or something out of a Dilbert comic or Pentagon Wars chimera.
The time and material billing for these make it quite attractive from a revenue point vs fixed bid greenfield projects. I don't think that situation will change anytime time soon as along as these companies stick to services.