Moving On…

It’s not the biggest job change news this week (or the day), but after three years on Architecture Strategy and six years total as an evangelist, I’m moving on to a new role. After six years, I decided it was time for me to put my money where my mouth is as well as get my hands dirty building something more substantial than buzz.

I’ll be moving over into Microsoft’s IT division as a member of the Integration Center of Excellence Architecture Team. Integration, as you might guess, is a euphemism here for service-orientation. My team is tasked with architecting and delivering the shared service-oriented infrastructure for four of the biggest projects Microsoft IT will be delivering in the next year. Last time I changed jobs, I lamented that “With each job I take at MSFT, coding seems to become less a part of the job description.” Happily, this is NOT the case this time.

About a year ago, Microsoft hired Stuart Scott to run the business apps side of IT as one of our two CIOs (our other CIO Ron Markezich oversees the IT infrastructure). Stuart was kind enough to spend about an hour with me last week explaining his vision for how he sees MSIT evolving under his leadership. Here’s what he said in a recent interview:

PressPass: How do you see Microsoft IT evolving?

Scott: There is a broader role for IT to play at the front end of the development of products and services. Our IT organization knows a lot about the challenges that other IT organizations face because we build and maintain the IT backbone of a massive worldwide enterprise. IT must become future-thought leaders in the development of the product roadmap for our enterprise products.

By using our internal applications and experiences to build better products for our enterprise customers, we have the potential to solve the challenges that other IT organizations face. We’re heavily involved in dogfooding our products once they’ve been developed, but we also see a role closer to the front end of the product development cycle. Business Intelligence is one area where we will be partnering with the product groups and Finance as we build out our internal capability. I want to ensure that any product we develop to meet the needs of Microsoft, also meets the needs of the marketplace.

He was also very frank about the current state of affairs in MSIT relative to the vision. He was quoted in China Information World (no link, sorry) as saying that “The systems Microsoft now uses are already 14 years old and based on previous versions of windows, so from a systems capability perspective, they cannot support the needs of the growing business.”

All in all, I was pretty impressed with what he’s setting out to do and the opportunity not only from a business perspective from from an industry perspective as well. Hence the whole “going to work in his division” thing. Of course, “Thought Leadership” is one of the things Architecture Strategy works on very diligently, so in some ways this isn’t as big a change as it might be. On the other hand, giving advice to people solving hard problems is a lot different than solving those hard problems yourself.

I’ll be starting this new role pretty much immediately, so expect the less-than-usual blogging to continue for the time being. But my external visibility on my blog and presenting at conferences and executive briefings is one of the things they hired me for. So after I get my bearings things should be back to normal. At that point, I’ll hopefully be able to talk in more specific terms about what we’re tackling on my new team. I hope to shake things up quite a bit over there and deliver the play by play here on my blog.

Massive thanks to John deVadoss and the rest of the Architecture Strategy Team. Back when I started, I think Simon Guest was the only other blogger on the team. Now there are only three non-bloggers on the whole team. It’s been a great three years and I’ve been a part of so many great accomplishments:

I always joke that if I ever left Microsoft, I wouldn’t want to go work for another technical company. Now, I get the chance to go affect the business of a Fortune 50 business while not having to leave Microsoft. Pretty sweet.

See you on the other side.

Number One Sydney Picture on Windows Live and Google

I typically don’t search Technorati for incoming links because a significant number of the links to my blog come from my inclusion on dasBlog’s default blogroll. For example, “Dutch Railways Suck” doesn’t appear to have anything to do with architecture, development or hockey, but they still link to me. However, in checking out Technorati today, I discovered several blogs were linking to me that were out of the ordinary to say the least. Turns out that this picture I took on my trip to Australia two years ago is the number one result when searching both Windows Live Image Search and Google Image Search.

I’m guessing that’s why this picture shows up on the blog of woman trying to reverse the trends of feminism, a guy who despises Sydney, a couple of french blogs that I can’t read and two german blogs – one I can’t read and one that I can.

June DSL CTP

Congrats to the team for their latest version of the DSL Toolkit, integrated into the June CTP of the VS SDK. According to the published product plans of the VS SDK, they’re suppoesd to ship their next release – including the final DSL toolkit – next month. Looking forward to it.

Thinking About Object Models

I’m doing some experiments with Amazon’s S3 Service. Very cool service, I might add. Anyway, the sample C# REST code basically wraps the network requests with a single connection class that has individual methods for each type of service interaction (list all my buckets, list all objects in a bucket, create a bucket, create an object, you get the idea).

However, S3′s service is a natural hierarchy. The Service contains many Buckets, which in turn contain many Objects. So another way to wrap the service interaction is with a series of objects that are related to one another and only implement the service interactions relevant to that class. (Service would implement List My Buckets and perhaps Create Bucket. Bucket would implement List Objects and Delete Bucket. Again, you get the idea.)

For an interface as relatively simple as S3 (the SOAP interface has a grand total of 13 operations) it probably doesn’t matter one way or the other. Furthermore, it’s probably a question of personal preference. My question: What’s your personal preference? A single object with many methods or a hierarchy of objects each with fewer methods?

Enterprise 2.0 ARCast

Ron just posted his latest ARCast featuring yours truly talking about Enterprise 2.0. Some of the same stuff I blogged about last month, but in a conversational style. Check it out.