Philosophy: Life is what happens to you while you're busy making other plans.
John Lennon, The Beatles
Many books and papers have been written on changing a corporate culture. What I would like to share in this chapter is a "David versus Goliath" approach. David in this case is the builder, build manager, or any employee, and Goliath is the corporate bureaucracy that every company has. All companies have specific cultures, and at larger companies such as Microsoft, subcultures exist in different product groups. This is evident as soon as you walk into a building on Microsoft's Redmond, Washington campus that is occupied by a specific division such as MSN or Office. From the way the walls and offices are decorated to the people buzzing around, you can feel how the ambience and group of people working in that building are different from that of other buildings with other product teams.
Of all the topics in this book, this might be the most difficult to change in a company or group. This is mostly because changing any culture is an evolutionary, not a revolutionary, process. Sometimes you might witness a radical change, such as a new CEO or group manager, but even after that change occurs, it can take weeks or months before you feel all the new fallout. Usually, if a company doesn't notice an improvement in cultural changes after about two years, the executive in charge gets a nice "going-away party."
As pointed out in an earlier chapter, the development tools used in a group help drive behaviors. These behaviors tend to shape the culture of your company or group. In this chapter, I would like to give an approach that builders, build management, testers, or developers can use to make a change to the culture of their group or company essentially an engineer's approach.
Some contributing parts of a company culture take a long time to change, whereas others can be changed overnight. For example, switching to a daily build process can take weeks or months, but switching the time you build code to during the day instead of during the night can happen the next day. Everyone can adjust to that new schedule fairly quickly. Still, it's important to realize that even small tweaks to tools, processes, and people can affect a company culture.
More specifically, software development teams have their own culture, even if it is not explicitly defined. I often use the terms culture, philosophy, or religion interchangeably. If you plan to grow a development team, you need to establish the culture to accomplish the following things:
Common way of evaluating designs, making tradeoffs, and so on
Common way of developing code and reacting to problems (build breaks, critical bugs, and so on)
Common way of establishing ownership of problems
Goal-setting process that should be the foundation for the culture
Method of keeping a culture alive as the team grows (the biggest challenge)
This book has already covered all of these topics. This chapter discusses how to balance these goals and tie them all together to create a cohesive corporate culture in your organization.
Microsoft Sidenote Examples of Cultural Shifts at Microsoft
Over the years at Microsoft, several internal memos have been leaked out to the world. I remember reading an article in a popular magazine that quoted someone who thought these memos were a PR stunt. What a small-minded person to think that! A company that prides itself on integrity and values doesn't have the time to think of schemes to hoodwink customers or partners.
The following quotes are taken from some of the more memorable memos. Each of the memos was several pages long and was talked about long after it was e-mailed to everyone in the company. Each is a great example of how executives can drive cultural changes through one piece of e-mail.
After Microsoft had record sales of Windows 3.1 and the stock was shooting through the roof, Mike Murray, VP of human resources at the time, sent this memo to tell everyone that when on business trips, they should order the weenies instead of the shrimp.
When you think small, you don't spend big. Every penny counts, every new headcount is precious, and you feel personally accountable for the top line (revenue), the bottom line (profitability), and all the stuff in between.
Shrimp and Weenies memo Mike Murray, May 24, 1993
Windows 95 shipped with a huge party in which Tonight Show host Jay Leno was flown in to host. But after the booze wore off, Microsoft executives realized that we missed the Internet train with MSN, so Bill sent the Internet Tidal Wave memo. Within 6 months of that memo coming out, Microsoft released 60 products that interacted with the Internet, as outlined in the memo. The whole MSN strategy was changed from being the network that everyone in the world would have logged into to a portal to the Internet.
Our products will not be the only things changing. The way we distribute information and software as well as the way we communicate with and support customers will be changing... Customers will come to our "home page" in unbelievable numbers and find out everything we want them to know.
Internet Tidal Wave Bill Gates, May 26, 1995
Security against viruses, worms, and malicious hackers has been troublesome to the Microsoft platform. Customers and third-party applications expect and assume that the operating system will provide the appropriate level of security for protection. Bill released the following memo just after Windows XP shipped in October 2001. As with the previous memos, Microsoft turned on a dime and employees were retrained on how to make the platform more secure.
Trustworthy computing is computing that is as available, reliable, and secure as electricity, water services, and telephony.
Trustworthy Computing Bill Gates, January 15, 2002
On the heels of the bursting of the .com bubble and Microsoft's trials and tribulations with the Department of Justice, the company needed a morale boost and a clear vision of where our new CEO was taking us. Hence, Steve sent out this memo, which was well received.
But our mission is not just about building great technology. It's also about who we are as a company and as individuals, how we manage our business internally, and how we think about and work with partners and customers.
Realizing Potential Steve Ballmer, June 6, 2002
These are just some examples of how Microsoft sets its culture from an executive level. However, unfortunately or fortunately, nonexecutives cannot type a memo and e-mail it to the company and expect everyone to follow it.