Wednesday, April 18, 2007

How I spent the week of April 15, 2007

April 9-15, 2007

Monday

This Monday was a more normal Monday for me with no training or other events plan. I was able to spend most of the day in 1:1's with my manager and my direct reports. It was been quite a few weeks since I have had a chance to meet with everyone, as I was in Redmond, then in training.

I am just in the process of completing Mid-Year Career Discussions (MYCD) with my team and my manager. This is a process that we use at Microsoft to provide some formal structure around career development. Unlike the annual review process which is in the summer and is more about reviewing employee performance, the MYCD process is more about employee career development.

This year HR has introduced a new process and a new set of tools that introduce a lot of new structure around this process. If you follow any of the external Microsoft blogs you will know that many people are unhappy with the new MYCD process and added bureaucracy. Personally I think that it is helpful, mainly for people that are either new to the software industry or new to Microsoft. For me and for most of our group (Search Technology Center) that is pretty much everyone.

10-11am - Met with my manager for my MYCD. Had a good talk about future opportunities and the impact of recent Live Search re-orgs on STC and my role. We didn't spend much time on performance feedback and will need to schedule some additional time to work on that.

11-3pm - Had 1:1 meetings with my direct reports, since for most people we have just recently had MYCD and I have been away from the office for many weeks we spent a major of the time talking about project status, next steps, blocking issues, etc.

In the middle of this time I had a phone interview with an intern candidate. I am trying to hire 1 or 2 intern(s) that will work on a project I am collaborating with Microsoft Research Asia (MSR-A) on. So if you know anyone that is interested in query classification/clustering and web-page classification. I will try and talk more about this project in a future blog posting.

3-4pm – Every other week the whole management team of the group I work on (Search Technology Center) meets to talk about organizational issues, HR, corporate policy roll-out, strategy discussions, future planning, etc. This week we spent most of the time talking about the recent re-org in the Live Search organization, which has recently merged with the Advertising group to form the new Search & Advertising Platform group, lead by Satya Nadella with the help of Harry Shum as Chief Scientist. Harry is currently the Managing Director of Microsoft Research Asia, which is the parent organization of STC.

4-5pm – 1:1 with direct report.

5-6pm – PM Interview.

Tuesday

8-8pm – I was at a MSR-A Management Offsite in Beijing all day. We spent a fair amount of time talking about general lab management issues; Human Resources (HR), Public Relations (PR) and University Relations (UR), as well as talking about how Harry's new role in the Search & Advertising Platform group will affect the MSR-A lab.

In addition to these more administrative issues there were many lively debates and discussions around training/on boarding of new college hires, how to better share/leverage the computing infrastructure we have in MSR-A and the longer term view of where Internet search is going. I participated in the working group that was looking at on boarding/training for new college hires. This is a topic that I am particularly passionate about, so I want to share a few of my thoughts in this area.

Last year when we brought on a large number of college hire to the STC team we ran two intensive training programs, I think these were about three weeks in length. We intend to do something similar this year with the next batch of college hires. Anecdotally I have heard that Google China sends all new hires to Mountain View, California for a few months of training before they start in the Beijing office. I don't know if this is true, or exactly how long they go for training, but I would be interested in hearing if you know.

In STC we have made a very conscious choice to not grow very much during this year, in order to stabilize and mature our foundation, so that we are in a position to grow the team in the future. Often when groups grow too fast and too early you find that long term they are not very stable. They lowered the hiring bar bringing in people that aren't strong enough or experience enough. Or they promote people to a level that is new to them, this is often done across the organization, so you end up with a Dev. Manager that used to be a lead, and a Test Manager that used to be a lead and a GPM that used to be a lead, all in new roles. This is usually not a very good strategy, as these people are often learning a new domain, learning a new role and building a new team. This is a challenge that most people cannot be successful at. When taking on a new position you should always try and minimize the amount of change. For instance if you are going to work in a new country, you should probably work in position and domain that you are already very comfortable in.

I think this strategy of growing slower at the beginning will long term allow us to grow faster and stronger. However, I think that we haven't gone far enough in terms of initial training and on boarding of new college hires. My proposal is that all new college hires spend roughly three months when they first join in "training", and two months the second year and finally one month the third year. We should think of this three year indoctrination as a sort of apprenticeship program.

