I am a CS student that knows his way around ASP.NET, MVC, Ruby On Rails, MS SQL, C#, Java and so on. I have also immersed myself in the ALT.NET community. Avid reader of Jeff and Joel, CodeBetter.com, Martin Fowler and so on.
A while ago I asked "Implications of Sharepoint, BizTalk, Microsoft Dynamics and Microsoft CRM for a .NET developer". I didn't get the answer I really wanted. But that doesn't really matter, as there are also a lot of non-MS "Enterprise" technologies around.
Sharepoint does not really concern me, but it is the whole of "Enterprise" technologies that have me worried. Big companies love to throw around a lot of terminology around like: SOA, DSL's, SAP, ERP, Dynamics, CRM, "Business enablers" and so on.
I attended an lecture by Capgemini on SOA. They did something with "Oracle SOA suite" to model service flows or something. Seems kind of similair what Biztalk does. Also there is a huge market for "SAP consultants". What does a SAP consultant do? Does he program? What does he do? What do "Dynamics" developers? What does an Oracle expert do?
In college we are working on a project using J2EE. A specialist from another company came by to tell something about the SEAM framework. I asked him how SEAM stacked up against Ruby on Rails and GRails.
He said "Seam is more mature, Rails and Grails are more suited for your soccer club.". Then he handed out, you guessed it, a booklet on SOA with Oracle tools.
I also watched some videos from a regional company specializing in Microsoft Enterprise. There was a video on the automation of an City government, all I could hear was Biztalk, Workflow, SOA, E-Office, back-office, mid-office and so on. There was no mention of what kind of data access pattern they used, or what kind of language they used, or stuff like that. "And then the building permit request is injected into the Sharepoint document library." Is that XML? Is that SQL? What do they mean by that? What did they "program"?
I would love to work on big applications that impact people's lives, but as the Django guy puts it, this all seems like "big and boring applications no-body cares about".
With all these terms being thrown around, it is very unclear to me what an Enterprise developer does on his day-job.
Things can be different though. Trough the national ALT.NET User group, I came to know a company located in an old farm in the woods. They listed things like "NHibernate" and "DDD" in their job descriptions. It genuinely seems more "Alternative" as opposed to the big Enterprisey companies. And I have much better idea on what they do.
My question now is this. What do Microsoft/SAP/Java/Oracle Enterprise developers do in their day-to-day jobs? As companies love to smack terminology around, it is difficult to see the trees trough the woods.