7 Ways to Make Good Teams Great
Sven Peters
Atlassian Ambassador, @svenpet
- When are good programmers motivated? In programmers heaven
- Kick Ass Product
- Kick Ass Team
- Everything else is not so important anymore.
- What companies do
- Give us money, but that doesn’t really motivate us to make the customer happy, just to get the bonus
- Getting the best/right people, and then putting them behind bars… great talent but limited possibilities
- e.g. limited hour windows (you must be in the office between 9am and 4pm)
- Stupuid rules - you can’t use IntelliJ IDEA, we use Eclipse!
- What can devleoper do?
- Revolution… leads to the guillotine!
- Do nothing and complain. This also does not help!
- Or, Be the change you seek. Make a small change and try to let it grow.
7 ways to make good teams great
- It’s flowtime!
- Productivity – Interruption kills productivity, and takes up to 50 minutes to get you back
- Spending 2 hours/day recovering from distractions
- 80% of interruptions are considered trivial (atlss.in/TimeWaster)
- Closed doors vs. Open workspace
- Engineering is less about “Getting things done” and more about Collaboration
- Sven’s previous team tried “Do Not Disturb Time” - 1pm to 4pm, closed the doors. All meetings in the morning. Phones off. Some turned off email/chat.
- First week was terrible. Kept being interrupted.
- After that it started to spread to other parts of the department
- Good time to talk to one another… but how do you ensure you don’t disturb the rest.
- Chat is great for silent conversations.
- People can stay in the zone
- Lots of chat rooms work well at Atlassian.
- Hipchat mentions mean you can pull people in later, even if they are not online
- Reality Check:
- Feasibility: 4/5
- Awesomeness: 2/5
- Feed Your Brain
- Conferences
- Trying new things
- Organized coding sessions on a new language, new topic, etc.
- Every tuesday night for 2hrs, ordered some pizza and hacked something.
- Not everybody came, but some did. Wasn’t universally applicable.
- Organize Brown Bags
- After a few times, his team burnt out on it a bit, but started showing conference videos instead and had a small discussion. Good stuff!
- Reality Check:
- Feasibility: 5/5
- Awesomeness: 2/5
- Say Well Done!
- Companies are really good at celebrating big goals
- Most folks aren’t connected to big goals.
- We need to appreciate the small things
- Appreciate is important for happiness
- Appreciation should be made public
- Appreciation without approval
- At atlassian, you can give a colleague kudos, unfiltered, through a web page in their extranet
- Talent department takes care of rewards
- Reality Check (for the kudos thing):
- Feasibility: 2/5
- Awesomeness: 3/5
- Report Robot
- He spends SO MUCH TIME creating project reports from disparate systems
- His boss might read them. His boss’ boss maybe. His team never does.
- At Alassian they are wild about collecting data and use SQL macro to make automated project reports
- (This is a pretty custom/subjective suggestion… Not super helpful acroass the board, but the spirit of the idea is sound.)
- Wallboards for information radiation
- Reality Check:
- Feasibility: 2/5
- Awesomeness: 4/5
- Eat your own dog food
- (Not applicable to us…)
- Ths is alpha testing your own software, so that you understand your custmomer better
- This can be a painful process, but you do get fast feedback.
- Dogfooding at Atlassian
- Confluence extranet, always the latest version
- Reality Check:
- Feasibility: 2/5
- Awesomeness: 5/5
- Do A Special Day
- Take a day off!
- This is like one of those unpleasant things that you push off, but you have to do it
- But seriously, forget about the current sprint for a day.
- Doc Sprints
- 1–2 day event
- Tech Writers invite Developers to write documentation
- Provide developers with “perks” to motivate them
- Tech Writers polish and deliver
- Blitz Test
- Short - couple of hours, half day, etc.
- Whole company invited to bang on a given release
- QA assigns groups to features, and collect data
- This is about just getting things out of the door .. getting yourself out of your normal environment
- Reality Check:
- Feasibility: 5/5
- Awesomeness: 3/5
- Experimentation Time
- “To achieve great things, two things are needed: a plan and not enough time.” - Leonard Bernstien
- Atlassian has Ship-It days
- Motivation through Innovation
- Start with an idea
- Teams gather around an idea or you can work on your own idea
- Write up a single page up - “Shipment Order” which is the Plan
- Get together one day before the day and make a sprint plan for the 24 hour period
- And then it starts! This is the coolest day of the quarter!
- Thursday 3pm to Friday 3pm.
- Fork the code bas, some work through the night, some go home for a few hours
- Present ship it day results at 3pm Friday to other people in the company
- Vote for the Ship It Day winner
- GO home, or end up at a bar, etc.
- What do you get out of a Ship It Day?
- Innovation
- Happy Nerds!
- Crappy, unmaintainable code
- Unstable Features
- 20% time
- Can be used for whatever we want.
- Innovation time.
- It’s their own.
- Atlassian measures it – it’s more like 5% time!
- Mostly due to conflicts. Sprint goals get in the way and they might let the team down.
- Heavy workload gets in the way.
- Heavy dependencies get in the way, like if you’re working with a colleague on that 20% time thing
- Moved to innovation weeks
- Innovation Time
- Planned Time
- Team Time
- Stash team works on product for 5 weeks out of a 6 week release cycle.
- It’s not 20%, but it’s something!
- Reality Check:
- Feasibility: 4/5
- Awesomeness: 5/5