The purpose of this is to provide a framework that will transition new hires from a structured learning environment into an unstructured learning environment. And prepare them to be successful engineers, researchers or program managers. This first three month program will set the foundation for people to understand how to get things done at Microsoft, how to be a successful engineer at Microsoft and how to be a life-long learning. It will also stress the soft-skills necessary to be successful and a future leader at Microsoft and in any company.

If you compare successful group versus unsuccessful groups and successful engineers versus unsuccessful engineers you will often find the major difference is in the soft-skills. Things like communication skills, cross-group collaboration, planning and priorization, conflict resolution, etc. Certainly when you get to the level of lead, manager and high these skills also exclusively differentiate the best people from the average. You have to remember we aren't talking about what differentiates the best form the worst. We don't hire the worst. Obviously there are many things like raw intellectual horsepower, analytical thinking, problem solving, etc that play an important role in differentiating good from bad. At Microsoft we have a recruiting system that screens for only above average candidates, so we are really focused on going from good to great.

My theory is that this first three months should be a very experiential learning environment, last week I talked a lot about the theory and benefits of experiential learning. This would provide a great learning environment for people to really practice they skills they were learning, allow them to understand their personal learning style and more easily transition from this "training" into the real project work they were hired for.

Wednesday

9-10am phone interview with a International PM candidate.

10-11am – 1:1 with one of the STC dev leads to learn more about his project work, understand how we can work better together and talk more about the long term plans for STC and Search in China. I decided to schedule monthly 1:1 with all of the engineering leads, as I found we only talk when there are urgent project related issues and I wanted an opportunity to spend more time with them understanding how to strengthen the partnership between PM and engineering, explore the future plans for STC around their area and just better understand what they are working on and are passionate about. This was my first meeting of this type and I think it was very usefully, I got to learn a lot about the challenges this dev lead was facing and where he thought we should be going.

If you are outside of STC and are reading this (I know that is probably a little too hopeful on my part!) you will notice I generally use the term engineering not dev/test. In STC we have been experimenting with a slightly different model for organizing our team. We have a dev manager (John Liu) and a test manager (Peter Zeng) and dev leads and test leads. This part is pretty standard for most Microsoft product groups. Below that we mostly have what we have been calling engineers, these are people that are working on both dev and test activities for a specific project. We believe that this model allows us to do better resource allocation, enable people to learn more about the end-to-end engineering process and produces significantly better engineers. As people progress in their career we would expect some to specialize across domains (server, front-end, etc.) and some to specialize across disciplines (test, dev). But early on we expect all engineers to be proficient at most dev and test activities.

11-1pm – caught up on email and had lunch. Spent a little time preparing for my next meeting.

2-4pm – Offsite meeting with China Telecom to review progress on our search syndication partnership. Last year we signed a major partnership between China Telecom and Microsoft, in which we provide syndicated search results from Live Search to China Telecom's portal and to their ISP customers. China Telecom is the largest ISP in china, and we are very excited to have this opportunity to work closely with them on Internet Search.

Thursday

12-1am We were making some operational improvements to our Live Search site and rolled those changes out at mid-night, so around 12:30am we had a conference call to review the progress and decide on next steps. Unfortunately we ran into a few technical glitches and needed to roll back.

10-11am – One of my goals in coming to China was to help move the PM discipline forward across the development organization in China. My strategy was to start by focusing on building a world-class STC PM organization. I think we are starting to make great progress on that front, and compared to where we were a year ago when I joined STC we have come a long ways. Second I wanted to focus across China Research & Development (CRD) and hopefully leverage the learning from the STC PM team to have a broader impact.

I truly believe that the biggest obstacle to growth in China (and probably other areas as well) is the ability to hire and/or grow senior Program Managers. If you look at the most successful remote development organizations, I think you will find a strong PM team. Even if you look at the strongest development groups in Redmond you will usually find strong PM teams.

I wanted to start this process of looking broader by meeting with and understanding the challenges my peers in China are having. I recently created China Program Manager and China Lead Program Manager aliases in order to begin facilitating communication amongst the PM located in China. We had a kick-off meeting with a number of the leads in China and started working on a framework for moving the PM discipline forward. Initially we are going to focus in three broad areas; "development", "recruiting" and "retention".

11-12pm – email

12-1pm – Met with recruiting to review the needs of the STC PM team. In case you are interested or know anyone that is I am currently looking for a Senior Product Planner to help drive our strategy/roadmap for Search in China, a Network PM to work on the Autopilot project (autopilot is a set of operational infrastructure and software we use to manage our Search data centers) and a Feature PM for the Search in China project.

