wrangling engineers

32

Upload: mariah

Post on 24-Feb-2016

35 views

Category:

Documents


0 download

DESCRIPTION

Wrangling Engineers. Producing technical yet passionate people. Matt Priestley Senior Producer. Who They Are. Highly trained Wicked smart Sometimes introverted, often eager In love with their craft. Who You Need To Be. The consigliere - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Wrangling Engineers
Page 2: Wrangling Engineers

Wrangling EngineersProducing technical yet passionate people

Matt PriestleySenior Producer

Page 3: Wrangling Engineers

Who They Are• Highly trained• Wicked smart• Sometimes

introverted, often eager

• In love with their craft

Page 4: Wrangling Engineers

Who You Need To Be• The consigliere• Detail man, store

minder, politician on their behalf

• Familiar with their cryptic language

• Precise & diligent

Page 5: Wrangling Engineers

Bungie’s Engineers• 40 brave souls, mostly generalists• Designated – not dedicated – as area

experts• Culturally enthusiastic• You want a hot new unscheduled feature? Sure!• Eager to suggest cool ideas to design and art• Co-inventors of our production process

Page 6: Wrangling Engineers

Halo: CE•Small company•Startup culture•Awesome and terrifying

Our Learning Curve

Halo 2•Engineers self-produce•No planned room for error •Little x-discipline planning•Painful resets & deadline crisis•Hurt the team

Halo 3•Producers get involved•Classic waterfall + buffer + ad-hoc•Much improved communication•Still crunchy, but better

Halo 3: ODST•Short timeframe labor of love•Planned mid-game stability•Statistical buffering•We nailed our CC and ZBR targets

Halo: Reach•The good habits learned in ODST•Strike teams for x-discipline production•Stability passes linked to internal play tests•We’re learning!

Page 7: Wrangling Engineers

Estimates

Page 8: Wrangling Engineers

Two Weeks• Sometimes it’s easy. Just copy/paste a cost

from a similar feature• Sometimes it’s not

• A problem unique to engineering. You know what you have and what you want, but not how to get there.

• Even if there are examples elsewhere in the industry, their estimates only apply to their tech, not ours

• Avoiding one-off features is partly why engineers love good architecture

Page 9: Wrangling Engineers

Iterative Clarity• We walk through the

questions they’ll eventually ask themselves• How do we break this down?• What’s your first step going to be?• Ok and then what?• How are you going to do that part?

• “Could you help me understand this better?”

LSP Config “2 weeks”

Architecture

API

API

Logic

Cli Srv

Data

Data

Data

Page 10: Wrangling Engineers

PitfallsItemizing is a natural engineering habit,

but some personalities make it harder

Overly-eagerThat’s like 30 minutes

I’ll just work the weekendI can do way more than

that

Overly-vaguePerhaps a month?I don’t have time to explain

thisIt’s done when it’s done

Page 11: Wrangling Engineers

Scheduling

Page 12: Wrangling Engineers

Halo 3: Waterfall• Bungie production was still

inexperienced at the start of H3• Waterfall seemed appropriate

at the time• We hit our dates, but engineers

weren’t satisfied• An engineer couldn’t say “Yes” to a

clever idea without risking crunch• Designers and artists were starved for

feature iteration

Page 13: Wrangling Engineers

When Will I Get My Feature?• Producers like to make promises. Waterfall

provides a framework to do so• “Your feature will be built by August 12th”• Without promises, dependencies become nightmarish

• Sadly, waterfall promises drift as new work arrives• Agile takes things to an opposite extreme:

handling surprises but discouraging long-horizon dates

• Bungie looked for a compromise

Page 14: Wrangling Engineers

Why Are We Slipping?Graphics Engineers

R&D overrunsIteration with art

UI EngineersLast minute work

Bug tidal wave from test

Gameplay EngineersConstant new

requestsBlocking bugs

Lead EngineersUnder-estimating

management costs

Etc…

Page 15: Wrangling Engineers

ODST: Statistical Buffers• Bugs, PTO, meetings, new

features, paternity, leadership. They all diminish availability

• But per engineer this is quite predictable!• Eng A gets 20% surprise work• Lead B spends 35% of his day in

meetings• We add statistical buffers per

engineer to each milestone Eng24Eng23Eng22Eng21Eng20Eng19Eng18Eng17Eng16Eng15Eng14Eng13Eng12Eng11Eng10Eng9Eng8Eng7Eng6Eng5Eng4Eng3Eng2Eng1Eng0

M7

Page 16: Wrangling Engineers

Standard vs. Statistical BufferStatistical BufferPer engineerMeasured &

adjustedNot just slop time;headroom for cool

ideasNot an accident!

We plan to use every drop

Standard BufferPer team or

featureUsually a guess

Safety net for when schedules

go wrongNobody wants to

use it but everyone

inevitably does

Vs.

Page 17: Wrangling Engineers

A Note on Slip• Tracking per-person buffers suddenly gave us a

naïve measurement of “productivity”• Culturally we had to decide whether this was

healthy• Happy “walkup” vs. sad “slip”• It’s valuable to know when an engineer is trailing behind• But is that really the role producers should play?

• At the end of the day we closed our eyes to this data and decided it was an internal engineering matter

Page 18: Wrangling Engineers

Iteration

Page 19: Wrangling Engineers

Communication Takes Work• Iteration stems from

communication• Bungie enjoys an

open floor plan, but it’s still an effort to keep people talking

• Devil’s bargain: “meeting purgatory” or lose touch?

Page 20: Wrangling Engineers

Halo Reach: “Strike Teams"• Virtual product units

• Engineering + art + design + production• Focused on getting one feature “all the way done”

• Less a status meeting; more a show & tell• A way to talk without taking our eyes off the game

• In-engine results are what matter• Expectations are short-term and clear

• Peers make commitments to one another• Producers track the work and help coordinate

Page 21: Wrangling Engineers

Scheduled IterationPaper plan

EmailKickoff mtg.

Bugs & polishPlay test

Strike team formedCoding first pass

Offset design / art

Strike teamcollaboration

Page 22: Wrangling Engineers

Bug Smashes

8 weeks Features

2 weeks Bug

SmashInternalPlaytest

“Milestone 7”

Page 23: Wrangling Engineers

Priorities

Page 24: Wrangling Engineers

Cake vs. PieArea Feature Priori

tyEngine Multi-threaded game loop P1Engine Havok version x integration P1Graphics

Shader creation tools P2

Graphics

Splitscreen performance P1

Gameplay

Explosion radius controls P2

Gameplay

4-way co-op P1

UI Cake P1UI Pie P1

Page 25: Wrangling Engineers

Priority Needs ConstraintArea Feature Priori

ty

Engine Havok version x integration P1

Graphics

Splitscreen performance P1

Gameplay

Explosion radius controls P2

Gameplay

***Surprise new feature!*** P1

UI Pie P1

Page 26: Wrangling Engineers

Bungie’s Backlog

Page 27: Wrangling Engineers

The Shopping List

Page 28: Wrangling Engineers

Three Day Work Week

Page 29: Wrangling Engineers

Implicit Priority

Page 30: Wrangling Engineers

The Big Picture

Page 31: Wrangling Engineers

So In Summary• Passionate engineers who want to say

“Yes”• A process that fits their culture• Using Waterfall at the project level…• …statistical per-person buffers…• …and Agile from day to day.

• Trying to do better each game• Strike teams, open floor plan, custom tools

Page 32: Wrangling Engineers

Questions?Holy %#!* we’re making video games!

Matt PriestleySenior Producer