organizing an engineering team using asana
Post on 21-Oct-2014
685 views
DESCRIPTION
Jack, the Product Engineering Lead from Asana, describes the key projects the Asana eng team uses to organize itself. Meant to be easily replicable by any other team!TRANSCRIPT
Organizing an Engineering Team on Asana
Jack Heart Asana Engineering 2014 February 05
Define your goals and commitments.
Areas of Responsibility
http://www.quora.com/Asana/What-is-an-AoR-at-Asana
3
Key Results
• Establish clear company priorities every ~quarter • Every KR has an assignee • Shoot for 70% success — ambitious but achievable • CRIB Test: a good KR is clearly evaluated, result-oriented,
important, and big
4
Milestones
• Publicly commit to your sprint goals to hold yourself accountable
• Each team should generally always have a milestone (or be in the process of determining their next one)
• Maintain trust by planning and costing before picking a date
5
Launches
• Coordinate with other functions (marketing, user ops, etc.) !!
• Use this as a data source for e.g. overlaying on our usage metrics
6
Track your progress and your debt.
Product Opportunities vs. Product Details
• Anyone can and an idea to Product Opportunities (sorted by hearts). Everyone follows and discusses.
• An “opportunity” is upgraded to a Product Detail when it is ready to be built -- prioritized by a PM, costed by an Eng, and has designs attached.
8
Bugs
Bugs tagged with “Oncall” are auto-assigned to a current on-call engineer
9
Primary Projects
• Bias for starting with new projects every few months; we prefix our projects with the current episode
• Use section headers as milestones • Break tasks down into subtasks
and cost before doing the work • Project Leads spend energy
curating so that other project members always know the next task they should do
10
FOCUS: <Area> Projects
!• Track friction in any area (framework, testing, production,
code cleanup, ...) • Have a clear owner for the project • Revisit every few months and look for leveraged tasks • Different ways to organize: by hearts, by area, by priority,
by cost
11
Automate your workflow.
Exceptions
• We built an internal app similar to Airbrake that integrates with Asana (and intend to open source it)
• Tasks are automatically reopened if the exception happens in a later branch than resolving commit
13
Code Reviews
Phabricator has an Asana integration that auto creates and completes Asana tasks for code
14
Communicate, document, and standardize your
1:1 Projects
• Keep a meeting agenda for your 1:1s • Multihome tasks you want to discuss in person • Not just for reports and managers!
16
Interview Template
• Duplicate the template project for every interview • Assign questions beforehand to prevent repeats • Document tips and common answers in the notes
17
Onboarding Template
• Every new hire meets with people across the team for onboarding sessions
• Instructions for things like “Get on the team page” http://blog.asana.com/2013/02/onboarding-new-engineers/
18
&c.
• Hackathon Ideas • Questions for Metrics • Interesting Articles • Episode Template • Meeting Agenda • Team News • N00b Tasks • Engineering
Candidates • Experiment Results
• Engineering Blog Ideas • Outsourcable Projects • Contractors • Production Alerts • StatsDB Tables • Learning Lunches • Roadmap Week
Committees • ...
19