Scrum has some great things to teach us about how to work with each other and how to be more effective. Here are six of them:
1. Always work from a prioritized list
Have you ever thought about how much of your day is wasted doing things that don’t mean very much? Or, do you engage too much in nerd pleasure i.e. working on things that are technically satisfying, but not necessarily working on what is important to your customer or client? This one simple act of working from a prioritized list will change the way you function and make you more effective. Keep the list up-to-date daily with the most important things on the top. Then start knocking them off.

2. Make a commitment publicly
If you have a task that you want to get done, commit to it and tell someone. In Scrum you would make the commitment to your team members, but your dog might work just as well (just kidding about that, you should probably just stick to humans). Something magic happens when that commitment is made and it is more likely to get done than if you didn’t make it.
3. Get feedback regularly
In Scrum this is called a ‘Retrospective’ and it should be done on a regular basis (regular being key). Ask someone you are working with or your boss at regular intervals (e.g. every 2 weeks, every month) to have lunch with you and give you some feedback. What’s it like working with me? What do you like about working with me? Am I doing anything that’s not working for you? What can I do to improve myself? You can also do it in a more ad-hoc way as long as it works out being regular. For example, if you just finished pair programming or just had a meeting, ask the other person ‘what went well?’ and ‘what could be improved?’
4. Time-box your activities
Setting time limits on meetings and tasks will help you keep focused. With Scrum, the concept of a ‘sprint’ assures that you commit to a set of functionality that is time-boxed. Here’s a golden nugget for you: tasks always tend to shrink or expand to fit the amount of time allotted (cf. Parkinson’s Law). So give yourself a shorter, but realistic allotment of time, then reassess when you hit the limit. If working with a client/product owner, this is a good time to communicate the status of the project and make those trade-offs – should you simplify the feature, remove it, or keep going on the current path. Of course, if you keep working, other features will be pushed out because something’s gotta give.
5. Work sustainably
Startup companies never seem to remember this one. Agile has zero to do with working yourself until you’re burned out and has everything to do with working sustainably. The number of hours we have in a week is fixed – if something is added to the current iteration, something else has to be pushed out. If this is the week of a critical release then there may be an exception, but having critical releases on a weekly basis no longer qualifies as critical.

6. Make your work visible
Use a push, not a pull system of project management. Managers who constantly poll their developers for their project status only interrupt developer work flow. The reason that they do this is because they can’t keep their minds wrapped around all the moving parts of the project. If developers take it upon themselves to push their current status to a place that everyone has visibility into, then the need for micro-management is gone. So, whether you use a product like ScrumNinja or index cards and a cork board, your manager and other stakeholders will be up-to-date on progress.


February 4th, 2009 at 05:50 AM
Excellent lessons. It's always funny how obvious agile methodology is, yet we get stuck in our ways and ignore what can improve our process.
Thanks for the reminders!
February 4th, 2009 at 06:50 PM
Nice wrap up, so obvios but yes we tend to forget it.
February 5th, 2009 at 08:03 AM
Thanks, great 6 short ways.
Something that stays in my mind is a Linda Rising presentation at QCon SF 2007, now available at http://www.infoq.com/presentations/Perfection-Is-Unrealistic-Linda-Rising . "..Your mission is not to drill the Pantan, but to kill an Alligator each time..." . Ask yourself where is the alligator in each story.
Cheers
February 5th, 2009 at 08:43 AM
Very good write-up, thanks for the tips!
February 5th, 2009 at 03:43 PM
There are some caveats to #2. First, don't publish in a big meeting, or any kind of voice-only communication. It's too easy for someone over your head to hear the parts they want and disregard the rest.
Example? What you say: "We'll have this wrapped up and working by the end of the month if we get the UPSs installed in the data center by Tuesday." What your CTO hears: "We'll have this wrapped up and working by the end of the month blah blah technical stuff blah blah."
When you commit to a project, do so via email or basecamp posting, and make sure all the contingency parameters are clear, especially if your progress is tied to some kind of performance eval, and you're dependent on other folks.
February 5th, 2009 at 04:59 PM
I hear what you're saying, Ben. It's unfortunate that we have to worry about things like performance evals, power plays and people hearing what they want to hear. I really feel that, at the core essence, Scrum really tries to move beyond all of this. But, I agree that the majority of organizations have a long way to go. I had to leave a previously dysfunctional organization in order to start a hopefully, less dysfunctional one. But, some of the dysfunction doesn't go away because we're still human. Thanks for the comment.
February 6th, 2009 at 04:45 AM
RE: #3 Get feedback regularly
The great point you make here is that in addition to feedback from your business customers, it is equally important to get feedback from your team. This can feel a little hokey at first, but can be a great way of ironing out the kinks with new teams or pairs.
One way to make this less awkward is to come up with a quick list of questions that each pair asks the other. (Your examples of what went well/not well are good examples.) Having them as a standard list seems to make it easier for folks to genuinely participate rather than just pat each other on the back.
February 9th, 2009 at 04:04 AM
@Ben: Did you quote from "The Boxer" on purpose? :)
March 9th, 2010 at 05:57 AM
Superb ...
March 9th, 2010 at 10:14 AM
Superb ...