Download - How to build a Top 10 game on Facebook
![Page 1: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/1.jpg)
+ Scaling Massive Flash-‐Projects -‐How to build a Top 10 game on
Facebook-‐
Philipp Moeser (Co-‐Founder & CTO) Ma8es Groeger (Senior Engineer)
![Page 2: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/2.jpg)
n Teams and Tools you need to build a Top Game
2
Teams & tools you need to build
a big game
![Page 3: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/3.jpg)
wooga – world of gaming
3
Key stats
6 games on Facebook, 39 million acJve users
3rd biggest social game developer worldwide
70% of users are female (age 20-‐60)
About wooga
Founded January 2009
Funding of $32m
InternaJonal team of 100 from over 20 countries in Berlin
Philipp Moeser -‐Co-‐Founder & CTO-‐
Ma8es Groeger -‐Senior Engineer-‐
![Page 4: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/4.jpg)
4
I. Challenges
II. Our philosophy
III. Environment
IV. Best pracJce examples
V. Summary
Agenda
![Page 5: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/5.jpg)
Agenda
5
I. Challenges
![Page 6: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/6.jpg)
§ Launched February 2010 § 12th Facebook game § 10 m monthly acJve user (MAU) § 800 engineering days invested
![Page 7: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/7.jpg)
§ Launched May 2010 § 14th biggest Facebook game § 8,7 m MAU § 1200 engineering days invested so
far
![Page 8: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/8.jpg)
§ Launched August 2011 § Top 10 fastest growing game § 3 m MAU § 500 engineering days invested so far
![Page 9: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/9.jpg)
How do games differ
n Quick prototyping
9
n Features get killed
n High complexity
![Page 10: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/10.jpg)
Challenges summary
10
n Complex
n Large
n Moving target
![Page 11: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/11.jpg)
11
Agenda
I. Challenges
II. Our philosophy
![Page 12: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/12.jpg)
12
Agile!
![Page 13: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/13.jpg)
13
Why agile?
![Page 14: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/14.jpg)
14
http
://10
year
sagi
le.o
rg/w
p-co
nten
t/upl
oads
/201
1/01
/bac
kgro
und.
jpg/
manifesto for agile soJware development
![Page 15: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/15.jpg)
Our philosophy: agile
n Individuals and interacJons over processes and tools
n Working socware over comprehensive documentaJon
n Customer collaboraJon over contract negoJaJon
n Responding to changes over following a plan
15
![Page 16: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/16.jpg)
Our philosophy: agile
n Individuals and interacJons over processes and tools
n Working socware over comprehensive documentaJon
n Customer collaboraJon over contract negoJaJon
n Responding to changes over following a plan
16
![Page 17: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/17.jpg)
17
talk
![Page 18: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/18.jpg)
Our philosophy: agile
18
n Individuals and interacJons over processes and tools
n Working socware over comprehensive documentaJon
n Customer collaboraJon over contract negoJaJon
n Responding to changes over following a plan
![Page 19: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/19.jpg)
19
prototypes
![Page 20: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/20.jpg)
Our philosophy: agile
20
n Individuals and interacJons over processes and tools
n Working socware over comprehensive documentaJon
n Customer collaboraJon over contract negoJaJon
n Responding to changes over following a plan
![Page 21: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/21.jpg)
21
collaborate
http
://as
pekt
mag
azin
.wor
dpre
ss.c
om/2
011/
05/1
6/ho
nig-
im-d
reiv
ierte
ltakt
/
![Page 22: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/22.jpg)
Our philosophy: agile
22
n Individuals and interacJons over processes and tools
n Working socware over comprehensive documentaJon
n Customer collaboraJon over contract negoJaJon
n Responding to changes over following a plan
![Page 23: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/23.jpg)
23
Collaborate.
http
://w
ww
.fina
ncia
lmel
tdow
n.co
m/th
e_so
lutio
n.ht
ml
best soluPon
![Page 24: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/24.jpg)
24
Why agile?
![Page 25: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/25.jpg)
Philosophy summary
n Internal communicaJon (instead of processes)
n Protoyping & iteraJng
n External communicaJon (instead of contracts)
n Flexibility
25
![Page 26: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/26.jpg)
26
Agenda
I. Challenges
II. Our philosophy
III. Environment
![Page 27: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/27.jpg)
27
Independence
![Page 28: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/28.jpg)
28
no frameworks
![Page 29: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/29.jpg)
29
no processes
![Page 30: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/30.jpg)
30
no manager
![Page 31: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/31.jpg)
31
Responsibility
![Page 32: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/32.jpg)
few roles
32
![Page 33: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/33.jpg)
small team
33
![Page 34: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/34.jpg)
34
CommunicaPon
![Page 35: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/35.jpg)
one room
35
one room
![Page 36: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/36.jpg)
n Independence
n Responsibility
n CommunicaJon
36
Team summary
![Page 37: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/37.jpg)
37
I. Challenges
II. Our philosophy
III. Environment
IV. Best pracJce examples
Agenda
![Page 38: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/38.jpg)
38
And now...
![Page 39: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/39.jpg)
39
hands on
![Page 40: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/40.jpg)
40
Agile rocks
![Page 41: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/41.jpg)
41
danger
![Page 42: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/42.jpg)
42
http
://w
ww
.lebe
nsm
ittel
foto
s.co
m/2
008/
07/2
0/sp
aghe
tti-u
nd-p
esto
/
![Page 43: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/43.jpg)
43
![Page 44: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/44.jpg)
Examples
n Unit tesJng
n Service layer
n ConJnuous integraJon
44
![Page 45: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/45.jpg)
Examples
n Unit tesJng
n Service layer
n ConJnuous integraJon
45
![Page 46: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/46.jpg)
What is unit tesJng?
46
A B
C
![Page 47: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/47.jpg)
One test per class
47
A B
C
T T T
![Page 48: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/48.jpg)
48
change of perspecPve
![Page 49: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/49.jpg)
49 http
://ch
eejy
g.de
vian
tart.
com
/art/
Hor
tPar
k-R
ecyc
ling-
bin-
1746
3971
0
encapsulaPon
![Page 50: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/50.jpg)
50 http
://ch
eejy
g.de
vian
tart.
com
/art/
Hor
tPar
k-R
ecyc
ling-
bin-
1746
3971
0
encapsulation
safety net
![Page 51: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/51.jpg)
51 http
://ch
eejy
g.de
vian
tart.
com
/art/
Hor
tPar
k-R
ecyc
ling-
bin-
1746
3971
0
encapsulation
safety net
acts as documentaPon
![Page 52: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/52.jpg)
52
![Page 53: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/53.jpg)
53
![Page 54: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/54.jpg)
54
![Page 55: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/55.jpg)
55
![Page 56: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/56.jpg)
56
![Page 57: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/57.jpg)
57
![Page 58: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/58.jpg)
58
![Page 59: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/59.jpg)
59
![Page 60: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/60.jpg)
Mock objects
n Simulated objects with controlled behaviour
n Same interface as the real object
n SuggesJng: Mockito Flex h8ps://bitbucket.org/loomis/mockito-‐flex
60
![Page 61: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/61.jpg)
Example
61
A B
C
![Page 62: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/62.jpg)
Dependency
62
A B
C
T
![Page 63: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/63.jpg)
Mock dependency
63
A B
M
T
![Page 64: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/64.jpg)
64
![Page 65: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/65.jpg)
Example
65
A RewardAssigner
IUser Energy
Controller
T
![Page 66: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/66.jpg)
66
![Page 67: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/67.jpg)
67
![Page 68: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/68.jpg)
68
![Page 69: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/69.jpg)
69
![Page 70: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/70.jpg)
70
![Page 71: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/71.jpg)
Examples
71
n Unit tesJng
n Service layer
n ConJnuous integraJon
![Page 72: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/72.jpg)
Client communicaJon
72
Client
Backend JS Facebook
![Page 73: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/73.jpg)
Keep your client independent
73
Client
Backend JS
Service Layer
![Page 74: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/74.jpg)
Now you can fake everything
74
Client
Fake Backend
Fake JS
Service Layer
Fake Facebook
![Page 75: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/75.jpg)
75
Benefits?
![Page 76: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/76.jpg)
76
easier to test
![Page 77: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/77.jpg)
77
target new platforms
![Page 78: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/78.jpg)
78
work offline
![Page 79: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/79.jpg)
79
How to implement?
![Page 80: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/80.jpg)
80
![Page 81: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/81.jpg)
81
decoraPon
![Page 82: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/82.jpg)
82
![Page 83: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/83.jpg)
83
![Page 84: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/84.jpg)
84
![Page 85: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/85.jpg)
85
![Page 86: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/86.jpg)
86
Compiler Constants
![Page 87: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/87.jpg)
87
Compiler Constants
![Page 88: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/88.jpg)
88
Compiler Constants
![Page 89: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/89.jpg)
89
Compiler Constants
![Page 90: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/90.jpg)
90
Compiler Constants
![Page 91: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/91.jpg)
91
Always build two versions???
![Page 92: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/92.jpg)
Examples
92
n Unit tesJng
n Service layer
n ConJnuous integraJon
![Page 93: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/93.jpg)
What it does
n ConJnuously applies quality control
n Runs on a server
n AutomaJcally builds and deploys
n Jobs: snapshot, nightly, release
93
![Page 94: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/94.jpg)
94
![Page 95: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/95.jpg)
95
![Page 96: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/96.jpg)
96
![Page 97: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/97.jpg)
97
![Page 98: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/98.jpg)
Test coverage
98
![Page 99: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/99.jpg)
99
Benefits?
![Page 100: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/100.jpg)
100
runnable version
![Page 101: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/101.jpg)
101
runnable version
run all tests
![Page 102: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/102.jpg)
102
runs all tests
arPsts see their changes
![Page 103: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/103.jpg)
103
runs all tests
perform heavy operaPons
![Page 104: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/104.jpg)
Wrap-‐up: best pracJce
n Special requirements for code
n Keep up producJon speed
n Keep your client independent
n Automate as much as possible
104
![Page 105: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/105.jpg)
105
I. Challenges
II. Our philosophy
III. Environment
IV. Best pracJce examples
V. Summary
Agenda
![Page 106: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/106.jpg)
Internal communication (instead of processes) Protoyping & iterating External communication (instead of contracts) Flexibility
I. Challenges
IV. Best pracPce examples
III. Environment!
II. Our philosophy
Unit testing | service layer | cont. integration
Independence | responsibility | communication
Internal communication | Protoyping & iterating | External communication | Flexibility
Large | complex | moving target
![Page 107: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/107.jpg)
107 wooga.com/jobs
![Page 108: How to build a Top 10 game on Facebook](https://reader033.vdocuments.us/reader033/viewer/2022051513/546563fbaf795939528b5c1d/html5/thumbnails/108.jpg)
108
Thank you!
Philipp Moeser CO-‐Founder & CTO wooga
Ma^es Groeger
Senior Engineer at wooga @Ma8esGroeger
Twi^er: @wooga wooga.com/jobs