Yahoo! Service Engineers (SE) specialize in bridging the gap between system administration and development. SEs are tasked with delivering a reliable, consistent quality service through the use of best practices. They must understand network, OS, hardware, and customer use cases; and dive deep into the application internals.
In this talk, Jennifer will describe her journey with the Sherpa service at Yahoo! and lessons learned about building a reliable, consistent, and high-quality service from scratch.
The key takeaway from this talk will be to educate practitioners on successful strategies and pitfalls when building out a service.
20. Team
Sugges/on:
Don’t
talk
about
the
“devs”
request,
talk
about
Elaine’s
request.
Sugges/on:
Verify
that
your
team
has
the
same
vision.
20
11/11/13
21. Understand the vision.
§ Are
there
other
opGons,
open
source
or
not
within
the
company?
§ Are
there
other
opGons
outside
the
company?
§ Is
EVERYONE
on
the
same
page
about
what
the
service
is?
21
11/11/13
22. Vision Statement
§ Clear
statement
about
the
problem
that
the
service
is
solving.
›
DirecGon
›
IdenGty
management
›
Team
cohesion
New
product?
Be
part
of
creaGng
that
vision!
22
11/11/13
23. Sherpa’s Vision
..
Distributed
replicated
eventually
consistent
key
value
store
that
had
a
focus
on
scalability
..
23
11/11/13
28. Know Core Issues
§ Limit
the
scope
of
focus.
§ Focus
on
the
biggest
prioriGes.
28
11/11/13
29. Know Core Issues
§ Limit
the
scope
of
focus.
§ Focus
on
the
biggest
prioriGes.
›
Understand
Development
Methodology:
Waterfall,
Scrum,
?
29
11/11/13
30. Know Core Issues
§ Limit
the
scope
of
focus.
§ Focus
on
the
biggest
prioriGes.
›
Understand
Development
Methodology:
Waterfall,
Scrum,
?
›
IdenGfy
the
key
“Gme”
elements.
30
11/11/13
31. Know Core Issues
§ Limit
the
scope
of
focus.
§ Focus
on
the
biggest
prioriGes.
›
Understand
Development
Methodology:
Waterfall,
Scrum,
?
›
IdenGfy
the
key
“Gme”
elements.
›
Talk
to
them.
IdenGfy
their
key
terms.
“Enhancements”,
“Defects”
31
11/11/13
32. Know Core Issues
§ Limit
the
scope
of
focus.
§ Focus
on
the
biggest
prioriGes.
›
Understand
Development
Methodology:
Waterfall,
Scrum,
?
›
IdenGfy
the
key
“Gme”
elements.
›
Talk
to
them.
IdenGfy
their
key
terms.
“Enhancements”,
“Defects”
›
Establish
the
“Top”
list.
32
11/11/13
33. Create checklists
§
§
§
§
Not
because
people
are
dumb.
Not
only
because
of
automaGon.
When
things
break,
knowing
what
needs
focus.
During
normal
maintenance,
can
idenGfy
“not
OK”.
›
33
Audit
checklists
for
deployment
through
staging
environment.
11/11/13
40. Know State Transitions Explicitly.
§ When
component
is
installed
but
not
ready
40
11/11/13
41. Know State Transitions Explicitly.
§ When
component
is
installed
but
not
ready
§ When
the
colo
is
going
away
§ Go
through
What
If
Scenarios.
›
41
Document
them.
11/11/13
42. Know choke points explicitly.
§ Memory
§ Disk
§ Bandwidth
Now
and
in
6
months.
JIT?
42
11/11/13
43. Failure will happen.
§
§
§
§
43
There
are
no
0
failure
systems.
“Give
me
the
brain”
documentaGon
so
that
anyone
can
be
the
brain.
Repeatable/Reliable
failure
handling.
Run
fire
drills.
Really.
11/11/13
52. Documentation is not the cure.
§ DocumentaGon
doesn’t
guarantee
understanding.
›
OperaGons
Sandbox
Environment
§ Don’t
spend
Gme
at
the
end
documenGng.
52
11/11/13