1-2pm – email, prep for STC all-hands meeting

2-3pm – STC all-hands meeting

3-5pm – email, project related discussions

5-6pm – Met with Search in China team to determine machine allocation for next fiscal year.

10:30pm – conference-call to review status of go-live, unlikely last night everything went well and we rolled out the new changes. Go team!

Friday

9-10am – conference call with Redmond about a new partner we are engaging with in China.

10-11am – meeting to review the launch from last night

11-12pm – we had a round of project reviews in Redmond a few weeks ago, I met with the feature team to review the feedback and make sure we were all on the same page in terms of next steps.

12-1pm – conference call to plan for a visit from a delegation from Vietnam, I was asked to host a discuss with them about some of our initiatives in China

1-2:30pm – email (unfortunately I don't really do much other then go to meetings and do email, I should but I don't seem to find the time. I have two emails I want to write; one on the long-term strategy/goals for STC and one on my general thoughts on Internet Search for Harry. I have notes for both, but never seem to get the time to write the emails. Hopefully next week I can find the time).

2:30-3pm – met with my manager about recruiting priorities for STC PM team

3-5pm – email and project discussions







Labels:

Sunday, April 08, 2007

How I spent the week of April 8th, 2007

In a recent 1:1 (at Microsoft that is what we call meetings with only two people, usually between a manager and his staff) I was asked about how I spend my time. It got me thinking that many people, at work, my family and friends often have asked the same question. What exactly is it that you do? Some with more skepticism in their voice than others. Once you move from writing code (which people don't necessarily understand but will except as a legitimate job) to things more esoteric (like cross-group collaboration, vision setting, strategy development, etc) it gets incrementally harder to explain to people around you want exactly you do, and eventually you just give up and say I develop software. Or as my wife likes to say, I draw circle and boxes and connect them with sometime straight and sometimes curvy lines.

While for all of those that care I will try the following experiment. For the next 6 months I will add one blog post per week that is a summary of how I spent my time the previous week. Since this is an external blog I will need, on occasion, to make some of the activities more opaque than you might like, this isn't an effort to hide how I spent my time, just necessary to preserve Microsoft confidential information.

I don't get many comments on my blog. In fact I don't think I have ever received a single comment. Which makes this more of a diary than a true blog. Anyways I will judge the value of this over the next 6 months based on the feedback I receive, so if you find this interesting please let me know.

April 1-8, 2007

Monday

Normally on Mondays I have 1:1's with most of the Program Managers (PMs) on my team, these meetings are an opportunity for me to get an update on how things are going on all of the projects we are working on, provide help/coaching on any problems my directs are having and to talk about any other issues they may be having. In general I try and have a 1:1 with each of my direct reports on a weekly basis (but with travel and other emergencies I probably only have about 3 per month). I like to have a 50/50 mix of project and career development discussion in these meetings. This isn't to say that each meeting is exactly a 50/50 mix, more likely one meeting will be almost exclusively about project issues and others will almost exclusively be about career development/personal issues.

I had a 4 day long training event this week, which I thought started on Monday, so I cleared my calendar last month in preparation, it turns out the training actually didn't start until Tuesday, so I ended up with a pretty light Monday. Here is how I spent my time:

10-11 am - getting feedback from the current manager of a PM I am thinking about interviewing, I find that I spend probably 10% of my time on recruiting. For internally transfers I almost always talk to the persons current manager before committing to a full interview loop. Interview loops are pretty expensive (in terms of time) at Microsoft. The average candidate will go through about 5-6 full interviews, each person will spend one hour in the interview and probably around 30-45 additional minutes in prep work and providing feedback. In addition I spent probably 3 hours, including sending out interview guidance, preparing the interview list, preparing for my interview, reading interview feedback, etc. Add to that an additional 3-4 hours for HR/recruiting and we probably invest about 15 hours in a full interview loop.

11-12 pm - we are working on a demo for a potential customer in China for mobile search. Our group is working on porting technology we have in the US to work properly in Chinese. This meeting was a review of the User Interface (UI) for that demo. The output of this meeting was a list of changes to the UI. I rarely get involved at this level on many projects, however this demo is the first time we have really worked on mobile search, so I wanted a chance to influence the approach we took and ensure I was happy with the demo. During a recent trip to Redmond I made a commitment to get our team in China to help with the demo, so I felt it was necessary to stay involved with this project until we get some good momentum.

12-1pm - had lunch in my office and worked through emails. I probably eat downstairs in the Chinese restaurant about 3-4 times per week, but many of the people on my team that I usually eat with were not in the office, so I ended up just cooking some noodles and having a power bar.

1-2pm - I was in Redmond reviewing with our partners our plans for the next 6-9 months. This meeting was our first chance once we were back to review the feedback from the reviews and make sure we had owners assigned to each item and generally agreed what needed to be down. This involved the dev leads, test leads and PM from this project. This is the normal group of people I would meet with for project specific discussions.

Since I don't want to reveal too much about what we are working on specifically I will for the rest of these blog postings refer to the projects as follows:

Project A
Project C1
Project C2
Project D
Project S

This particular meeting was to review the feedback for Project C1/C2. The UI review I mentioned earlier is for Project C2.

2-3pm - One of my directs recognized that I was actually still in the office and quickly reschedule her 1:1.

3-4pm - worked on emails.

4pm - I went home early today as I was going to be at an off site training course until Friday and had only just returned from 10 days in the US, so I wanted to spend some time with my family before I left.

Tuesday - Friday

I was at a course call Management Excellence Foundation Event. This is an experiential training event focusing on management and leadership. For more information on experiential training you can go here. I'm sure there is a better description on wikipedia, but I am at home and in China you can't access wikipedia.org, so I can't find it right now.

I have attended a number of these times of training events in the past. And was reasonably prepared for the week. Basically the instructors spend a brief amount of time talking with you about some core skills, then create a fake work environment (some people are leaders, some people are managers and some people are workers), usually you rotate through these positions, other times you are stuck for the whole event with what you get, then they introduce some project work that the new teams need to accomplish and let you go.

During the event there is very little interaction with the facilitators. Their job is to make suggestions, provide feedback and coaching, but pretty much stay out of the way, no matter how hard you beg. And trust me I have seen some people beg pretty hard.

This type of training can be very powerful. I have usually walked away from these course with some powerful insights into myself and how I impact the systems around me.

These types of events are usually either tightly or loosely based on the work of Barry Oshry, although maybe there are others in this domain that are equally impactful. Most of the reading I have done is based on his work. You can read more on him and his work on power & systems here.

These events are always unique, as the participants are always different and the event is largely based on the system created by the participants. This event was particularly unique as almost all of the participants were of Chinese heritage and cultural background. In generally the most insightful moments at these events are caused by the pressure the system creates, under pressure people tend to break down and their unmasked self emerges, when you have this happen on a widespread basis you get a lot of friction and interpersonal conflict. This creates tremendous personal learning opportunities and challenges even the most seasoned managers and leaders.

An important part of these events is constant feedback. Unlikely in the workplace, were feedback is rare and often very guarded, you tend to find the feedback much more open and direct, and nearly constant. As that is the design of the course.

The pressure created by the system, the constant open/direct feedback and the complete lack of structure usually causes at least one person to break down in tears and one person to storm off in rage during the first 4-8 hours. I have been four times to these types of experiential learning events, this has happened during three of the events.

During the event in China this did not happen. I think this is primarily a culture artifact and for me I think it really limited the opportunities to learn and grown, for myself and for others.

The most complete version of this type of training is offered by Barry's company Power + Systems, they have a one week version where they essentially lock you in a fake town with nothing but the clothes on your back and a role as a leader, manager or worker. Below are some excerpts from a video they created from one of these events:

"Power Lab, Living in New Hope" Video 1
"Power Lab, Living in New Hope" Video 2

Well worth watching. I am hoping on attending this event at some point in my career. I have a copy of the full video and will plan on showing it at Sigma (that is the building I work at in Beijing) at some point in the near future.

In the past I have learnt a lot about how my style (communication, management and interaction) effects others. Over the years this has enabled me to make a lot of progress towards creating an environment that is more conducive to positive collaboration, higher morale and to building long term partnerships. In this event I re-learnt the importance that climate/morale play on group productivity and how people feel about an organization. Also about the positive effects diversity can have on climate.

In addition in this particular event there was a lot of focus on group identify and the power of shared vision. These are things I have understood and tried to practice, but as of late haven't been very focused on. It is easy for all of us to get very focused on managing the present, and forgetting the longer term work of creating a positive climate, creating and nurturing identify and helping the team to define a shared vision.

I hope I will be able to take many things that I learnt at this event and apply them to my everyday work.

Labels: