Dobrze prowadzony projekt od A do Z - okiem programisty

A presentation at SpreadIT in November 2017 in Gliwice, Poland by Paweł Lewtak

Slide 1

Slide 1

L o n g

t e r m L o n g

t e r m L o n g

t e r m L o n g

t e r m L o n g

t e r m L o n g

t e r m L o n g

t e r m L o n g

t e r m I T

p r o j e c t s I T

p r o j e c t s I T

p r o j e c t s I T

p r o j e c t s I T

p r o j e c t s I T

p r o j e c t s I T

p r o j e c t s I T

p r o j e c t s @ p a w e l _ l e w t a k

Slide 2

Slide 2

P a w e ł

L e w t a k P a w e ł

L e w t a k P a w e ł

L e w t a k P a w e ł

L e w t a k P a w e ł

L e w t a k P a w e ł

L e w t a k P a w e ł

L e w t a k P a w e ł

L e w t a k D e v e l o p e r

@

G O G . c o m @ p a w e l _ l e w t a k

Slide 3

Slide 3

0 .

D i s l a i m e r 0 .

D i s l a i m e r 0 .

D i s l a i m e r 0 .

D i s l a i m e r 0 .

D i s l a i m e r 0 .

D i s l a i m e r 0 .

D i s l a i m e r 0 .

D i s l a i m e r

Slide 4

Slide 4

1 .

A n a l y s i s 1 .

A n a l y s i s 1 .

A n a l y s i s 1 .

A n a l y s i s 1 .

A n a l y s i s 1 .

A n a l y s i s 1 .

A n a l y s i s 1 .

A n a l y s i s

Slide 5

Slide 5

W h a t

t o

b u i l d ? W h a t

t o

b u i l d ? W h a t

t o

b u i l d ? W h a t

t o

b u i l d ? W h a t

t o

b u i l d ? W h a t

t o

b u i l d ? W h a t

t o

b u i l d ? W h a t

t o

b u i l d ?

Slide 6

Slide 6

W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ? W h a t

p r o b l e m

t o

s o l v e ?

Slide 7

Slide 7

T h e

r o o t

o f

a l l

e v i l

i n

p r o g r a m m i n g

i s m i s u n d e r s t a n d i n g

o f

t h e

p r o b l e m .

A s k

r i g h t q u e s t i o n s

t o

r i g h t

p e o p l e

b e f o r e

f i r s t

l i n e

o f c o d e . M a r i u s z

G i l S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m a r i u s z g i l / s t a t u s / 8 9 7 0 0 6 2 5 8 7 7 0 9 0 3 0 4 0

Slide 8

Slide 8

T e c h

p e o p l e

m u s t

s p e a k

t h e

l a n g u a g e

o f B u s i n e s s

p e o p l e ,

n o t

v i c e

v e r s a . S t e f a n

P r i e b s c h S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / b a e h r 1 7 / s t a t u s / 9 1 3 3 4 8 0 9 9 7 9 5 5 3 7 9 2 0

Slide 9

Slide 9

D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n D o m a i n

D r i v e n

D e s i g n

Slide 10

Slide 10

E v e n t

S t o r m i n g E v e n t

S t o r m i n g E v e n t

S t o r m i n g E v e n t

S t o r m i n g E v e n t

S t o r m i n g E v e n t

S t o r m i n g E v e n t

S t o r m i n g E v e n t

S t o r m i n g

Slide 11

Slide 11

W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e W a t e r f a l l

v s

A g i l e

Slide 12

Slide 12

T h e

O n l y

T h i n g

T h a t

I s

C o n s t a n t

I s

C h a n g e ​ H e r a c l i t u s

Slide 13

Slide 13

2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e 2 .

A r c h i t e c t u r e

Slide 14

Slide 14

M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e M o n o l i t h

v s

M i c r o s e r v i c e

Slide 15

Slide 15

y o u

s h o u l d n ' t

s t a r t

a

n e w

p r o j e c t

w i t h m i c r o s e r v i c e s M a r t i n

F o w l e r S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l S o u r c e :

h t t p s : / / w w w . m a r t i n f o w l e r . c o m / b l i k i / M o n o l i t h F i r s t . h t m l

Slide 16

Slide 16

S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d S e r v i c e

O r i e n t e d A r c h i t e c t u r e A r c h i t e c t u r e A r c h i t e c t u r e A r c h i t e c t u r e A r c h i t e c t u r e A r c h i t e c t u r e A r c h i t e c t u r e A r c h i t e c t u r e

Slide 17

Slide 17

C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e C l e a n

a r c h i t e c t u r e

Slide 18

Slide 18

Slide 19

Slide 19

Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e Y o u ' r e

n o t

u n i q u e

Slide 20

Slide 20

Slide 21

Slide 21

m i c r o s e r v i c e s m i c r o s e r v i c e s m i c r o s e r v i c e s m i c r o s e r v i c e s m i c r o s e r v i c e s m i c r o s e r v i c e s m i c r o s e r v i c e s m i c r o s e r v i c e s s e r v e r l e s s s e r v e r l e s s s e r v e r l e s s s e r v e r l e s s s e r v e r l e s s s e r v e r l e s s s e r v e r l e s s s e r v e r l e s s a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e a r t i f i c i a l

i n t e l l i g e n c e m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g m a c h i n e

l e a r n i n g b l o c k c h a i n b l o c k c h a i n b l o c k c h a i n b l o c k c h a i n b l o c k c h a i n b l o c k c h a i n b l o c k c h a i n b l o c k c h a i n n o s q l n o s q l n o s q l n o s q l n o s q l n o s q l n o s q l n o s q l v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y v i r t u a l / a u g m e n t e d

r e a l i t y i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s i n t e r n e t

o f

