I have been in the IT Industry for over 13 years now. I started my career as a developer. At that time, all that I cared about was whether I remember the right syntax to ensure that all the programs I code, compile right and execute without crashing. After that it was time for me to build products and solutions that solve business problems, thus started my journey into verticals / LOBs.
While I understand the need for some functional knowledge for developers, testers and other members of an IT team that would eventually be responsible for successful development, testing and deployment of an IT solution for a specific functional requirement, I happened to think that the degree of knowledge required varies. In my career as a developer I have changed verticals at least 5 times in the span of 7 years. Even with in a vertical, as you can imagine, there would be multiple functional areas. So, for example if you are working as an IT consultant in Life Sciences industry, the functional areas covered would range from R&D to Manufacturing & Supply Chain to Sales & Marketing. So, even if you try to restrict or focus in a specific vertical, it would still be hard for IT staff to be able to know it all across multiple functional areas.
So, my point is, when it comes to the expectations of various stakeholders responsible for an IT project, ideally you would want all the members of your IT team understand the functional nuances extremely well. However, that would hardly be the case. Hence you should be prepared for some learning curve for these teams. In this world of multitasking, parallel processing and maximum reuse, while it is reasonable to expect an IT specialist to be also an expert in his or her chosen domain / vertical it would not e practical and just.
So, what should one expect?
In my opinion:
1) You need Subject Matter Expert(s) (SME), be it a Business Analyst or a Product Manager, you need at least one person in the team that would act as a bridge between the business and IT teams.
2) You would also need at least one technology person with very good functional/domain knowledge. This person could be a Technical Architect / Lead or another role. He/She should be able to translate the functional requirements to technical specifications.
3) There should be an “on-boarding” process for the rest of the team, that would ensure appropriate functional training as per the training requirements identified as part of project planning.
So, in essence, while the stakeholders would long for IT teams with absolute knowledge of the functional areas, that is hardly the case. As long as there is reasonable planning and effort to ensure the teams are equipped with enough knowledge to build, test and deliver an IT system that meets the requirements of the business, AS A TEAM, one should be content with employing the services of teams that are more technology focused and either have the functional knowledge or imparted the knowledge as part of “on-boarding”.
As always, feedback and comments are welcome.