I was listening to the Berlin Philharmonic playing Brahms Symphony No. 3 & No. 4 in Carnegie Hall last Friday night. While I was indulged completely in the beautiful harmony of the music, suddenly I thought about the frustrations I encountered day after day dealing with the Integration of the different IT applications for our company. How I wish those IT systems and the IT teams support them can work flawlessly and in total harmony just like this piece of music! And right at that moment, I realized the key problem here. It’s not because we don’t have the world’s greatest players. It’s because we don’t have a conductor who understand not only all the instruments but also the overall music!

We have a Portal team that develops and maintains our company Portal. We have another team in charge of the application that handles single sign one, authentication and authorization. We have multiple teams who maintains IT applications that specialize in some business functions. We are talking about dozens of IT applications and hundreds of servers. But, that’s the least complicate part.

The most daunting factor is the organization structure. Each application team at least has an analyst team, a develop team, a testing/QA team, and a deployment/configuration management team. On top of that, we have multiple hosting centers, some centralized and some decentralized system engineer, network engineer and DBA teams, various types of technical support teams, performance testing team, capacity planning team, etc. And they are located all over the world in various time zones.

Our goal is to glue everything together, hide all the complexities and give our customer a single entry point for all the business functions they need. This task is certainly no less complicate than the Berlin Philharmonic’s job of delivering Brahms to New York audience.

I can feel that each team is doing their best to make their parts of the system working. Everybody want to do a good job in their own scope. But, nobody really knows how the whole system is glued together, especially the nitty-gritty details. So, whenever an issue happened, people started with saying “It’s not my fault so it’s not my problem” and continued with finger pointing. After several rounds of finger pointing, the right person who know the right details will be dug out. He or she will simply fix the problem in 5 minutes. But it’s never his or her problem since he or she doesn’t even know that integration scenario is possible to come to his/her part of the world!

In my opinion, nobody is in charge is the key reason the integration process functions so inefficiently. We need a conductor who knows how to play violins, what the oboes sound like, how to use to drums. No only that, he/she knows exactly what kinds of music the Orchestra would like to deliver. He/she knows exactly the time when the strings should enter and when the woods should fade out.  He/she will pick the right players into the game and rehearsal the Orchestra time and time again until the end result is satisfactory to his high standard. He/she will be the one who receives the applauds or the blames. Actually, a good conductor will take the blame himself but attribute the success to his/her players.

We have conductors in each application team but we lack such conductor in Integration level. Without this central control person/team, the Integration process is doomed to perform in disarray, like a Orchestra without a conductor, only yielding inharmonic melodies.