Stephen Ibaraki, I.S.P., recently held an
exclusive interview with Ilya Bukshteyn, Group Program Manager, Developer
Platform and Evangelism Division at Microsoft Corp.

Ilya manages a team responsible for enterprise early adoption of Microsoft
developer technologies, as well as products generally available, and
specifically all of the technologies around the .NET Framework and Visual
Studio .NET. He works with corporate customers around the world, assisting
them in their efforts at using pre-release versions of Microsoft’s developer
technologies to meet their business needs.

****
Discussion:
Q: Welcome Ilya and thank you for being here. And thank you for agreeing to
this interview and sharing your experiences, wisdom, and vast skills with our
audience.

You are widely regarded as a star within Microsoft—a highly talented senior
manager. What are your three top tips for effective leadership?

A: Great question; I believe leadership falls into a few different
categories:

People leadership:
At Microsoft we have really focused on managerial skills as a core
competency over the last 4 years. In the past, at many companies, being a
great individual contributor automatically moved you into being a
manager, which may be an area you had no particular background for.

We have very much focused on fostering and developing managerial skills
as a specific skill set separate from other areas. We are really
determined to have great managers at Microsoft, who foster a great
working environment.

To that end, I believe people leadership is all about executing the
"basics" (my term, and probably an over-simplification) of
management very, very well that includes keeping the lines of
communication completely open. For example: do regular one-on-ones with
your team, keep your office door open, make sure everyone on the team
feels free to communicate with you at all times, by email, in person, whatever
it takes.

This also includes clear goal setting. Everyone on the team should
understand your goals as the team leader, your manager’s goals, and how
they, the team members, contribute to these goals.

I like to think of a good team leader as the Indy pace car—you point the
direction, lead the way, remove any obstacles, but otherwise you allow
the team members to figure out the strategy and tactics as needed to do
their jobs.

Of course this is a high level view, and you need to tailor your
management approach to each individual differently, based on their
style, experience level, etc. But I think if you focus on the basics of
communication, goal setting, removing roadblocks, and otherwise allowing
people to excel, you can be successful as a manager.

Thought leadership:
As far as thought leadership, I believe everyone at Microsoft is focused
on creating intellectual property.

As a leader, managers need to not only harness the efforts of the team,
but also provide leadership in terms of the strategic and creative
thinking focused on the most difficult challenges facing Microsoft.

So, as a manager, I believe that it is important for me to regularly
dedicate time to think about the challenges our customers are facing,
and how our technologies and my team is helping to address those
challenges.

It's a different mindset from the day-to-day activities of management,
and it's a difficult shift in perspective sometimes, but I strongly
believe that every leader should take the time to think about the big
picture on a regular basis.

Customer focus:
As leaders in the company, I believe every manager should set the
standard for customer focus and customer empathy.

We need to constantly think about the issues our customers are facing,
how we can solve these problems, and how we can then move beyond that
and help our customers realize new business value, and grow their
businesses even in these tough economic conditions.

It's very easy to get focused on feature sets, or the regular tasks of
producing a product or managing a team, but as leaders we need to ensure
that everyone on the team is constantly putting themselves into the
customers’ shoes, so to speak. I think it's especially key for those of
us who work with customers on a regular basis, as I am privileged to do
in my current job, to be the customer’s champion in the organization,
and to regularly bring the customer perspective into the product
development cycle—to be the voice of the customer so to speak. I truly
believe that this is another key aspect of leadership.

Q: What are your one, three and five year goals?

A: For the next year, my goals are really all around fostering the broad
adoption of .NET developer technologies in the marketplace.

I am lucky enough to see first hand the benefits customers can get, by
adopting the .NET Framework and Visual Studio .NET. For example, building XML
Web services to connect their internal systems as well as their business
partners and customers, and leverage our new technologies to start building
new smart client applications, which utilize the power of the desktop, both
in Windows and Office, to provide a dramatically better user experience than
what can be had today with web applications.

The customers we work with are improving their developer productivity by 50%
or more, accelerating their time to market by years in some cases, reducing
their cost of doing business by a third or more, and expanding their business
even in today's economy.

