I work with a lot of various clients and have many friends in the consulting world, as am I, and one of the things that have always concerned me is that as technology buzzwords appear, some consulting companies suddenly are experts in those technologies almost overnight. So how do you distinguish between a good SOA consulting company and an overnight company? First glances can tell a lot Believe it or not, you can often distinguish a solid SOA consulting company from the rest by the types of projects they promote. SOA initiatives are not staffing events, so look for companies that have real case studies where they provided more than just developers to the project. They do not necessarily have to be the project managers on the project, but at least provided BA's, developers, QA testers, and other types of individuals often needed on solid SOA initiatives. Look for companies that have a background, prior to SOA, in project management or full scale project implementation. This will help you weed out companies that are suddenly "project" focused when prior to SOA they were strictly a staffing company. Questions to ask As part of your due diligence ask a lot of questions, but be prepared to not get many specifics. Consulting companies, if they are smart, are not going to tell you the receipt, just the fact that they know what goes in the cake! But you should ask questions that focus on what you should be expecting from the consulting company: 1. Experience - Have them give you the case studies on the projects. Have them talk about the projects, in general, so that you can get a feel for how much of the case study is marketing and how much is real. Also ask them if they have implemented SOA for your specific industry or circumstances. 2. Tools Used - There are lots of tools out there in SOA space, everything from code generators, to automated business process rules engines. Ask them what tools they have used, and what there thoughts were on the tools. 3. Methodologies - Solid consulting companies have methodologies, a lot will say they will use whatever methodology you want them to, but ask them about the methodology they prefer. Ask them about how they had to change that methodology to work with SOA; of course this should also be general. 4. Blueprints - Ask them if they have a blueprint for SOA. If they do not, ask them why, and what they gain by not having a blueprint. There is no right or wrong answer, but the discussion should give you a solid feel for how the company thinks and their level of experience in SOA and implementing it in companies. 5. Project Teams - Ask them what a generic team may include, let them know that you realize that the team will be tailored to the project, but on a whole with little information what What is the leverage plan? Ask them what their plan is from a leveragability stand point - in other words, what would be their plan to leverage what you already have versus coming in and installing a bunch of new software. Remember SOA is about reuse, so if the consulting company does not have a game plan on reuse, then what are you going to reuse? Now if you are migrating to services or implementing services for the first time, reuse is minimal, so ask them how they plan to help you reuse the services they are going to build in the future. This should take you into discussions around UDDI, ESB's, BPEL, and other hot topics. Again, do not look for specific answers, more of getting a feel for their depth and level of perception of your infrastructure. This will undoubtedly bring up specific questions about your infrastructure and business, so be prepared to answer. Use your instincts to determine how much if it is real, and the discussions from the questions above should help you with that. But always remember, the chef never lets you in the kitchen, but he/she will let you sample the food.