Attention software development teams… find out who your DSS is!
Well, after years of no blogging, I'm excited to be in a new role here at Microsoft that will give me plenty of opportunities to be involved in the community again, both blogging and with our local user groups. I'm now a Developer Solution Specialist -- or ‘DSS' as we're called internally -- and basically our charter is to sell application development tools (buy Visual Studio now!). I specifically work with customers in our Enterprise segment in the Southeast US, mostly Florida and Alabama.
However the role of the DSS is much more sophisticated than simply espousing how great new features of Visual Studio 2010 are, such as Control-Comma, and then taking everyone's order. As any software engineer who has lived through the Dot-Com explosion will tell you: today's software engineering team is very different from back then. Gone are the romantic days of the wild west where software was almost pure Art. Yes, there is still a lot of Art in software engineering, but the difference is that back then the bar was pretty low - if the software was brilliant, then the Business benefited; but if it wasn't, well, pretty much that meant Business-as-usual because no one was using the new software yet anyway, so a slip of a year or two wouldn't really matter in the big picture.
That was then. Today's software engineering teams are different in two fundamental ways: (1) they are critical to the business. If the software engineering team promises a certain set of functionality by a certain deployment date, and they don't deliver or worse they deliver sub-quality results, then business plans are severely disrupted and heads roll. And (2) they are way leaner. Not too long ago the typical software development project was 2-3 years long with a team size of 30-50 people total. Today you are lucky to work on a project that has a 6 month-out promise date; more typical is 2-3 months. And the span of responsibility of any one person on the team is orders of magnitude larger.
It is this problem that your Developer Solution Specialist (DSS) is focused on: how to deal with the opposing forces of the Business (fewer resources, shorter schedule, lower risks, fewer defects) and the Art+Science that is software engineering (more expectations, more innovation, more dependencies on frameworks or technologies, more performance). This is not a simple problem. It forces a holistic assessment of not just Technology but People and Processes -- the entire Application Lifecycle Management. Your friendly neighborhood DSS has a wealth of resources to help here. Get them engaged with your company - your success means their success - so it's a win-win partnership that I encourage you to leverage.
Contact your Microsoft account team and they can put you in touch with your DSS. Oh ... and go buy Visual Studio. :-)