5 Tips for Being Successful at Microsoft

Friday marked my 5th anniversary at Microsoft!  In those 5 years I’ve had the opportunity to have three distinct careers.  I spent 1.5 years as an individual Developer in Test, 2 years as a Dev in Test Lead, and the last 1.5 years as a Program Manager.  All very different jobs working within the same organization.

I’d like to think I’ve learned a few things in the last five years so I decided to write down five tips to getting things done at Microsoft.  These might not be everyone’s top five tips and I can’t say I’ve always lived by them in the past, but hindsight is 20/20 they say. This is simply what came to mind this morning when I was reflecting on the subject preparing to mentor a new hire on our team.  Welcome aboard Joe!

1. Remember to ignore your e-mail.

We love e-mail here. If you are successful then you’ll get copied on more an more mails over time because you own something important or your opinions are well respected.  Its good to be respected, but if you don’t watch out you could spend hours each day reading and replying to e-mails. You’ll quickly discover that you have turned into a modern day paper pusher without any time to accomplish anything worthwhile. 

I’ve tried several schemes designed to reduce “inbox clutter”, but there is one common theme between them all and the theme is that you have to be able to ignore your e-mail from time to time.  I personally rely on outlook as my information repository, but I work with it during the day in “offline” mode so I don’t get distracted by new mails.  I keep e-mail hours from 8-10 and 4-5 every day. 

Even when I have outlook “online” I make sure that all its little icons, noises, and toast notifications are switched off.  Don’t become a slave to outlook.  You’ll be amazed to find out that several threads resolve themselves without your input just fine and that the “urgent” requests where not really that urgent… if they were then they would have hoofed it to your office. 

2. Manage your manager.

In five years I’ve had three different managers and I’ve been a manager to boot.  Your career is in your own hands and your manager is there to help, but they will be MUCH more effective at helping you if you give them regular feedback. 

How do you like to be recognized/rewarded?  Maybe free espresso isn’t your cup of tea.  What do you want to be when you grow up?  Good managers will look for opportunities for you to grow the skills necessary to make that happen.  What sort of work are you good at and you enjoy doing?  Good managers will make sure you spend as much of your time as possible doing the work you enjoy.  What changes in process/tools/design do you and your team need to be more successful?  Make sure your manager knows this.  What do you believe are your key strengths?  Do you get to leverage them regularly?  Do you know what success in your role/projects looks like?  Are you enjoying the work you do?

Good managers will ask these questions often and make sure they get this information from you, but you can’t count on every manager to listen as effectivly… so you have to speak up and make sure your manager knows how you’d like to be managed.  Part of managing your manager may involve having conversations with your managers manager on a regular basis.  Let them know how your manager could be improving if you are uncomfortable bringing up these things with your manager.  This isn’t being a tattle-tale… this is making sure you are looking out for the best interests of your career if you don’t believe your manager is capable of helping you or making sure you are set up to be successful. 

3. Ignore artificial boundaries

Discipline boundaries should be mostly ignored.  You may be a developer, but do you know what the test team is doing with your code?  You may be a tester, but do you know what the product code looks like?  If you’re a program manager are you capable of running a product test suite on your machine or writing some of the product code yourself? 

How can you effectively work with the rest of your team if you don’t know what it takes for your team mates to be successful, what they are goaled on, and what its like to be them?  You don’t have to be the best tester if you are a developer, but you should be able to get your hands dirty testing other people’s code and know how to pitch in when it becomes necessary to help ship the product.

Consider team boundaries irrelevant as well.  If you work at Microsoft you likely have some dependencies on other teams.  What are you doing to make the other team more successful so your customers can benefit?  Read their specs, give them feedback, log bugs against their code, ask for access to the code to their projects, make sure you read their status mails and push back appropriately on decisions they make when it’s important for the success of your customers. 

Remember that you are there to make them more successful so that you can be successful. You should have access to the other teams bug database; you should understand their schedule, goals, and priorities. Is the work you need from them correctly prioritized?  Does the team have other clients? 

You will get pushback when you cross boundaries, but most boundaries are not as important as satisfying your customers with the right product delivered at the right time.  There are always shared goals… if nothing else you always have the stock price in common and a goal of moving it in the right direction. 