Seeing all this first hand, I get very passionate about wanting to help all
of our customers experience our .NET technologies and these benefits.

So my next year is all about working to document the benefits our customers
are seeing, and working with our field technical sales organization to
showcase this to the rest of the world.

We are very excited about our upcoming products, specifically Windows .NET
Server 2003, which will be the best environment for hosting and operating
Windows, web, and .NET application and XML Web services, and the next release
of Visual Studio .NET, which will deliver a fantastic experience for mobile
device developers as well as other enhancements.

We are going to be launching those products in CY03, so we're busy today
working with early adopters of those products and documenting their experiences.

As for 3-5 years, that is a very interesting picture...

You may have heard that we are working on 2 major waves of software
innovation.

The first wave is focused on the next release of our SQL Server technology
code-named "Yukon." This will be a very significant release of SQL
Server, and a foundation for the next versions of many of our other servers
and products.

We are working on a release of Visual Studio timed to coincide with the
release of Yukon. This version will deliver some fantastic new RAD
capabilities, as well as supporting a truly revolutionary way of doing
database development since SQL Server Yukon will host the .NET Framework.
Developers will be able to do database development from inside Visual Studio
.NET, in any .NET language, including Visual Basic .NET, Visual C# .NET, etc.

Beyond that, we are working on a major new version of Windows, code named
"Longhorn". Longhorn will deliver significant new functionality to
pretty much every type of user, including developers. We are of course
working on a version of Visual Studio for Longhorn, and that work, looks to
be incredibly exciting.

Q: What are you finding in your early adopters program are the three top
traps or pitfalls that developers should be wary of and avoid?

A: First I'd say that developers’ need to closely examine their architectural
decisions for doing Web applications. In many instances, we found that
developers decided to build something as a Web app simply because they
thought a Windows application would be too difficult to deploy, manage, etc.
However, they found that trying to do their app as a Web app was like trying
to force a square peg into a round hole, especially if they were using Java.

With Java most developers have found that client side development is just too
difficult, and doing great Web UI involves a horrendous amount of work with
controls, JSP, etc.

With .NET, we've addressed this problem in two ways: with ASP.NET, the
developer can now do great Web apps much easier than they could in the past,
but perhaps even more importantly, with Windows Forms, the developer can get
the best of the Web and Windows. They can build smart client applications
with rich user interface feel and logic, and they can deploy and manage those
apps with the ease of web apps with our ‘No Touch’ deployment system.

So, that's one issue—developers should re-visit their decisions around web or
windows apps.

Another is around design for XML Web services. Many times developers today
are thinking of XML and XML Web services as an afterthought. I'll build my
application first and then figure out how to get it to talk XML and/or SOAP.

I would recommend that the idea of XML Web services as an integration fabric
be at the forefront of the design. The great thing about Visual Studio .NET
is that every application can essentially be exposed as an XML Web service
with little or no additional code. So if you do a good job of loosely coupled
design on your application components, you can use Visual Studio .NET to then
allow you to integrate these components to other systems, potentially other
platforms, for "free"! So, I guess the message is use XML Web
services today!

Last, but certainly not least, I would urge developers to think about
extending their applications to support mobile devices. We found that many
developers also thought of this as an afterthought or a "Nice to
have."

I would recommend that developers take a look at what we offer for mobile
development with the ASP.NET mobile controls, for mobile Web apps where the
code is on the server, and the .NET Compact Framework for mobile smart client
applications, where the code is on the device.

The advantage in these technologies comes from the fact that they offer the
exact same programming model as the .NET Framework on the full-size client
and/or server, so you can take the exact same developer skills and knowledge,
and often the same server and client code, and apply that directly to mobile
device development.

We've seen several customers who have finished their project early, due to
the productivity increases they saw with Visual Studio .NET, and then decided
to extend their applications to mobile devices with the time they had left
over. These customers find that they can create amazing mobile device
applications with very little effort, by leveraging the code they had already
built on the .NET Framework and the skills and environment their developers
were already accustomed to.

So, I would urge developers to consider more than just the regular PC client,
and think about the power and opportunity of devices like the Pocket PC,
Pocket PC Phone Edition, our new SmartPhone, etc....

It's often by leveraging the .NET Compact Framework on devices such as these
that businesses can find new revenue streams, and grow their business.

Q: If you were doing this interview, what ‘one’ question would you ask of
someone in your position and what would be your answer?

A: I would say "What do you see as the next major wave, the next major
'disruptive technology' or killer app, to come out of our industry?"

And for the answer here, I really want to say that this is my personal
opinion rather than Microsoft’s direction. But I think that the PC at the
center of the "connected home" is really going to have tremendous
implications for the average consumer.

In my house, I have multiple PC's, several personal digital video recorders
for my TV's, a wired and wireless network, and lots of other devices that
really cry out to be connected together. So, I believe that we will shortly,
in the next 3-5 years, get to a point where we will routinely have home
servers act as hubs, with audio, video, networking, and other capabilities go
through those servers and then be projected out to connected devices such as
TV's, stereos, picture frames, phones, etc.

I think we are seeing the infancy of this today, but the potential is really
huge—the potential to change the way people watch TV, interact over the
phone, look at their picture albums, communicate with friends and family,
that's really some remarkable potential for change in society. And I believe
the PC and software will be at the heart of realizing that potential.

Q: Can you spend some time detailing your history that eventually took you
into computing, and finally to Redmond and your current position at
Microsoft?

A: I've been fascinated with computers from a pretty early age, probably due
to both my parents having technology related careers.

I became the 3rd employee of this startup, then known as TransGas Management
Inc., which later changed to TransEnergy Software.

At TransGas, I was the lead developer on our first commercial offering, a
PowerBuilder- based client-server energy management application for the newly
deregulated energy market. I quickly moved from pure development into sales
and marketing as the President of the company and I hit the road to try to
sell our product. I became the "technical sales guy" to his
"business sales guy" persona.

I was at TransGas, and I was running our partner efforts as well as customer
implementations. As part of that, I ended up working quite closely with the
local Microsoft office as TransGas joined the new Microsoft Solution Provider
program. After ~2 years with TransGas, we had grown to about 50 people

I approached the local Microsoft office, specifically the partner manager at
the time whom I had gotten to know quite well, and asked him about
opportunities. Microsoft's office in Vancouver had about 7 sales people.

The time frame was Sept. '94 and after several days of interviewing, in
Vancouver and Mississauga, Ontario, I was hired to be the first MCS person in
the Vancouver office, focused on a "Traffic System" project—traffic
is the industry term for the system which does everything around advertising
such as sales, scheduling, tracking, etc.

After approximately 3 years in MCS, we hit a period of 6 months when my
manager, the Managing Consultant for Vancouver, ended up moving to a
different office. I ended up functioning as an acting lead for MCS in
Vancouver for almost 6 months as we went without a managing consultant, and I
focused very much on business development—evangelizing customers on our
technologies to help form a funnel for our services business.

After focusing on business development for a few months, I decided that I was
enjoying the pre-sales activities more than the post-sales execution. So, I
made the move to technical sales and became what we, at the time, called a
Senior Systems Engineer (SE), later renamed to Senior Technology Specialist
(TS). I was responsible for our Enterprise accounts in BC, specifically the
BC Government and BC Tel (now Telus).

I was then hired to move to Redmond and create what would become the MSDN
Field Content Team. Since this was a new team, I focused on working with our
customers to figure out the specific technical content they were most
interested in hearing, working with our world-wide field technical sales
people to understand what content they wanted to see delivered to them, and
working with our Redmond product groups to understand what information they
wanted to get out to our customers.

Over the next 2 years I built a team of 6 people to address these needs, and
form a process whereby we were delivering a set of content every quarter, and
enabling our field technical sales folks to deliver at least 10 unique
sessions of MSDN developer content to their local customers every quarter.

After the process of establishing the team was complete, approximately 2
years ago, I moved on to the role I hold today, driving the enterprise early
adoption of our .NET developer technologies.