In the past year or so, there have been a lot of community initiatives at Microsoft. Kind of related is the frontline program that's part of the server and tools division under Eric Rudder. It is a 3 week program where participants are taken out of their day-to-day job for 3 weeks and instead work with the PSS team (Product Support Services) for 1 week; and onsite at a Microsoft customer for 2 weeks. The idea is to shadow the mentor assigned to you in PSS/or in the field, listen in on the phone calls, meet the customers, understand what problems they are having and use the experience in building better customer-focused products. I must say it has been an amazing experience. For one, traditionally one the PMs at Microsoft get to go meet customers at conferences, and testers typically dont get that exposure. Being the advocates for our customers, this is a big and much needed step and I am very happy with the program.
I spent a week with a PSS support engineer who was working on web service and COM/DCOM issues. I had some interesting experiences, but bottom-line -- make products so that problems are easy to diagnose. Throw good and meaningful errors, think that apps outside are n tier and a generic “Access denied” error when you have asp.net, sql, iis all the picture, doesnt tell you anything. Small steps, big results. Sometimes these kind of bugs are postponed or resolved wont fix, but for sure I am going to fight for these now.
This week and next week I am in Atlanta, working on site at BellSouth. Here I am working with a MCS person (Microsoft Consultancy Services) who introduced me to a bunch of folks on the teams he is working on, and I have been talking to them and trying to get feedback on web services. If I had come in on a shipped product, things could be have been more concrete - what I am trying to do is see what the are things they had to build on their own with the .net web services (Asmx) stuff that shipped with everett. And then I explain to them if Indigo is solving that problem and how; or if its not, then its on my list of things to take back to my product group. One of the things that came out consistently is debugging and tools to aid debugging. Especially in distributed systems, people want tools to monitor where their services are, where their clients are and get an average success/failure rate on messages, trace the messages as they go through and so on. There are a bunch of questions on areas I dont directly work on, and I am trying to get answers to them as I go and also educating myself on them. I am also lined up to give a few presentations and demos on Indigo, gave the first one yesterday and it went pretty well. It was very interactive and we had some good discussions on SOA and Indigo's feature set itself.
The program has been a good learning experience for me and I am glad I have another week to go. I wish they made this compulsary for every employee after shipping a product!