#5 Integration Beyond "Just" Web Services - SOA / ESB
This really took off in 2004 and is still chugging along quite nicely. Part "Marketecture" and part real promise, the concepts of SOA (Service-Oriented Architecture) and ESB (Enterprise Service Bus) are still selling well and are especially hot among consulting firms selling the latest and greatest thing (perhaps eclipsed only by Web 2.0)
Beyond this, other standards such as WSCI (Web Service Choreography Interface) and BPEL (Business Process Execution Language) are trying to bring SOA to the next level. The job market seems to indicate that SOA is where the action is at (based on keyword searches).
#4 Agile Methods
Having slowly gathered pace over the last 4-5 years, agile development methods and management practices (such as XP, Scrum, Crystal etc.) have gained a following and some acceptance among developers but the job market still doesn't seem to require any skills in it - a few hits on XP and Scrum.
From the Eclipse IDE to Server-consolidation to outsourcing/offshoring to other open source components, developers are facing a push from the CIO/CTO office to reduce development costs. As of mid-2006 however, much of the "fat" has been squeezed out and management is realizing that offshoring has its own problems - however the cost concern remains. Many companies are also deciding to move their base of operations to less expensive parts of the country if not the world.
The job market influence comes down to a large number positions needing you to know lots of open source packages (e.g. Tomcat, Geronimo, Ant/Nant, Junit/NUnit, Eclipse, log4j etc.) as well as having experience working with some team-members in other sites (either near- or off-shore).
#2 Rich-Internet Applications & Web 2.0
However key aspects of Web 2.0 such as "users owning the data" will be hard for traditional brick-and-mortar S&P 500 companies to grasp or make useful!
That said the job market is starting to show interest in Ajax and certainly in Web Services.
#1 Open Source
Not really a big trend in-and-of itself - more a trend within trends, that is, open source cuts across all of the previous four trends and many others.
- For SOA you've got the likes of ServiceMix
- For ESB you've got Mule - both it and ServiceMix are gaining traction
- For Agile development you've got JUnit for unit testing, CruiseControl for continuous integration etc.
- as mentioned previously, open-source by definition, is cost effective and
- many of the standard bearers of Web 2.0 are built on key open source components or platforms (e.g. Google is a big Linux shop, Wikipedia is built on PHP etc.)
What it all means for developers?
Each of these key trends also is at the heart of the never-ending "Hype vs. Actual Delivery" struggle. How can developers that want to drive real value to their customers do so in an ever-more effective manner and yet not oversell based on the hype generated by the media and companies with something to sell?
With many of the hyped technologies and processes, there is often a lot of real promise behind it, but there are no free lunches. So the key is to adopt and learn some (but not all) of the technologies over time . . . but which ones?
For developers the approach I recommend is to keep an eye on the headlines of software development news (e.g. use DZone for on-line or get a subs to SD Times for off-line) and watch for correlation with keywords in job postings (I highly recommend using Indeed for quick and comprehensive searches and you can also set up agents to email you matches). Between the two you'll start to see patterns emerge as key technologies come into the mainstream.