►
From YouTube: Keynote: Does Anyone Speak Developer? Methods to Discover, Understand and Improve... Jasmine James
Description
Don’t miss out! Join us at our next event: KubeCon + CloudNativeCon Europe 2022 in Valencia, Spain from May 17-20. Learn more at https://kubecon.io The conference features presentations from developers and end users of Kubernetes, Prometheus, Envoy, and all of the other CNCF-hosted projects.
有人会说开发人员吗? 发现、理解和改进开发人员工作流程的方法 | Does Anyone Speak Developer? Methods to Discover, Understand and Improve Developer Workflows - Jasmine James, Engineering Manager, Twitter
A
A
This
is
a
continuation
of
my
talk
that
I
gave
in
kubecon
north
america
a
few
months
ago.
I
really
wanted
to
take
the
time
to
dive
deeper
into
some
of
the
methods
that
I
alluded
to
in
my
presentation
on
stage.
So
that's
what
we'll
be
doing
today,
all
right.
So,
let's
get
started
during
my
last
keynote.
I
talked
about
janice,
who
was
a
machine
learning
engineer
that
had
joined
a
new
company
and
was
facing
challenges
with
the
developer
experience.
A
A
A
A
As
we
talked
about
those
pain
points,
we
talked
about
these
a
b
and
c
d.
Completing
tasks
took
too
long
for
janice.
A
A
All
right,
so
these
are
the
four
tenets
of
developer
experience.
They're
really
borrowed
from
user
experience,
so
I
feel
like
you
can
apply
them
to
developer
experience
in
in
very
meaningful
ways.
There
are
discoverability
usability
capability
and
stability
if
you
need,
if
you've
seen
my
talks
before
I
love
a
good
acronym,
so
we're
going
to
use
these
four
tenants
to
keep
our
ducks
in
a
row.
A
So
let's
talk
about
discoverability,
first
and
foremost
for
janice,
it
was
very
difficult
to
find
the
right
software
and
best
practices.
As
I
mentioned,
she
often
relied
on
individuals
to
give
her
that
guidance,
which
meant
that
she
was
interrupting
their
productivity.
A
A
A
A
I
believe
that
it's
very
important
that
you
record
the
entire
developer
workflow
interaction,
because
it
serves
as
a
great
starting
point
to
actually
see
the
full
experience
end
to
end.
Many
times
when
you
individuals
are
facing
issues
within
one
part
of
it,
you
won't
get
the
context
of
how
they
got
to
that
point,
it's
also
important
to
capture
your
local
configuration
that
local
configuration
is
going
to
be
key
in
understanding.
A
Lastly,
interviews
it's
great
to
partner
with
those
vocal
customers
that
are
telling
you
about
their
discoverability
issues.
These
interviews
are
key
because
you
can
get
the
qualitative
information
and
also
hear
about
their
sentiment
firsthand
all
right.
Moving
on
the
next
thing
we
want
to
talk
about
is
usability.
A
Usability
in
janice's
case
comes
by
way
of
this
yaml
file,
she's
trying
to
deploy
her
application,
but
she's
having
issues,
because
there
was
no
template
that
she
could
use
in
order
to
figure
out
how
to
get
it
deployed
successfully.
A
Usability
really
comes
down
to
being
able
to
fulfill
a
certain
goal
or
goals
with
effectiveness,
efficiency
and
satisfaction.
All
right.
How
do
we
define
the
current
state
of
usability
to
create
better
understanding
about
how
people
are
using
things
and
if
they
can
use
it
effectively,
you
can
implement
usability
testing
usability
testing
gives
tasks
to
a
participant,
and
they
are
expected
to
complete
that
and
you
are
given
feedback
based
on
their
interaction
with
that,
and
we'll
talk
a
little
bit
more
about
that
in
a
minute.
A
A
Some
ways
that
you
can
improve.
This
are
golden
paths.
This
reduces
the
barrier
entry
for
like
significantly
for
most
new
users,
especially
those
like
janus.
You
can
invest
in
automation
and
error
prevention.
Providing
linters
is
a
great
way
to
prevent
users
from
failing
to
accomplish
what
they
set
out
to
do.
A
A
Usability
testing
refers
to
evaluating
a
product
or
service
by
testing
it
with
representative
users.
Typically,
during
that
test,
users
will
try
to
complete
a
task.
While
observers
watch
listen
and
take
notes,
the
goal
is
to
identify
any
usability
problems,
collect
qualitative
and
quantitative
data
and
determine
the
participant
satisfaction
with
the
product,
so
you're
getting
a
lot
of
value
out
of
this
interaction
with
customers.
A
How
do
we
go
about
it
doing
it?
Defining
the
task
is
the
next
step.
There
are
two
types
of
tasks:
open-ended
tasks
close
into
task.
Open-Ended
tasks
are
flexible
in
design
with
minimal
explanation,
and
by
leveraging
these
you
can
identify
usability
bottlenecks
or
elements
that
confuse
users
as
they
interact
with
your
product.
A
The
next
method
is
close
ended
tasks
close
into
tasks
are
very
specific
and
goal
oriented.
They
are
based
on
the
idea
that
there
is
one
correct
answer.
Close
ended
tasks
are
great
for
testing
specific
elements
such
as
use.
These
steps
in
cube
cuddle
to
create
three
replicas,
see
the
difference.
A
Next
up,
we
have
capabilities
in
this
scenario.
Janice
is
trying
to
find
capabilities
within
the
company's
cloud-native
environment
that
addresses
the
needs
of
ml
engineers.
There
are
many
features
for
back-end
engineers
or
even
front-end
engineers,
but
none
available
to
optimize
the
ml
engineers
workflow
such
as
model
and
experimentation
versioning.
A
So
how
do
we
learn
more
about
that
environment?
First
thing
that
we
can
do
is
just
one
of
I
love
this
activity.
It's
called
journey
mapping
journey
mapping
is
a
process
frequently
used
for
external
customers,
but
in
the
book
developer
relations
how
to
build
and
grow
a
successful
developer
program
by
carolyn
lucco
and
james
parton.
I
referenced
this
in
my
talk
last
time.
A
A
Surveys
is
another
great
way
to
learn
more
about
the
capabilities
and
what
the
gaps
are
here
are
some
of
the
metrics
that
you
can
use
to
track.
Nps
we
talked
about.
That
is
a
great
way
to
figure
out
what
the
gaps
are
capabilities
and
then
a
core
improvements
would
be
persona.
Map
capabilities,
as
you
learn
about
these
things.
Introducing
introducing
capabilities
specifically
personas
would
definitely
improve
that
improve
that
for
for
janus,
specifically
all
right
so
journey
mapping.
A
Let's
talk
about
what
that
actually
means,
so
journey
mapping
focus
on
that
focus
on
that
focuses
on
the
experience
of
a
single
persona
in
a
single
scenario,
with
the
single
goal.
Once
that
scope
and
scenario
is
agreed
upon,
you
then
identify
people
that
know
and
experience
that
regularly.
A
A
The
next
thing
that
you'll
need
to
do
is
map
the
feeling
at
the.
What
is
the
engineering
thing?
What
is
the
engineer,
thinking
and
feeling,
as
they
go
step
by
step,
so
you're
going
to
plot
that
journey,
and
if
there
are
multiple
channels
of
interaction
for
certain
steps?
It's
important
to
capture
these
differences,
especially
if
they're
not
widely
known
that
the
persona
participated
in
these.
A
If
there
are
multiple
decisions
that
could
be
captured
as
a
part
of
the
journey,
you
should
also
chart
those
out
after
you
have
that
initial
map
you
can
map
the
pain
points
looking
at
that
in
complete
journey
capture,
the
frustration
error
bottlenecks
and
where
those
things
are
where
capabilities
are
not
functioning.
As
expected,
it's
important
to
dive
deep
into
what
becomes
of
these
pain
points.
Does
the
customer
just
deal
with
it,
find
a
workaround
or
abandon
the
journey
completely?
A
Lastly,
you'll
have
to
analyze
the
this
full
journey
and
expectation
and
figure
out
what
you
want
to
focus
on.
First
in
improving
that
developer
experience
and
offering
the
right
capabilities
for
that
user
surveys.
I
think
we
all
are
aware
of
these
and
they're
widely
used
within
multiple
environments.
A
Here
we
have
janice
who's
experiencing
errors
as
she
tries
to
deploy
every
time
the
build
fails.
Janus
is
losing
confidence
in
the
tool,
so
we're
going
to
look
at
ways
to
improve
this
reliability.
Experience
for
janus
to
find
the
current
state
of
stability,
you
can
look
at
incident
management
data,
post-mortem
surveys
and
participate
in
focus
groups.
We'll
talk
more
about
those
in
a
second
metrics
that
you
can
use
to
track.
Reliability,
stability
and
reliability
within
your
environment
are
tool
capability,
uptime
and
mean
time
between
outages
key
improvements.
A
Intentional
postmortems
is
always
key
and
also
centralized
support,
which
improves
the
the
communication
channel
that
janice
has
to
use
in
order
to
figure
out.
What's
going
on
within
the
environment,
all
right,
the
two
under
methods
for
understanding
we're
going
to
dive
deep
on
right
now
is
post
mortems,
I'm
not
going
to
dive
too
deep
on
this,
because
this
is
pretty
common
within
engineering
environments,
so
I'm
going
to
focus
on
focus
groups.
A
So
what
is
a
focus
group
and
how
does
a
difference
from
different
from
a
regular
group?
The
main
difference
is
that
a
focus
group
has
a
specific,
focused
discussion
topic
and
has
a
trained
leader
and
facilitator.
A
A
You
could
have
a
customer
impacting
incident
where
you
can't
derive
the
sentiment
of
a
customer
and
how
it
really
impacted
them
in
a
survey,
but
you
would
get
that
those
specifics
within
a
focus
group
you'll
definitely
get
qualitative
data
for
focus
groups,
but
you
all.
You
have
to
make
sure
that
you
find
a
good
leader
to
conduct
this.
A
They
have
to
be
very
non-biased
and
offer
psychological
safety
so
that
people
feel
free
to
talk
about
their
feelings
and
about
what
they
experienced
within
within
the
stability
issues,
define
your
goals,
you
definitely
have
to
make
sure
you
have
clearly
defined
what
you
want
to
accomplish.
Why
you're
doing
it,
and
what
do
you
hope
to
learn
from
the
focus
group
that
should
frame
the
conversation?
A
A
Lastly,
you'll
need
to
analyze
the
data,
as
you
ask,
questions
dive
a
little
bit
deeper
and
gather
this
information.
Take
that
back
and
it
needs
to
result
in
some
actionable
items
that
you
can
implement
to
improve
that
experience
for
the
customers.
The
one
thing
not
to
do
in
this
case
is
to
gather
all
that
information
and
not
action
upon
it.
A
I
always
am
looking
to
connect
with
you
all.
This
has
been
an
amazing
experience
co-chairing
and
talking
to
you
all
about
your
developer
experience
and
how
you
would
like
to
improve
it.
I
highly
recommend
this
book
that
I
referenced
both
in
october
and
today
it's
a
very
great
way
to
make
sure
that
you're
building
bridges
with
your
developers
within
your
community
so
that
you
can
work
towards
improving
their
experience
in
moving
the
needle
on
actual
value
being
delivered
for
the
business
side.
Please
reach
out
on
twitter
at
go
jasmine,
ee
or
on
linkedin.