4. Do something great that no one asked you to do

Sometimes you’ll look around and realize that no one is going to step up and deliver the thing you or your team needs to be successful for you.  Time to do it yourself.  Turn off your e-mail, open up Visual Studio and start building what you, your team, your customers, and your company needs to be successful because you know you’re right.  There are a ton of examples of projects that started this way at Microsoft, but those are subjects for separate blog posts.  Don’t just get it functional; build yourself a purple cow and get it in front of people. 

5. Talk to customers early and often

Your customers are looking out for your bottom line!  Help them help you.  It sounds strange, but what they need is software that makes them more successful at whatever they are doing.  They want you to build better software because it will help them.  If you build better software you will sell more of it.  It’s a wonderful cycle when it works, but you need to start the conversations and you need to listen. 

Its not someone else’s job to have regular conversations with customers, answer their questions about your software, and make sure that the work you are doing will actually make them more successful… its everyone’s job.  I don’t care if you are working on some top secret project that is so hush hush you can’t talk to other Microsoft employees about… get yourself some top secret customers.  This goes back to point #3.  Cross the boundary and start listening to customers before you write your first line of code or your first test case. 

Bonus Tip #6:  Remember the M&M’s

Nothing like junk food as a good “pick me up” for your team.  Celebrate your anniversaries at Microsoft by making sure to feed your team with healthy amounts of chocolate, Krispy Creams, and M&Ms.  In that spirit… if you are at Microsoft today and near building 41 stop by my office to get your hands on some of the 5+ lbs of oatmeal, peanut butter, and M&M cookies sitting outside.   Enjoy!

