your organization is killing your software · 2017-08-23 · routing presentation logic flock...

Post on 08-Aug-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Raffi Krikorian @raffi & raffi.krikorian@gmaill.com

YOUR ORGANIZATION IS KILLING YOUR SOFTWARE

Speed

Advanced Technologies Center

Mapping Safety Autonomy

Advanced Technologies Center

Mapping Safety Autonomy

Speed

We're programmers. Programmers are, in their hearts, architects, and the first thing they want 

to do when they get to a site is to bulldoze the place flat and build something grand. 

We're not excited by incremental renovation: tinkering, improving, planting flower beds.

Joel Spolsky

LOGICPRESENTATIONROUTING

T-Bird

T-Flock + Haplo

Flock(s)

Gizmoduck

Monorail

STORAGE & RETRIEVAL

PRESENTATIONROUTING

T-Bird

T-Flock + Haplo

Flock(s)

Gizmoduck

Monorail

STORAGE & RETRIEVAL

LOGIC

ROUTING

T-Bird

T-Flock + Haplo

Flock(s)

Gizmoduck

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATION

T-Bird

T-Flock + Haplo

Flock(s)

Gizmoduck

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

T-Bird

T-Flock + Haplo

Flock(s)

Gizmoduck

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Monorail MySQL

T-Bird

T-Flock + Haplo

Flock(s)

Gizmoduck

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Monorail MySQL

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Monorail MySQL

Redis

Memcache

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Flock

T-Bird

MySQL

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQL

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMS

TFE

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMS

API

Web

Monorail

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMS

API

Web

Monorail

TFE

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

Single codebaseAll computational logic are in-memoryEasy to scale horizontallyHandled by a central operations team

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Monorail MySQL

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

Any organization that designs a system (defined more broadly here than just information systems) will

inevitably produce a design whose structure is a copy of the organization's communication structure.

Melvin Conway

If you have four developers writing a compiler you will get a four-pass compiler.

Eric Raymond

Setting up the team says more about architecture than the architecture itself.

Me

Single codebaseAll computational logic are in-memoryEasy to scale horizontallyHandled by a central operations team

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Monorail MySQL

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFETeam

Single codebaseAll computational logic are in-memoryEasy to scale horizontallyHandled by a central operations team

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Monorail MySQL

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

teams

team

Ways must be found to reward design managers for keeping their organizations lean and flexible. There is need for a philosophy of system design management

which is not based on the assumption that adding manpower simply adds to productivity.

Melvin Conway

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

teams

team

Any organization that designs a system (defined more broadly here than just information systems) will

inevitably produce a design whose structure is a copy of the organization's communication structure.

Melvin Conway

Melvin Conway

Any organization that designs a system (defined more broadly here than just information systems) will

inevitably produce a design whose structure is a copy of the organization's communication structure.

designstructure

produce

organization

Melvin Conway (sorta)

system

.

Many smaller, clearly scoped servicesSingle responsibility principleIndependently managedClear ownership for each service

STORAGE & RETRIEVAL

LOGICPRESENTATIONROUTING

Redis

Memcache

Flock

T-Bird

MySQLTweet

User

Timeline

Social Graph

DMs

API

Web

Monorail

TFE

teams

team

0

2

4

6

8

10

1.5 2.5 3.5 4.5 5.5 6.5

Beautiful

Acceptable

Average

Poor

Destructive

1 2 3 4 5 5+

You know you have reached perfection of design not when you have nothing more to add, but when you

have nothing more to take away.

Antoine de Saint-Exupéry

64 bytes

32 bytes

64 bytes

48 bytes

32 bytes

Product should be a dictatorship.

Michael Arrington

1. Small teams can do big things.

2. Full stack teams keeps your architecture flexible.

3. Make your teams mimic your architecture.

4. Make product a dictatorship.

Me

0. It’s not all about the code!

Raffi Krikorian @raffi & raffi.krikorian@gmaill.com

THANKS!

top related