Você está na página 1de 19

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 • Engineering Blog Ideas


• Questions for Metrics • Outsourcable Projects
• Interesting Articles • Contractors
• Episode Template • Production Alerts
• Meeting Agenda • StatsDB Tables
• Team News • Learning Lunches
• N00b Tasks • Roadmap Week
• Engineering Committees
Candidates • ...
• Experiment Results

19

Você também pode gostar