Comments (44)

  1. Ramesh Venk says:

    This is a very well written piece. Especially the part about different managers. I guess you should change the title to "5 tips for being successful" !!


  2. Mark Bower says:

    In my time here, i have found your tip #3 easily the most important piece of information to learn early.

  3. Jerome says:

    This is a great post! I am sending this around to everyone I know in MS land. 🙂

  4. InesK says:

    Awesome list, thanks for the tips! It is definitely helpful to newbies at MS like myself 🙂

  5. Excellent list Josh. This basically applies to anyone working in a technical environment.

    I still have some trouble with #2 but I’m always working on it. It never hurts to keep your manager in the loop.

  6. Bruce Lee says:

    These are very nice tips and experences. Thanks for the sharing.

  7. Blair Stilwell says:

    Bringing chocolates to my office regularly was without a doubt a key to my success. All of these points are really great for any organization.

  8. Josh Ledgard provides 5 tips for being successful at Microsoft.

    "1. Remember to ingore your email"…

  9. gaidar says:

    Knowing lots of guys from Microsoft I can suggest you to rename the topic from "5 Tips for Being Succesful at Microsoft" to "5 Tips for Being Good Enought for Work at Microsoft" 🙂

  10. Bill Higgins says:

    Although I don’t work at Microsoft (I work at IBM), I really enjoyed Julie Bick’s book "All I Really Need to Know in Business I Learned at Microsoft". Several items from the list above look familiar.

    The link to this book at Amazon is below:


  11. Matthijs says:

    Nice list, I never thought about it to be honest! (I just started working) Ill definitely try them out :), thanks!

  12. Fernik says:

    Josh, thanks for sharing your experience. I alwars read your entries about development and community. It is good to see someone who thinks in win/win situations and not in win/lose situations like most of the industry. You are a proactive man that is creating a good set of practices that will drive a process of change in Microsoft. Sucesss!!


  13. MSDN Archive says:

    Everyone: Thanks for all the kudos. That is one thing that should have been on the list… if you like something another team does… tell them. 🙂

  14. SR009 says:

    5 Tips for Being Succesful at Microsoft

    Perhaps change Tip #1: Use spellchecking often – and spell "Successful" correctly?

    (from a former "Successful" Microsoft Business Solutions employee….)

    Keep at it Josh..! <g>

  15. &amp;nbsp; As I mentioned earlier, Josh’s 5 tips for being successful at Microsoft got me thinking about…

  16. Josh Ledgard provides 5 tips for being successful at Microsoft.

    &quot;1. Remember to ingore your email&quot;…

  17. &amp;nbsp; As I mentioned earlier, Josh’s 5 tips for being successful at Microsoft got me thinking about…

  18. &amp;nbsp;As I mentioned earlier, Josh’s 5 tips for being successful at Microsoft got me thinking about my…

  19. &amp;nbsp;As I mentioned earlier, Josh’s 5 tips for being successful at Microsoft got me thinking about my…

  20. Rohit says:

    Great post, as an intern at Microsoft I found a lot of this advice really valuable.

  21. Josh Ledgard posts 5 Tips for Being Successful at Microsoft, but I don’t know that they’re unique to MS. They seem like sound career tips for most places (to the extent that one can implement them in one’s corporate culture). Tip 1: Remember to ignore …

  22. saraford says:

    Yeah, you definitely gotta keep those managers in line. =)

    (Josh was my manager at one point, for those of you who don’t get the inside joke)

  23. Frank forwarded this article that Josh Ledgard blogged which is a great bunch of tips from his five (now…

  24. Dave Glover says:

    Great posting Josh!!

    Have been at MS for 12 years, 50:50 manager:individual and 90% of that time I’ve been lucky enough to adored what I do. Lol, but yeah made my mistakes along the way too, painful at times but taught me a lot…

    1) eMail culture in general well abused – cc:ing etc… – I liken the use of email to Pavlo’s dog! But also think it’s also a symptom of the challenges of our review system, considerable individual empowerment (by enlarge a very cool thing) and working with a ton of talented folk.

    2) Agree that understanding others goals/objectives is hugely important to everyone’s success – Would also add understanding their relative importance is critical. Objectives can seem well aligned till you realise it’s a really a very low priority objective for someone and you’ve built a dependency on it.

    3) Less is More: If I could add one more to your list then this would be it (with a hint of irony). By heck we don’t half make the simple complex and we forever add but rarely take away. Prioritize, do fewer things better and KISS.

    Btw, ta for CSS help:-)

  25. Mun says:

    I don’t work at MS (yet hehe), but interesting post! 🙂

    Re: Number 4 – it would be interesting to hear about some of the cool things within Microsoft that came about with a developer in a team knocking up something they needed… 🙂

  26. MSDN Archive says:

    Mun: There are lots of these stories. I see Start.Com as one such example of people just starting to build what they needed.

    Dglover: No problem for the CSS help. I need to update that old article for the new CS stuff, I just haven’t gotten around to it yet… mostly becuase I’m still not thrilled with the look I have yet.

    Yeah, i kept thinking of more things and people have suggested some good ones. Maybe I’ll add one more each year. 🙂

  27. Hardik says:


    intresting stuff

  28. vera says:

    I am impressed by your post. It is very realistic and does not just relate to Microsft but to all spheres of life, whether u r in business for yourself or working for someone else, we’d all do well to remeber these tips.

    Well done.

  29. Bob H says:

    Very useful advice there.

    I worked in building #40 in 2000 on a vendor program. Reading that you were in building #41 makes it feel like a small campus 🙂

  30. When I started at Microsoft, Josh posted a &quot;5 Tips for Being Successful at Microsoft&quot; entry in his blog.  (That’s where I learned about the M&amp;Ms.)  I’m not qualified to tell people how to be successful here, but here’s five, more trivial

  31. I was asked recently if I had any advice for people that might be considering the move to Seattle and

  32. I’ve been an employee of Microsoft for less than a year. My initial impressions are that I made a good

  33. As I mentioned earlier, Josh’s 5 tips for being successful at Microsoft got me thinking about my own

  34. In honor of his five year anniversary with Microsoft, Josh wrote a surprisingly coherent blog entry entitled 5 Tips for Being Successful at Microsoft (Hey, Josh is my husband. I can talk that way about him; you can’t.) 🙂 The reason that resonated most

  35. As I mentioned earlier, Josh’s 5 tips for being successful at Microsoft got me thinking about my own tips . . . but I decided to take the lighter route and discuss my 5 silly observations about Microsoft. (Silly they might be, but true they are as well.)