How do you help your team visualize the excitement behind an effort to build internet scale software ?
How it would evolve ? Any real world analogies ?
2. Software
engineer
-‐>
build
a
city,
why
?
• How
do
you
help
your
team
visualize
the
scale
/
opportunity
?
• How
do
you
get
them
excited
about
this
opportunity
?
• It’s
very
easy
for
people
to
visualize
the
beauty
and
scale
of
a
city
by
visually
seeing
each
and
every
part
and
then
assess
the
scale
of
how
it
all
came
together.
• A
lot
of
internet
scale
soEware
for
e.g.
an
ad
network,
ecommerce
site,
ad
exchange
etc.
is
similar
to
building
a
well
planned
city
as
they
need
to
accommodate
millions
of
people.
• It’s
hard
for
soEware
engineers
to
realize
that
while
they
may
never
have
the
skills
and
opportunity
to
build
a
great
city
but
working
on
internet
scale
soEware
presents
them
with
an
opportunity
to
build
something
similar.
• Let’s
consider
the
city
of
Dubai
as
an
example.
3. ì
This
was
the
main
street
of
Dubai
in
1990,
and
it
has
changed
just
slightly
over
the
last
few
years.
Dubai’s
evolution
This
is
the
main
street
of
Dubai
in
1990
and
it
has
just
changed
slightly
over
the
last
few
years
@vjhawar
4. ì
This
is
the
same
street
in
2003
Dubai’s
evolution
Photo
credits
-‐
hQp://www.meilach.com/human_interest_stories/images/dubai_02.jpg
@vjhawar
6. The
analogy
• If
you
build
a
great
city,
people
would
love
to
live
there
≈
Faithful
users.
• Planned
ciZes
do
not
choke
when
you
see
growth
≈
Scale
with
user
growth.
• You
need
to
offer
them
long
term
tangible
benefits
≈
Features
for
user
sZckiness.
• A
great
city
is
able
to
aQract
more
families,
friends
≈
Referral
among
users.
• Build
for
long
term
≈
User
plaaorms
don’t
give
return
on
day
1.
• A
well
connected
city
≈
How
well
is
your
plaaorm
connected
to
the
internet.
• AQract
more
social
and
financial
investment
≈
New
users,
pivot
to
new
ideas.
• A
city
never
sleeps
≈
You
are
always
on,
can’t
afford
to
keep
going
down.
• MulZ
modal
transportaZon
systems
≈
Scalable
backend
infrastructure.
• You
know
and
care
about
the
people
≈
You
need
analyZcs
to
know
your
users.
• A
city
needs
law
and
order
≈
You
can’t
cheat
users,
need
to
fight
bots,
frauds.
• You
need
clean
administrators
≈
You
need
to
commit.
• The
list
can
go
on
and
on
…
@vjhawar
7. A
beautiful
experience
• It’s
a
beauZful
experience
to
build
masterpieces
in
a
city,
which
people
will
appreciate
every
Zme
they
visit
them.
• You
could
build
the
most
complex
and
nimble
infrastructure
at
the
lowest
cost
and
help
everybody
be
more
producZve.
• Appreciate
diversity
-‐
you
build
with
diversity
and
you
build
for
diversity.
• Diversity
brings
up
many
interesZng
problems
which
are
not
only
hard
to
solve
but
keep
evolving
over
Zme.
• You
build
stuff
which
affects
lives
of
millions
of
people
regularly.
• You
need
to
be
ahead
of
Zme.
• No
two
ciZes
are
the
same,
every
city
has
it’s
own
unique
culture
and
you
can
now
help
create
this
culture.
@vjhawar
8. ì
You
• You
may
never
get
a
chance
to
build
a
beauZful
city,
you
sZll
have
a
chance
to
build
a
beauZful
and
scalable
soEware
which
can
aQract
millions/billions
of
users
and
experience
the
same
thrill
and
elevaZon.
• You
could
sow
the
seed
for
long
term
and
build
something
which
stands
tall
against
evolving
challenges.
• You
could
build
the
stack
in
a
very
short
Zme
and
experience
the
usage
by
millions
of
real
world
users,
while
it
takes
many
decades
to
build
great
ciZes.
@vjhawar