Software Engineering, Project Management, and Effectiveness
As part of the Great Books to Read Collection, I put together a collection of the best books on Interpersonal Skills.
When it comes to building software, shipping stuff, or just plain making things happen, interpersonal skills are a key to success. With interpersonal skills, you can better deal with the following scenarios:
What makes these the best books on interpersonal skills? They are books you can use to solve real problems. They are ones that have made an actual difference for many people in tough scenarios. (Of course, best is all relative, so only you know which books are best for you, by testing what works for your specific scenarios.)
While there are so many books that are truly useful, there is one in particular that I know many people have found to be insanely useful. It’s the book, Dealing with People You Can’t Stand, by Dr. Rick Brinkman and Dr. Rick Kirschner. Here’s why … the book gives you a “lens of human understanding” that helps you see what drives people to act a certain way. Once you understand this, it’s like knowing how the magic trick was done … all is revealed. The other reason why people like this book so much is because it gives you a language for bad behaviors. Having a language for bad behaviors makes it easy to identify them, understand them, and deal with them, in an actionable way.
From the Archives 40 Hour Work Week at Microsoft - If you want to be more effective, limit the time you spend. It’s a forcing function that fixes a lot of underlying execution issues that you just cannot see if your organization throws time at problems.
Patterns and Practices for New Hires - These are from the school of hard knocks. Whether you're a new hire or taking on a new job, I share some principles, patterns and practices to be more effective.
From the Web A Language for Software Architecture - An article I wrote for The Architecture Journal on how to map out the software architecture space, so we can organize and share knowledge more effectively.
You 2.0 – A free e-Book I wrote to help you unleash a version of your best self. Find your purpose, live your values, play to your strengths.
“Motivation is what gets you started. Habit is what keeps you going.” -- Jim Ryun
One of the best moves I use to change habits and adopt new practices is very simple, but very effective:
I schedule a recurring Friday appointment on my calendar. On that appointment, I list reminders, habits, and practices that I want to work on. It’s the art of applied reflection.
I tend to use bulleted questions, because they make a great checklist and I find that questions work better than statements for reflection. Here are a couple of examples to show what I mean:
You get the idea.
This works extremely well for baking in new practices, especially after taking a new course or training. It helps turn the training into action, because it forces you to turn the insights you learned into simple test cases (For example, the questions above.) It also works well, simply because it’s making you mindful of your choices, and it’s reminding you to check your thinking, feeling, or doing against your goals.
I’ve been using this practice for several years, and it’s worked like a champ. It’s part of the Friday Reflection pattern in Getting Results the Agile Way.
If there is a new pattern or practice you want to adopt, simply add a Friday reminder and see how easily you can adopt a new habit.
When it comes to people, underutilized does not mean squeeze out more hours, it means unleash more strengths.
When people have the chance to give their best where they have their best to give, this has an automatic way of taking care of utilization, motivation, impact, etc. When somebody is in their element, effective managers co-create the goals and get out of the way. It’s among the best ways to get the best results from teams or individuals. If you want to optimize a team, then unleash the strengths of each individual.
The power of people in a knowledge worker world is that you get exponential results when people are playing to their strengths. The simplest way to do this is have people in roles where they spend more time in their strengths and less time in their weaknesses. Another way to unleash their strength is pair them up with people that compliment their strengths or balance out their weaknesses.
On the flip side, the simplest way to create low-performing teams is to have people spend more time in their weaknesses and very little time in their strengths. While this is simple and obvious, the real trick is looking for it and finding ways to bring out people’s best.
While it’s not always easy, and you often have to get creative, one of the best things you can do for you, your company, the world, is to spend more time in your strengths and help others do the same. It’s the fittest and the flexible that survive, and it’s your unique strengths that crank up your fit factor.
"I love deadlines. I like the whooshing sound they make as they fly by." -- Douglas Adams
I wrote a step-by-step How To on How To – Set Goals and Achieve Them on Getting Results.com.
I find setting goals and achieving them is a blend of art and science. The art part is knowing how to frame the goal in a way that inspires you to action on a regular basis. The science part is breaking the goal down into actionable steps that you can measure against targets.
Over the years, the three most important things I learned about goals are:
Factor the Inspiration from the Perspiration Dream big. Don’t hack up your dream into little insignificant parts right off the bat. Inspire yourself with skill. Find your buttons and push them until that little part of you that wants more from life wakes up and says, I want me some of that.
Goals are among the best way to change your life or change the world or simply move forward versus slide back. Create inspirational goals, the kind that light your fire. That’s your starting point. That gets you ready for the tough part.
The perspiration of the goal, or the tough part, is translating the end-in-mind into action. This is the part where you break the goal down into sub-goals, steps, and actions. This is the part where you make the goal SMART – specific, measurable, actionable, relevant, and timely. This is the part where you get clarity on what success looks like along the way, and how you will map out your path to get to your destination.
The simple lesson here is, dream up compelling goals first and get excited before you start applying the rigor and discipline of making them happen. Then use the rigor and discipline of making them happen to inspire you along the way, as you make progress toward your goal.
The Why Behind the Goal is Everything There are many ways to kill a dream or kill a goal. The longer it’s spread out over time and space, the more hurdles and challenges you might have to deal with along the way. But some goals are dead right out of the gate.
If your goal lacks life and has no compelling “Why” to drive it, it’s dead in the water. It doesn’t stand a fighting chance. If you want your goal to stand the test of time and to help you stay the course, then you need to have a compelling “Why” behind it. The “Why” is the generator of your juice that makes you go. You know it’s working when you simply remember “Why” and you are back on track.
You Can Achieve Big Goals by Taking Little Steps Over Time The surprise is that consistent action really does pay off. It’s a case of slow and steady wins the race. The trick here is not to go intentionally slow and not to depend on baby steps. Instead, it’s to find the way forward, and to keep taking action. Sometimes that means taking little steps. Those little steps add up over time.
I integrated these lessons into my How To – Set Goals and Achieve Them to stack the deck in your favor and to help set you up for success in achieving your goals.
One of the first things I do to get a handle on execution is to map out the work in flight in the form of a roadmap.
When there are multiple teams shipping stuff, one of the best ways to improve coordination, collaboration, and planning is to make a simple roadmap.
Just even putting the roadmap together is an exercise in clarity.
The simple roadmap of key events is a great way to set expectations and communicate what’s going on. When there is a lot going on, it’s easy to get overwhelmed and lose track of the various trains leaving the station. A simple one-page view helps you stay on top of the trains and anticipate where focus and energy will be.
When you have multiple workstreams and dependencies, such as with vTeams and initiatives, it’s also helpful to put together a simple roadmap of the workstreams to illustrate the interactions.
One of the key points of creating effective visualizations of roadmaps is to keep them simple. You can always drill into details with detailed schedules or detailed Gant charts. The point of the visualization in this case is to have a very simple, “at a glance” of the work in flight across multiple teams.
You know you’ve done a good job when you can “glance and go” vs. “stop and stare.”
I created a Leadership Checklist to distill and share practices for effective leadership.
I created this checklist a little bit differently to try something out. I used a “user story” approach and I wrote each checklist item as a mini-story you can use for self-reflection. In a way, they can act as unit tests for leadership. Here are some examples:
It’s a work in progress, but so far the feedback has been positive. Feel free to share your favorite leadership practice as a one-liner reminder in the comments on the leadership checklist page.
Execution excellence as a one-man band is one thing. Execution excellence for a team or group is another.
One of the best ways to improve execution excellence for a team or group is to map out the portfolio, programs, and projects.
Having clarity on the portfolio, programs, and projects is a starting point for mastering execution.
In patterns & practices, what we did is create a visual roadmap to share the big ticket items. This helped set expectations with stakeholders in terms of what would ship when. It also helped build awareness for our internal teams to improve coordination and alignment.
The Portfolio We managed our portfolio in a very simple way. We simply kept a backlog of projects and initiatives grouped by themes and programs. At this level, we would do two key things:
In general, we could manage budgets and resources at the program level, as program level investments. This helped simplify planning.
The Programs We used programs as organizing themes to group related projects, streamline planning, and simplify communication. For example, in patterns & practices, we organized our projects into the following programs:
By having a backlog of programs and projects, we could establish our “cut line.” The “cut line” was the line where we’d need more resources and budget in order to execute. This made it easier to both share what we were working on, as well as push back on demands that exceeded our capacity. It also facilitated discussions with stakeholders in terms of priorities. The impact of prioritizing one project over another made it very easy to see the impact in terms of the Roadmap or what would be pushed below the cut line.
At the program level, we could use high-level user stories and scenarios to get a sense of the size and scope of key projects. We kept the scenarios high-level so that it was easy to tell the story and paint a quick picture of why the particular project, program, or initiative was important, in a way that stakeholders could relate to.
The Projects At the project level, we got way more specific. At the project level, we had to get clarity on the demand and the scope. To do so, we would map out the user stories. The user stories were collected and prioritized with customers and stakeholders. The user stories were important because they created a very specific way to scope the project. They also helped see what skills and experience were crucial to project success. They also created a way to cut scope at a more atomic level. They also created a way to flow incremental value throughout the project life cycle.
As you can imagine, when you have clarity on your portfolio, both in terms of a backlog of programs and projects, as well as expressed as roadmap, and you have clarity on your programs in terms of big bucket investments and themes of work, and you have clarity on your projects, in terms of priorities as well as the actual user demand and how the projects relate to one another, you are moving up the stack in terms of execution excellence, organizational maturity, and most of all, simplicity.
It’s that time of year when folks are busy with reviews. Here is a time-tested template for writing your results in a way that’s easy to defend, while making both your results and your approach shine through:
This is no ordinary template, and don’t let the simplicity fool you. It’s evolved over time under the collective scrutiny of many reviewers and people that have used this template to better articulate their impact in a more objective and holistic way. Here’s why. It explicitly frames out the following:
“Results” creates space to write about your bottom line results. This answers the question, “What did you deliver?”, but more importantly, frames it in the context of outcomes and impact. It’s less about whether you did X, Y, or Z, and more about the actual impact you delivered. Your results.
“How” creates space to write about how you achieved your results. This is especially important if you are trying to highlight and show how your approach demonstrates skills or competencies at a higher level. This is where you can highlight things like teamwork, cross-group collaboration, leadership skills, etc.
“Evidence” creates space to share all the quotes, quantities, and qualitative feedback about your impact. This is the place where you can truly make it obvious that your results and impact are more than just your subjective view. Nothing speaks stronger than a few powerful quotes from a few of the right people.
“Analysis” creates space for you to write about the highs and lows. A simple way to target and frame this is to think in terms of three things going well, and three things to improve.
Check out the Performance Review Template and I’ll be interested to know what tips or tricks you have for articulating your impact and making your review do justice to the work you’ve done throughout the year.
I wrote a simple step-by-step How To on How To – Achieve a Peaceful Calm.
It’s a simple way to achieve a peaceful calm state of mind. When your mind is relaxed, you can take in information with less distortion. You’re connected to your emotions, but rather than being overwhelmed or randomized, it’s more like using your emotions as input. When your mind is ready, you are responsive. You are able to easily see the situation and respond with skill instead of react out of fear or anxiety. When your mind is resourceful, you are able to easily think the thoughts that serve you. Your creative mind is ready to solve problems with you instead of work against you.
If your mind has been buzzing, you haven’t felt centered in a long time, and it feels like you’ve been building up, as Scott Hanselman would say, “Psychic Weight”, then you are in for a treat.
Take How To – Achieve Peaceful Calm for a test drive and let me know if it helps you get back in your zone.
I wrote a how to on How To Design Your Week. It’s all about mastering time management.
Let me first say that mastering your time is one of the most challenging things you can do in life. It’s a topic that folks like Peter Drucker have filled books with. Let me also say that, while it is tough, it’s also one of the best things you can do to lead a better life. And the beauty is, the moment you start spending your time in more meaningful ways, you get immediate payback.
What if right now, you were working on your next best thing to do? (It’s a simple question, but it cuts to the chase.)
This How To is based on helping many folks inside and outside of Microsoft design a schedule that helps them simplify their work, free up more time, get more done in the same amount of time, spend more time where it counts, and use their best energy for their best results. The trick in today’s world is that you don’t get more hours in a day – but you can amplify your results by improving your energy.
I prioritized creating this how to because I need to scale. Lately I’ve been helping a lot more fellow Microsoft colleagues design a schedule that brings out their best results and helping them get a handle on their work-life balance. The bottom line is, they wanted to spend less time, but get better, faster, simpler results. Most importantly, they wanted to stop thrashing and start thriving.
Just about everybody I know is feeling the pain of an increasingly competitive, increasingly connected, “always on” world. There’s always more to do, than you can possibly get done, but throwing more time at the problem isn’t the answer.
… So what is?
Design your time with skill.
If you let your week just happen, it’s very easy for your weekly schedule to erode to a point where it works against you in every possible way: your best energy gets wasted on the least impactful things, it takes ten times longer to get things done, the faster you go, the more behind you get, you wear yourself down emotionally, mentally, physically. Perhaps the worst thing though is, without carving out time for what’s important, you never have the time for the things that mean the most to you.
If you can design a week, you can create repeatable patterns that serve you throughout the year. The key is spending the right time, on the right things, with the right energy, the right way. This is the magic formula for getting exponential results from time you already spend. This is how you unleash your best, time and again, get more done in the same amount of time, feel strong all week long, and free up more time for the things you really want to spend your time on.
If you’re ready to exponentially make the most of what you’ve got and unleash yourself, take How To – Design Your Week for a test drive.
"You can't depend on your eyes when your imagination is out of focus." -- Mark Twain
Focus is the key to success at Microsoft for many people. I put together proven practices for how to focus in a comprehensive set of “Focus Guidelines”.
One of my mentors, a seasoned manager at Microsoft, once told me that the difference that makes the difference – why some people succeed and others do not – is focus. Those that lack focus spread themselves too thin, or never finish what they start. They have a lot of dreams, ambition, and ideas but they never spend enough time working on any one thing to make it happen. On the flip side, those with focus, know what they want to accomplish, and they apply concentrated effort, and see it through to completion. They also focus on less, yet achieve more.
I set out to nail a set of proven practices that could help anybody improve their ability to focus. I gave myself a timebox of four hours to see what I could put together for a v1 release. I sanity checked the results with a few folks that said it very much echoed what they thought were the keys to improving focus, so now I’m sharing with a broader audience. (If you’re wondering why I gave myself a timebox of four hours for this it was to help me focus Focus is a complex topic and deserves attention, but I also have other priorities I’m working on. I was willing to spend 2 hours Saturday and 2 hours Sunday to chip away at this stone, if it could help the greater good to have a robust set of practices that actually work for achieving the highest levels of focus. I expect my four hour investment to help many others get exponential results and help them take their game to a new level, by expanding their mental toolbox. Even if that’s not the case, spending four hours to work on such a key cross-cutting skill for life is still a good investment.)
These practices are time-tested and Softie approved. As you can imagine, with all the bright and shiny objects that go flying around, it takes skill and discipline to stay focused. The beauty though is that if you know the key strategies and tactics for improving your focus, then it actually gets a lot easier to focus where it counts and enjoy the ride.
Explore my “Focus Guidelines” and learn how to focus with skill.
One of the scenarios I get asked to coach teams on is, “Email Therapy.”
Basically, this translates to, “Help our team deal with email overload” or “Help our team get un-swamped” or “Help our team process and manage email more effectively.” In a lot of these scenarios, it’s where the team uses email as a heavy part of their workload.
Why do they ask me? Usually it’s word of mouth where somebody I’ve mentored shares the approach. In other cases, it’s a team that wants to adopt Getting Results the Agile Way, but want to first get a handle on their email challenge.
Why Keep an Empty Inbox I deal with hundreds of email each day, but I keep my inbox empty. Having an empty inbox is not only a good feeling, but it streamlines things. My inbox really is for incoming messages. I keep my inbox clear because I have a place for actions and tasks, a place to stick the email I’ve read, a simple way to schedule time for things that take time, and a simple folder system for archiving useful reference information. I avoid “death by a 1000 paper cuts” and “paper shuffling” using this approach. Because my approach is designed to easily deal with large volumes of email, it’s easy for me to batch process. I limit the amount of administration time I spend, so I can optimize the time I spend on higher value activities.
5 Patterns for Keeping Your Email Inbox Empty To share my approach, I use patterns. This way whether you use GMail, HotMail, Outlook, etc., you can still apply the same concepts.
Here are the main ideas behind each pattern:
Pattern #1 - One Folder for All Read Mail
Pattern #2 - Filter Out Everything Not in Your Immediate World
Pattern #3 - Tickler Lists of Action
Pattern #4 - Schedule Items You Need Time For
Pattern #5 - Reference Folders
The main anti-patterns that these patterns help you avoid are:
My Related Posts
As I’ve been teaching Getting Results the Agile Way to more people and teams, I’ve had to simplify the mental model. Here is the simplest visual that I like to whiteboard to show the main idea:
It’s all about having a simple system for flowing value each day, and each week. I’ve focused more on the story-driven approach, because I find that this helps people connect more deeply with what they do. Instead of focusing on “doing tasks” or just “getting stuff done”, they focus on meaningful impact and meaning results. It’s also about living your values. Or, to put it another way, doing what makes you strong, all day long.
A Story-Driven Approach to Great Results Using simple and sticky “one-liner stories” each day, and each week, helps you turn tasks into results:
The more you turn your tasks into compelling outcomes, and the more you connect your outcomes to your values, the more you will ignite yourself and others on fire as you blaze your trail forward. The key here is connecting to your values. In the simple examples above, winning a raving fan is all about connecting with customers, slam dunking your bugs is about making it a game while testing your skills, and inspiring your team to go for the epic win is all about making it an adventure. If customers, growth, and impact are high on your values, those results take on new meaning and jazz you vs. drain you.
Anyway, I’ve created a simple one-page guide to answer the question, What is Agile Results.
From the Archives Customer-Connected Engineering – Involving customers throughout your software development cycle can help you make sure you make something your customers need and want. It also helps you better understand the requirements and prioritize more effectively. It also helps you get more relevant and timely feedback so you can ship stuff that people will use. We’ve called the approach we’ve used in patterns & practices, Customer-Connected Engineering (CCE), and this is the approach in a nutshell.
Methodologies at a Glance – At the heart of every software methodology, there are core practices. When you know the key activities and artifacts that make up a methodology, you can easily compare across methodologies to find the best fit. You can also fill your toolbox with practices so that you can use the ones that you need, when you need them. This is a bird’s-eye view of some of the more popular software project and product development methodologies.
From the Web Focus Guidelines – It’s been said that the difference between those that succeed, and those that don’t is focus. Focus is a skill you can build and use throughout your lifetime, to counter distractions, fully engage in what you do, reduce stress, and improve your results. This is a comprehensive set of guidelines that give you an edge in today’s world.
How To – Set Goals and Achieve Them – This is a step-by-step guide for setting compelling goals, and making them happen. If goals leave a bad taste in your mouth, this can help you turn it around. It’s all about creating goals that inspire you and that help you achieve whatever you set out to do.
Chris Smith wrote a great overview of my productivity system on Stepcase Lifehack.org. The article is Productivity System Overview: Getting Results the Agile Way.
Chris is very familiar with various productivity systems, including Getting Things Done. I enjoyed reading Chris’s article, and I especially liked how he covered so much ground in such a short amount of space. He honed right in on what’s important, and made the key points pop.
I think what Chris really caught on to, and surfaced in his review, is that Getting Results the Agile Way is all about achieving meaningful results, and not just doing more tasks.
As a Program Manager, one of the things I’ve had to do a lot is, “pitch projects.” Whether it’s pitching a project or talking about a project in the hall, it helps to have an elevator pitch that sticks.
The ideal elevator pitch for a project is simple, sticky, and makes the point fast. Somebody shouldn’t have to work too hard to figure out what it’s about. It’s the essence in a nutshell.
The Minimum Elevator Pitch Here are a few example elevator pitches I’ve used for some of my projects:
I’m a fan of the one-liner reminders. They make it easy for you to tell and sell the story. Additionally, they make it easier for others to tell and sell your story if they have a simple, sticky, one-liner reminder, and in today’s world, word-of-mouth marketing is your friend.
The Maximum Elevator Pitch Here is an example of an elaborated elevator pitch template, I’ve used in patterns & practices on a slide, as a more formal way of expression the cornerstone attributes of the project:
It’s always great to see how technology can help make the world a better place.
You might remember Ed Jezierski from his Microsoft days. In his early years at Microsoft, he worked on the Microsoft Developer Support team, helping customers succeed on the platform. These early experiences taught Ed the value of teamwork and collaboration, extreme customer focus, and the value of principles, patterns, and proven practices for addressing recurring issues, and building more robust designs.
From there, Ed was one of the early members of the patterns & practices team. As one of the first Program Managers on the patterns & practices team, Ed was the driving force behind many of the first guides from patterns & practices for developers, including the Data Access guide, and the early Application Architecture guide. He was also the master mind behind the first application blocks (Exception Management Block, Data Access Block, Caching Block, etc.) , which forever changed the destiny of patterns & practices. The application blocks helped transition patterns & practices from an IT and system administrator focus, to a focus on developers and solution architects. In his role as an Architect, on the patterns & practices team, Ed played a significant role in shaping the technical strategy and orchestrating key design and engineering issues across the patterns & practices portfolio. One of his most significant impacts was the early design and shaping of the Microsoft Enterprise Library.
In his later years, Ed worked on incubation and innovation teams, where he learned a lot about streamlining innovation, making things happen, and how to create systems and processes to support innovation, in a more organic and agile way, to balance more formal engineering practices for bringing ideas and innovation to market.
But, just like James Bond, “the world is not enough.” Ed’s passion was always for helping people around the world in a grand scale. His strength and amazing skill is applying technology to change the world and making the world a better place, by solving solve real-world problems. (I still remember the day, Ed showed up in his bullet proof armor, ready to deploy technology in some of the most dangerous places in the world.)
Now, as CTO at InSTEDD, Ed hops around the globe helping communities everywhere design and use technology to continuously improve their health, safety and development. As you can imagine, Ed has to make things happen in some of the most extreme scenarios, responding to natural disasters and health incidents. And he uses Getting Results the Agile Way as a system for driving results for himself and the teams he leads.
Here is Ed Jezierski on Getting Results the Agile Way …
How you split the work is one thing. How you team up on work is another.
This is one of those patterns that can be counter-intuitive, but is one of the single-biggest factors for successful teams. I've seen it time and again, over many years, in many places.
When I compare the effectiveness of various organizations, there's a pattern that always stands out. It's how they leverage their capabilities in terms of teamwork. For the sake of simplicity, I'll simply label the two patterns:
In the One-Man Band scenario, while everybody is on a team, they are all working on seperate things and individual parts. In the Pairing Up scenario, multiple people work on the same problems, together. In other words ...
The Obvious Answer is Often the Wrong Answer The obvious choice is to divide and conquer the work and split the resources to tackle it. That would be great if this was the industrial age, and it was just an assembly line. The problem is it's the knowledge area, and in the arena of knowledge work, you need multiple skills and multiple perspectives to make things happen effectively and efficiently.
Teams of Capabilities, Beat Teams of One In other words, you need teams of capabilities. When you Pair Up, you're combining capabilities. When you combine capabilities, that means that people spend more time in their strengths. You might be great at the technical perspective, but then lack the customer perspective. Or you might be great at doing it, but not presenting it. Or you might be great at thinking up ideas, but suck at sticking with the daily grind to finish the tough stuff. Or you might be great at grinding through the tasks, but not so great at coming up with ideas, or prioritizing, etc.
The One-Man Band Scenario Creates Bottlenecks and Inefficiencies As the One-Man Band, what happens is everybody bottlenecks. They spend more time in their weaknesses and things they aren't good at. Worse, the person ends up married to their idea, or the idea represents just one person's thinking, instead of the collective perspective.
Crews Spend More Time in Strengths and Gain Efficiencies If you've had the benefit of seeing these competing strategies first hand, then it's easy with hind-sight to fully appreciate the value of Pairing Up on problems vs. splitting the work up into One-Man Bands. For many people, they've never had the benefit of working as "crews" or pairing up on problems, and, instead, spend a lot of energy working on their weaknesses and meanwhile, spending way less time on their strength.
When people work as teams of capabilities, and are Pairing Up on problems, the execution engine starts to streamline, people gain efficiencies, and get exponential results. Several by-products also happen:
There are Execution Patterns for High Performing Teams Of course there are exceptions to the generalization (for example, some individuals have a wide variety of just the right skills), and of course their are success patterns (and anti-patterns) for building highly effective teams of capabilities, and effectively pairing people up in ways that are empowering, and catalyzing. I learned many of these the hard way, through trial and error, and many years of experimenting while under the gun to bring out the best in individuals and simultaneously unleash and debottleneck teams for maximum performance and impact. I’ve also had the benefit of mentoring teams, and individuals in reshaping their execution. This is probably an area where it’s worth me sharing a more focused collection of patterns and practices on leading high performance teams.
If you have a favorite post or favorite write up that drills into this topic, please send it my way. In my experience, it's one of the most fundamental game changers to improving the execution and impact of any team, and especially, one that does any sort of knowledge work, and engineering.
From the Archives Agile Architecture Method -- Scope and focus your architecture exercise, use scenarios to drive the design and evaluate potential solutions, and expose key choice points. It's a way to bridge traditional architecture with more agile, iterative, and incremental ways. This approach is the synthesis of more than 30 seasoned solution architects inside and outside of Microsoft, as well as security experts, and performance experts.
User Stories for Cloud Enterprise Strategy -- A collection of user stories for the cloud. This collection is a simple map of the most common scenarios that Enterprise Architects, business leaders, and IT leaders will be facing as they adopt cloud technologies. These are real scenarios from real customers, thinking through and planning their cloud adoption.
Windows Azure Whitepapers Roundup – If you want to read up on Microsoft’s cloud story, there are plenty of whitepapers to get you started. This is a collection of the various Windows Azure whitepapers around Microsoft for developers, IT Pros, and business leaders.
From the Web Motivation Guidelines – A set of proven practices for improving your motivation, finding your drive, and inspiring action. Motivation is a skill you can use the rest of your life. Find the key practices that work for you, and use this collection as your mental toolbox to draw from.
36 Best Business Books that Influenced Microsoft Leaders – The beauty of Microsoft is the extremely high concentration of smart people and I like to leverage the collective brain I posed the following question to several Microsoft leaders, past and present, and up and down the ranks, ““What are the top 3 books that changed your life in terms of business effectiveness?” This is the answer I got.
Cloud computing is hot. As customers makes sense of what the Microsoft cloud story means to them, one of the first things they tend to do is look for case studies of the Microsoft cloud platform. They like to know what their peers, partners, and other peeps are doing.
Internally, I get to see a lot of what our customers are doing across various industries and how they are approaching the cloud behind the scenes. It’s amazing the kind of transformations that cloud computing brings to the table and makes possible. Cloud computing is truly blending and connecting business and IT (Information Technology), and it’s great to see the connection. In terms of patterns, customers are using the cloud to either reduce cost, create new business opportunities and agility, or compete in ways they haven’t been able to before. One of the most significant things cloud computing does is force people to truly understand what business they are in and what their strategy actually is.
Externally, luckily, we have a great collection of Microsoft cloud case studies available at Windows Azure Case Studies.
I find having case studies of the Microsoft cloud story makes it easy to see patterns and to get a sense of where some things are going. Here is a summary of some of the case studies available, and a few direct links to some of the studies.
Advertising Industry Examples of the Microsoft cloud case studies in advertising:
Air Transportation Services Examples of the Microsoft cloud case studies in air transportation services:
Capital Markets and Securities Industry Examples of the Microsoft cloud case studies in capital markets and securities:
Education Examples of the Microsoft cloud case studies in education:
Employment Placement Agencies Examples of the Microsoft cloud case studies in employment agencies:
Energy and Environmental Agencies Examples of the Microsoft cloud case studies in enery and environmental agencies:
Financial Services Industry Examples of the Microsoft cloud case studies in the financial services industry:
Food Service Industry Examples of the Microsoft cloud case studies in the food service industry:
Government Agencies Examples of the Microsoft cloud case studies in government agencies:
Healthcare Industry Examples of the Microsoft cloud case studies in healthcare:
High Tech and Electronics Manufacturing Examples of the Microsoft cloud case studies in high tech and electronics manufacturing:
Hosting Examples of the Microsoft cloud case studies in hosting:
Insurance Industry Examples of the Microsoft cloud case studies in the insurance industry:
IT Services Examples of the Microsoft cloud case studies in IT services:
Life Sciences Examples of the Microsoft cloud case studies in life sciences:
Manufacturing Examples of the Microsoft cloud case studies in manufacturing:
Media and Entertainment Industry Examples of the Microsoft cloud case studies in media and entertainment:
Metal Fabrication Industry Examples of the Microsoft cloud case studies in metal fabrication:
Nonprofit Organizations Examples of the Microsoft cloud case studies in non-profit organizations:
Oil and Gas Industry Examples of the Microsoft cloud case studies in oil and gas:
Professional Services Examples of the Microsoft cloud case studies in professional services:
Publishing Industry Examples of the Microsoft cloud case studies in publishing:
Retail Industry Examples of the Microsoft cloud case studies in retail:
Software Engineering Examples of the Microsoft cloud case studies in software:
Telecommunications Industry Examples of the Microsoft cloud case studies in telecommunications:
Training Industry Examples of the Microsoft cloud case studies in training:
Transportation and Logistics Industry Examples of the Microsoft cloud case studies in transportation:
“Information is not knowledge.” – Albert Einstein
What if you could streamline your way through vast seas of information to find the needles in the haystacks, or make sense of an ever changing landscape? Information comes at us so fast, from so many directions. The world changes fast, and, in a knowledge worker world, what you don’t know can hurt you.
One of the FAQs I get asked by colleagues is, how do I make my way through so much information so fast?
If I just say lots of years of deliberate practices writing and reviewing prescriptive guidance in patterns & practices, that doesn't help them much. If I say, I spent hundreds of dollars on books each month and that forced me to read a lot faster, that doesn't help either. So, I started paying attention to where the speed comes from. It’s ultimately a system of things and habits from practice, but here are a few keys you can use …
Reading and Analyzing Information
Writing Information Faster
Since joining the Enterprise Strategy Team at Microsoft, I’ve had to shift gears and focus more on business, business architecture, and strategy patterns. Luckily, there’s no shortage of material on business design. The trick is finding the useful nuggets of insight and action.
Here’s an example of a useful nugget regarding how to think about the three core types of businesses …
In the book, Business Model Generation, Alex Osterwalder, Yves Pigneur, Alan Smith, Patrick Van Der Pijl, and Tim Clark suggest unbundling your business by splitting it into three core types:
While the three types can co-exist within a single corporation, you can avoid conflicts or undesirable trade-offs by unbundling them, into separate entities.
When your business is bundled, it’s tough to streamline things or make it more effective, because the focus is fractured.
When you unbundle your business, you can gain clarity, focus, efficiencies, and effectiveness. You can also make it easier to innovate in your processes, platforms, and products because of the clarity and focus.
As you can imagine, this is crucial for any significant cloud plays and business transformations. I’m in the business of business transformation now, as well as connecting business with IT (Information Technology), so it’s helpful to fill my toolbox with business strategies and business design methods, and I’ll share my toolbox with you as I go.
In their Value Disciplines Model, Treacy and Wiersema suggest that a business should focus on one of three value disciplines for success:
This re-enforces the idea by John Hagel and Marc Singer to split businesses into three core types (infrastructure businesses, product innovation businesses, and customer relationship businesses.)
The question of course is whether, does Traecy and Wiersema’s model hold up in today’s world, where business blends with technology, and social media makes customer intimacy a commodity?
In the article, The Strategy Accelerator, Alfred Griffioen identifies three models that have been used for strategic competitive differentiation:
Griffioen raises the question whether the models are still relevant, given Porter’s is circa 1980, Traeacy and Wiersema’s are circa 1995, and the BCG portfolio mix is from 1959.
I think the key is that while the landscape may change, the principles remain the same, they just need to be adapted.
This helps show why knowing the *why* and the context behind a principle is always key (as in *why* or *how* does it work … or even *when* does it work?) That’s why patterns are a key way to share principles and strategies (they not only build a shared language, while sharing a problem and solution pair, but they also bound it to a context.)