t h i n g s c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g c l o u d

c o m p u t i n g d e e p

l e a r n i n g d e e p

l e a r n i n g d e e p

l e a r n i n g d e e p

l e a r n i n g d e e p

l e a r n i n g d e e p

l e a r n i n g d e e p

l e a r n i n g d e e p

l e a r n i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g q u a n t u m

c o m p u t i n g

Slide 22

Slide 22

F a s h i o n a b l e

s o f t w a r e

c a r r i e s

r i s k .

C o n s i d e r t h e

b u s i n e s s

c o n t e x t

a n d

t a k e

r i s k s

w h e n

i t m a k e s

y o u r

b u s i n e s s

d i f f e r e n t . J o n

T o p p e r S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6 S o u r c e :

h t t p s : / / t w i t t e r . c o m / m i s s _ j w o / s t a t u s / 9 0 5 7 5 3 2 8 7 3 2 8 1 3 7 2 1 6

Slide 23

Slide 23

3 .

T e s t s 3 .

T e s t s 3 .

T e s t s 3 .

T e s t s 3 .

T e s t s 3 .

T e s t s 3 .

T e s t s 3 .

T e s t s

Slide 24

Slide 24

T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n T e s t

D r i v e n

D e s i g n

Slide 25

Slide 25

B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n B e h a v i o u r

D r i v e n D e v e l o p m e n t D e v e l o p m e n t D e v e l o p m e n t D e v e l o p m e n t D e v e l o p m e n t D e v e l o p m e n t D e v e l o p m e n t D e v e l o p m e n t

Slide 26

Slide 26

I f

i t ’ s

h a r d

t o

w r i t e

a

t e s t ,

i t ’ s

a

s i g n a l

t h a t

y o u h a v e

a

d e s i g n

p r o b l e m ,

n o t

a

t e s t i n g

p r o b l e m . K e n t

B e c k S o u r c e :

S o u r c e :

S o u r c e :

S o u r c e :

S o u r c e :

S o u r c e :

S o u r c e :

S o u r c e :

E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d E x t r e m e

P r o g r a m m i n g

E x p l a i n e d

b y

K e n t

B e c k

b y

K e n t

B e c k

b y

K e n t

B e c k

b y

K e n t

B e c k

b y

K e n t

B e c k

b y

K e n t

B e c k

b y

K e n t

B e c k

b y

K e n t

B e c k

Slide 27

Slide 27

4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w 4 .

C o d e

r e v i e w

Slide 28

Slide 28

Slide 29

Slide 29

5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . . 5 .

C o n t i n o u s

. . .

Slide 30

Slide 30

C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s i n t e g r a t i o n i n t e g r a t i o n i n t e g r a t i o n i n t e g r a t i o n i n t e g r a t i o n i n t e g r a t i o n i n t e g r a t i o n i n t e g r a t i o n

Slide 31

Slide 31

C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s C o n t i n o u s d e p l o y m e n t d e p l o y m e n t d e p l o y m e n t d e p l o y m e n t d e p l o y m e n t d e p l o y m e n t d e p l o y m e n t d e p l o y m e n t

Slide 32

Slide 32

Slide 33

Slide 33

6 .

M o n i t o r i n g 6 .

M o n i t o r i n g 6 .

M o n i t o r i n g 6 .

M o n i t o r i n g 6 .

M o n i t o r i n g 6 .

M o n i t o r i n g 6 .

M o n i t o r i n g 6 .

M o n i t o r i n g

Slide 34

Slide 34

S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c . S e r v e r s ,

s e r v i c e s ,

e t c .

Slide 35

Slide 35

7 .

M e t r i c s 7 .

M e t r i c s 7 .

M e t r i c s 7 .

M e t r i c s 7 .

M e t r i c s 7 .

M e t r i c s 7 .

M e t r i c s 7 .

M e t r i c s

Slide 36

Slide 36

B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s B u s i n e s s

M e t r i c s

Slide 37

Slide 37

8 .

A u t o m a t i o n 8 .

A u t o m a t i o n 8 .

A u t o m a t i o n 8 .

A u t o m a t i o n 8 .

A u t o m a t i o n 8 .

A u t o m a t i o n 8 .

A u t o m a t i o n 8 .

A u t o m a t i o n

Slide 38

Slide 38

I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t ! I f

i t

m o v e s ,

a u t o m a t e

i t !

Slide 39

Slide 39

9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n 9 .

D o c u m e n t a t i o n

Slide 40

Slide 40

S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E S t a r t

w i t h

R E A D M E

Slide 41

Slide 41

1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n 1 0 .

C o m m u n i c a t i o n

Slide 42

Slide 42

I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l I t ' s

n o t

a

s o f t

s k i l l

Slide 43

Slide 43

I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l ! I t ' s

c o r e

s k i l l !

Slide 44

Slide 44

I

w i s h

t h e

u n d e r s t a n d i n g

w e r e

m o r e w i d e s p r e a d

t h a t

w e

p l a t e a u

i n

c o d i n g

s k i l l m i d

c a r e e r ,

i t

i s

a l l

a b o u t

c o m m u n i c a t i o n a f t e r

t h a t . D e n t o n

G e n t r y ​ S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0 S o u r c e :

h t t p s : / / t w i t t e r . c o m / d g e n t r y / s t a t u s / 9 0 6 7 5 8 8 0 9 6 7 8 2 5 4 0 8 0

Slide 45

Slide 45

T h a n k

y o u ! T h a n k

y o u ! T h a n k

y o u ! T h a n k

y o u ! T h a n k

y o u ! T h a n k

y o u ! T h a n k

y o u ! T h a n k

y o u ! @ p a w e l _ l e w t a k

Slide 46

Slide 46

@ p a w e l _ l e w t a k