1
00:00:00,150 --> 00:00:08,070
Was? 
9 zufolge 57 von einfach 

2
00:00:08,070 --> 00:00:10,830
komplex. 
Heute zum Thema Death Ops und 

3
00:00:10,830 --> 00:00:15,070
CICD Wir lösen gleich auf, was 
das bedeutet, aber erstmal Moin 

4
00:00:15,070 --> 00:00:17,350
Burkhard. 
Moin Gerrit und eigentlich schon

5
00:00:17,350 --> 00:00:20,030
wieder guten Abend. 
Wieder ein bisschen später am 

6
00:00:20,030 --> 00:00:21,430
Abend aber. 
Wir sind in Hamburg, wir sagen 

7
00:00:21,430 --> 00:00:22,830
immer Moin. 
Ah, das stimmt ja, da hast 

8
00:00:22,830 --> 00:00:25,230
Recht. 
Ja und bloß nicht moin Moin, nee

9
00:00:25,510 --> 00:00:28,270
verhoffen sich die Touristen. 
Genau, ja, später Abend, du 

10
00:00:28,270 --> 00:00:32,870
sagst es also wir geben es fast 
noch volle Mühe hier zum Thema 

11
00:00:32,870 --> 00:00:37,630
Deffops und CICD und als 
Vorbereitung habe ich mir mal 

12
00:00:37,630 --> 00:00:39,350
eine alte Folge von uns 
angehört. 

13
00:00:39,630 --> 00:00:43,190
Folge 10 das klingt jetzt schon 
ganz schön weit weg, ja, wenn 

14
00:00:43,190 --> 00:00:45,870
man einfach weiß, dass wir jetzt
bei 57 sind, also es ist über 

15
00:00:45,870 --> 00:00:47,950
ein Jahr her eigentlich, 
inzwischen haben schon ganz 

16
00:00:47,950 --> 00:00:50,230
schön was runtergespult und da 
kann man auch mal wieder ein 

17
00:00:50,230 --> 00:00:52,430
bisschen was ja zum Teil 
wiederholen, aber auch mal 

18
00:00:52,430 --> 00:00:54,510
vertiefen und vielleicht sagst 
du da heute auch was ganz 

19
00:00:54,510 --> 00:00:57,310
anderes zu, wer weiß. 
Ich habe es mit Absicht nicht 

20
00:00:57,310 --> 00:00:59,680
angehört. 
Dann weiß ich wenigstens nicht, 

21
00:00:59,680 --> 00:01:01,040
was ich wiederhole oder was ich 
vertiefe. 

22
00:01:01,040 --> 00:01:05,560
Damals war Cecd so ein. 
Das ist übrigens Continuous 

23
00:01:05,560 --> 00:01:09,120
Integration und Continuous 
Development, ein Teilthema einer

24
00:01:09,120 --> 00:01:11,040
Folge für Software Development 
Tools. 

25
00:01:11,360 --> 00:01:14,360
Heute soll es um dev Ops und 
Ciacd gehen und deswegen wollen 

26
00:01:14,360 --> 00:01:16,440
wir natürlich erstmal verstehen,
was ist da vorab, was ist denn 

27
00:01:16,440 --> 00:01:18,760
cicd, wie hängt das miteinander 
zusammen. 

28
00:01:19,350 --> 00:01:23,230
Was gibt es da für Phasen? 
Was gibt es da für Tools, wie 

29
00:01:23,230 --> 00:01:26,110
ist deine persönliche Erfahrung,
weil du bist eigentlich ja bist 

30
00:01:26,110 --> 00:01:29,150
da quasi Teil eines sehr kleinen
Teams hier bei der High Sinware 

31
00:01:29,150 --> 00:01:32,390
und und daher auch auf jeden 
Fall Dev Ops Ingenieur könnte 

32
00:01:32,390 --> 00:01:35,230
man sagen, also Development und 
Operations liegen voll in deiner

33
00:01:35,230 --> 00:01:38,350
Hand und zwangsweise ja genau 
zwangsweise richtig. 

34
00:01:40,150 --> 00:01:42,150
Gucken wir mal, was wir aus der 
Folge so machen. 

35
00:01:42,150 --> 00:01:45,630
Ja, lass uns mal starten. 
Ja, was ist denn für dich oder 

36
00:01:45,630 --> 00:01:48,190
was nicht, was ist für dich? 
Erklär doch mal uns, was ist was

37
00:01:48,190 --> 00:01:52,190
ist Death orps was ist da auch 
insbesondere der neue Ansatz 

38
00:01:52,190 --> 00:01:54,510
gegenüber dem traditionellen, 
Ich sag mal 

39
00:01:54,510 --> 00:01:57,510
softwareentwicklungsansatz. 
Development Operation, das heißt

40
00:01:57,510 --> 00:02:00,230
Glaube ich entlang. 
Ja genau, also ich, ich glaube 

41
00:02:00,230 --> 00:02:04,230
Devob steht für alles, was 
außerhalb des eigentlichen puren

42
00:02:04,230 --> 00:02:07,590
Code entwickelns ist. 
Was also Code entwickeln zum 

43
00:02:07,590 --> 00:02:09,789
Feature des eigentlichen 
Produktes, was ich bauen möchte?

44
00:02:11,600 --> 00:02:14,400
Das verdient einen eigenen 
Namen, weil halt heutzutage ja 

45
00:02:14,400 --> 00:02:17,520
so ein Stück Anwendung. 
Ich wage gar nicht zu sagen, was

46
00:02:17,520 --> 00:02:19,280
es eigentlich ist, was 
rauskommt, weil es kann ja so 

47
00:02:19,280 --> 00:02:22,760
versatil sein, früher war es 
halt meistens einfach ein 

48
00:02:23,160 --> 00:02:27,320
monolithische Software, ganz oft
für den Desktop geschrieben, da 

49
00:02:27,320 --> 00:02:29,360
kommen wir ja her und heute ist 
es halt irgendwie Cloud 

50
00:02:29,360 --> 00:02:31,920
basierter Kram, der im Notfall 
gar nicht auf einem Server 

51
00:02:31,920 --> 00:02:34,400
läuft, sondern auf ganz vielen 
mit verteilten Datenbanken und 

52
00:02:34,400 --> 00:02:39,200
so weiter und sofort und die 
Development Operations oft sind 

53
00:02:39,200 --> 00:02:41,720
die auch wieder, oft muss man da
auch ein bisschen coden. 

54
00:02:42,310 --> 00:02:45,350
Oder es gibt Low Coat, 
Frameworks und so weiter ist 

55
00:02:45,350 --> 00:02:49,630
quasi der ja der surrounding 
Code der es mir erlaubt das 

56
00:02:49,630 --> 00:02:51,790
ganze Ding quasi an den Mann zu 
bringen. 

57
00:02:51,790 --> 00:02:53,750
Sag ich mal. 
Ja, also von der von während 

58
00:02:53,750 --> 00:02:56,670
sich beim Coden ja tatsächlich 
irgendwie wieso n ja wieso n 

59
00:02:56,670 --> 00:02:59,510
Ingenieur einfach auf dem Blatt 
Papier quasi meine Sachen mache 

60
00:02:59,710 --> 00:03:02,870
ich das ja noch nicht am Kunden,
wenn ich irgendwas skalierbar am

61
00:03:02,870 --> 00:03:05,270
Kunden haben will, dann wird es 
ein ziemlich komplex heutzutage 

62
00:03:06,030 --> 00:03:09,950
und und wie ich das quasi wie 
ich den ganzen Prozess 

63
00:03:09,950 --> 00:03:13,190
organisiere bis ich zum Kunden 
kriege und wie oft ich zum 

64
00:03:13,190 --> 00:03:15,750
Kunden kriege und wie ich das 
quasi manage mit verschiedenen 

65
00:03:15,750 --> 00:03:17,950
Versionen von dem einen Ding und
alles dieses. 

66
00:03:19,040 --> 00:03:21,960
Beschreibt Deavops und ich hab 
mir ein ganz kleines Bild 

67
00:03:21,960 --> 00:03:23,440
überlegt. 
Ich mal gucken, ich hab's nicht 

68
00:03:23,440 --> 00:03:25,840
komplett durch überlegt für 
diese Folge, mal gucken wie weit

69
00:03:25,840 --> 00:03:28,630
wir kommen. 
Aber ich finde, es ist n gutes 

70
00:03:28,630 --> 00:03:33,070
Startbild und ich nehm das den 
das den Autobau, den kennt ja 

71
00:03:33,070 --> 00:03:36,350
jeder in Deutschland haben ja 
auch n paar Autobauer und im 

72
00:03:36,350 --> 00:03:39,550
Vergleich den vielleicht n 
Dreirad oder irgendsowas ja und 

73
00:03:40,190 --> 00:03:43,990
der moderne Autobau, der ist 
nämlich sehr ähnlich wie das 

74
00:03:43,990 --> 00:03:47,750
moderne Softwareentwicklung. 
Also jetzt mal ein Beispiel 

75
00:03:48,590 --> 00:03:52,910
warum weil moderne 
Softwareentwicklung halt, da hab

76
00:03:52,910 --> 00:03:55,670
ich halt nicht mehr alle Teile 
die ich brauche selber in der 

77
00:03:55,670 --> 00:03:58,470
Garage nämlich das Beispiel vom 
ich schraube ein Dreirad 

78
00:03:58,470 --> 00:04:00,990
zusammen, das kann dann schon so
ich bin eine Firma die baut 3 

79
00:04:00,990 --> 00:04:03,430
Räder dann hab ich vielleicht 
alles was ich brauche. 

80
00:04:04,520 --> 00:04:07,120
Alle Materialien, alle schrauben
und so weiter bei mir selber in 

81
00:04:07,120 --> 00:04:10,680
der Garage und kann 3 Räder 
produzieren und bring die raus. 

82
00:04:10,680 --> 00:04:13,520
Ja also ich kann also da kann 
ich alles selbst machen. 

83
00:04:13,520 --> 00:04:16,600
Der Designprozess des Dreirads, 
ich setz mich halt hin mal das 

84
00:04:16,600 --> 00:04:19,600
auf auf dem Blatt Papier oder im
CAD Programm hab vielleicht noch

85
00:04:19,600 --> 00:04:22,920
3 D Drucker da rumstehen und so 
weiter kann dann quasi die Teile

86
00:04:22,920 --> 00:04:26,280
produzieren also ganz viele 
Reifen ganz viele Rahmen vom 

87
00:04:26,280 --> 00:04:28,440
Dreirad ganz viele Sitze und 
eine Stange hinten und. 

88
00:04:28,950 --> 00:04:32,750
Und kann das quasi aus eigener 
Kraft, quasi und ohne viele 

89
00:04:32,750 --> 00:04:35,710
Abhängigkeiten rausbringen. 
Ja so n Beirat, so war 

90
00:04:35,710 --> 00:04:38,350
Softwareentwicklung früher ja, 
ich hatte nicht so viele 

91
00:04:38,350 --> 00:04:40,830
Abhängigkeiten, ich musste nicht
irgendwie aus dem Internet noch 

92
00:04:40,830 --> 00:04:42,470
was runterladen um was 
hinzukriegen. 

93
00:04:43,390 --> 00:04:45,470
Ich nehme das Beispiel, ich 
hatte keine großen 

94
00:04:45,470 --> 00:04:47,550
Zuliefererketten oder 
Irgendsowas, ja keine 

95
00:04:47,550 --> 00:04:49,870
Abhängigkeiten. 
Ne, ich war selber in der Lage 

96
00:04:49,870 --> 00:04:52,590
ohne Abhängigkeiten mit Sachen 
zu schaffen. 

97
00:04:52,590 --> 00:04:55,150
Ja und deswegen war der Prozess 
auch nicht so kompliziert und 

98
00:04:55,150 --> 00:04:57,230
deswegen gab es früher auch 
dieses Wort Deverbots eigentlich

99
00:04:57,230 --> 00:04:58,950
nicht so. 
Weil am Ende hab ich n Stück 

100
00:04:58,950 --> 00:05:00,790
kurz geschrieben, dann war n 
make file dran, dann drück ich 

101
00:05:00,790 --> 00:05:04,110
auf make, dann wurde dann ne 
Executive rausgebaut, den hab 

102
00:05:04,110 --> 00:05:06,350
ich dann irgendwo hingeschickt 
und da war es so gut ja mehr 

103
00:05:06,350 --> 00:05:08,150
oder weniger vereinfacht gesagt 
ja. 

104
00:05:08,950 --> 00:05:12,030
Und heute ist Software ist ein 
Softwareprodukt eher so 

105
00:05:12,030 --> 00:05:17,030
anzusehen wie n wie n. 
Neues modernes Auto und ich muss

106
00:05:17,030 --> 00:05:19,150
mich halt um. 
Ich brauche Leute die Design die

107
00:05:19,150 --> 00:05:22,190
Reifen in ne andere Karosserie, 
motorenbau und so weiter und ich

108
00:05:22,190 --> 00:05:25,270
hab ganz viele Teile die Teile 
kommen gar nicht aus von einem 

109
00:05:25,270 --> 00:05:27,350
Entwickler sondern von ganz 
vielen, vielleicht sogar gar 

110
00:05:27,350 --> 00:05:29,630
nicht von einem Haus, sondern 
ich hab da noch Abhängigkeiten, 

111
00:05:29,630 --> 00:05:31,670
Zulieferer Open Source 
Komponenten das sind die 

112
00:05:31,670 --> 00:05:33,670
Zulieferer. 
Ich kaufe zum Beispiel irgendwo 

113
00:05:33,670 --> 00:05:36,110
Knöpfe ein und sowas die ich 
dann verbaue modular. 

114
00:05:37,110 --> 00:05:40,270
Und auf einmal hab ich einen hab
ich ein riesen komplexes Produkt

115
00:05:40,270 --> 00:05:42,870
was ich managen muss und es ist 
nicht mehr so einfach das so 

116
00:05:42,870 --> 00:05:45,750
zusammenzubauen, sondern auch 
der Prozess des Zusammenbauens 

117
00:05:45,750 --> 00:05:47,430
wenn ich alle Teile 
zusammenbringen will. 

118
00:05:48,270 --> 00:05:51,870
Ist halt, ist halt einer wo ich 
Abhängigkeiten beachten muss wo 

119
00:05:51,870 --> 00:05:54,350
ich neue Versionen abhängig 
beachten muss. 

120
00:05:54,350 --> 00:05:57,190
Ne zum Beispiel wird ja mal 
vielleicht n Fehler aus einem 

121
00:05:57,190 --> 00:05:59,630
Zuliefererteil ausgebessert und 
ich hab ne neue Version. 

122
00:05:59,630 --> 00:06:00,750
Ich, ich spring mal kurz rein 
das. 

123
00:06:00,750 --> 00:06:02,790
Ist ja das kenn ich. 
Jetzt kenn ich mich nur zufällig

124
00:06:02,790 --> 00:06:04,270
bisschen aus in der 
Automobilindustrie. 

125
00:06:04,350 --> 00:06:07,310
Ein bisschen muss ich sagen und 
du beziehst das jetzt sogar 

126
00:06:07,310 --> 00:06:10,070
alles nur auf das Auto und du 
sagst jetzt okay das ist dev 

127
00:06:10,070 --> 00:06:11,990
ops, weil da so viele 
verschiedene Zulieferer sind. 

128
00:06:11,990 --> 00:06:15,310
Denk das nochmal ein bisschen 
weiter und denk mal in der 

129
00:06:15,310 --> 00:06:17,510
wirklich vertikalen Lieferkette 
von dem Auto, wo fängt das 

130
00:06:17,510 --> 00:06:20,190
eigentlich alles an, das fängt 
sogar an ich sag mal. 

131
00:06:21,280 --> 00:06:23,360
In einer Eisenerzmine, da wird 
das Eisen abgebaut, da wird 

132
00:06:23,360 --> 00:06:26,800
daraus irgendwie stahl gemacht, 
dann wird Stahl in Form 

133
00:06:26,800 --> 00:06:30,480
gebracht, dann wird dieses in 
Form gebrachte Stück Stahl ein 

134
00:06:30,480 --> 00:06:33,120
Auto geschraubt, dann wird das 
aber auf den Zug gesetzt, dann 

135
00:06:33,120 --> 00:06:34,800
wird es irgendwo hingeliefert, 
dann wird so ein Händler 

136
00:06:34,800 --> 00:06:36,560
gestellt, dann wird es 
ausgeliefert, dann ist noch eine

137
00:06:36,560 --> 00:06:40,320
Bank die das Ganze finanziert et
cetera PP ja, das heißt also ein

138
00:06:40,320 --> 00:06:42,760
Autobau ist und und vor allem 
ein Auto auch an den Mann 

139
00:06:42,760 --> 00:06:44,600
bringen oder an die Frau, das 
ist noch viel viel längerer 

140
00:06:44,600 --> 00:06:47,400
Prozess und in der 
Automobilindustrie, sprich oder 

141
00:06:47,400 --> 00:06:49,630
auch in der. 
Industrie allgemein spricht man 

142
00:06:49,630 --> 00:06:51,710
dann von von der vertikalen 
Integration. 

143
00:06:51,710 --> 00:06:54,750
Ne von unten nach oben. 
Die gesamte Wertschöpfungskette 

144
00:06:55,310 --> 00:06:58,710
ist vertikal integriert, also so
wäre da das das Beispiel 

145
00:06:58,710 --> 00:07:00,350
vielleicht in Autobahnindustrie 
vielleicht noch n Tick 

146
00:07:00,350 --> 00:07:01,950
korrekter, oder? 
Ja, wahrscheinlich. 

147
00:07:01,950 --> 00:07:04,990
Ich hab es natürlich jetzt so 
verkürzt, dass es mit meinem 

148
00:07:04,990 --> 00:07:06,470
Beispiel, ich glaube, die 
Softwareentwicklung ist dann 

149
00:07:06,470 --> 00:07:09,590
auch nicht ganz so komplex, aber
ich wollte quasi darauf hinaus, 

150
00:07:09,590 --> 00:07:12,710
dass quasi zum Beispiel ein 
Entwickler oder Entwicklerteam 

151
00:07:12,710 --> 00:07:15,270
sich um nur um Reifen kümmert 
und einen Plan hat von den 

152
00:07:15,270 --> 00:07:17,550
Reifen und das Horsecode ist 
halt der Plan von dem Reifen. 

153
00:07:18,670 --> 00:07:20,830
Hat der Reifen mal an das ganze 
Ding angeschraubt werden? 

154
00:07:20,830 --> 00:07:23,910
Und ja, und das ist ein 
komplexes Phänomen. 

155
00:07:23,910 --> 00:07:26,470
Und das ist also, das heißt, du 
sagst also DEV Ops es erstmal 

156
00:07:27,030 --> 00:07:29,350
auf, ermöglicht dir 
Aufgabenteilung oder so. 

157
00:07:29,350 --> 00:07:31,670
Ich geb da noch n paar 
Stichworte, also wenn man deops 

158
00:07:31,670 --> 00:07:33,950
einfach mal Google, dann kommt 
als allererstes immer so ne. 

159
00:07:33,700 --> 00:07:36,780
So n unendlich Zeichen so ne so 
ne horizontale 8. 

160
00:07:36,780 --> 00:07:39,420
Also so ne liegende 8 ne 
unendlich und da steht dann 

161
00:07:39,420 --> 00:07:43,180
immer sowas drinne wie Plan also
planen und dann Code und dann 

162
00:07:43,180 --> 00:07:45,940
steht da drin Build und Test und
das sind alles Sachen die unter 

163
00:07:45,940 --> 00:07:49,620
Death fallen und dann geht es in
die in den zweiten Ring rein und

164
00:07:49,620 --> 00:07:53,900
da ist dann Release deploy 
Operate und Monitor und dann 

165
00:07:53,900 --> 00:07:57,630
geht's wieder los mit Plan. 
Die Sachen, die ich jetzt 

166
00:07:57,630 --> 00:07:59,870
zuletzt gesagt habe, fallen 
unter Operations in den rechten 

167
00:07:59,870 --> 00:08:03,100
Ring dieser liegenden 8. 
Ja, genau, aber das ist so. 

168
00:08:03,100 --> 00:08:05,580
N Auto plant ja gut, vielleicht 
plant jemand irgendwie mal das 

169
00:08:05,580 --> 00:08:07,820
Gesamtdesign von so einem Auto 
wie das aussehen soll von außen 

170
00:08:07,820 --> 00:08:09,980
ne, aber diese ganzen 
Einzelteile werden ja auch 

171
00:08:09,980 --> 00:08:12,740
nicht, das sind ja verschiedene 
Leute die das planen, diese 

172
00:08:12,740 --> 00:08:15,620
Phase gibt es auch im Autobau 
planen von von einem bestimmten 

173
00:08:15,620 --> 00:08:18,980
Dingen und ja ich sage schon. 
Haben das auch in der Software 

174
00:08:18,980 --> 00:08:21,660
es vielleicht gar nicht mehr 
einen ganzen globalen Plan gibt?

175
00:08:21,660 --> 00:08:24,620
Es gibt keinen, keinen 
wahrscheinlich, der alles in 

176
00:08:24,620 --> 00:08:28,700
jedem Detail weiß, sondern es 
gibt wir, wir haben ja so eine 

177
00:08:28,700 --> 00:08:31,980
Software Architektur die 
verteilt wird, also es gibt 

178
00:08:31,980 --> 00:08:34,900
bestimmte Unteraufgaben, es gibt
die UI Entwicklung, also nur 

179
00:08:34,900 --> 00:08:37,900
Frontend, es gibt die Backend 
Leute, es gibt die Leute machen 

180
00:08:37,900 --> 00:08:41,299
authentifizierungs Integration, 
die nächsten machen 

181
00:08:41,299 --> 00:08:43,419
Konnektivität zu irgendeiner 
Hardware oder irgend sowas sind 

182
00:08:43,419 --> 00:08:46,380
alles verschiedene Teile die 
alle verschieden geplant werden 

183
00:08:46,780 --> 00:08:50,020
und die auch verschieden, also 
die auch quasi auf Teileebene 

184
00:08:50,020 --> 00:08:53,470
getestet werden. 
Also Plan coden, also quasi 

185
00:08:53,470 --> 00:08:55,590
zusammenbauen und dann testen. 
Was habe ich da gemacht. 

186
00:08:55,590 --> 00:09:00,230
Ja, das passiert halt erstmal 
auf ganz ganz ganz nah am Level.

187
00:09:00,230 --> 00:09:03,510
Ja ich teste ist das dreht das 
Rad quasi rund, da habe ich 

188
00:09:03,510 --> 00:09:05,070
vielleicht einen Test. 
Vielleicht können wir ein 

189
00:09:05,070 --> 00:09:06,910
bisschen weg von diesem Auto. 
Irgendwie kann ich es noch nicht

190
00:09:06,910 --> 00:09:09,950
so ganz damit verstehen, wenn 
ich ehrlich bin, so wie ich es 

191
00:09:09,990 --> 00:09:13,030
verstanden habe, ist ja dev Ops 
die Kombination aus Entwicklung 

192
00:09:13,030 --> 00:09:15,550
und Betrieb, das heißt, ich habe
auf der einen Seite Software 

193
00:09:15,550 --> 00:09:17,910
Entwicklung dazu gehört die 
Planung, die Entwicklung selbst.

194
00:09:18,340 --> 00:09:21,260
Natürlich auch das testen 
klassische Entwicklungsaufgaben 

195
00:09:21,260 --> 00:09:23,860
schon immer entwicklungsaufgaben
gewesen und auf der anderen 

196
00:09:23,860 --> 00:09:26,900
Seite habe ich Aufgaben des 
Betriebs von Software und des 

197
00:09:26,900 --> 00:09:28,500
Ausrollens. 
Also dazu gehört dann zum 

198
00:09:28,500 --> 00:09:31,380
Beispiel das Ausrollen, also das
Deployment ne, aber eben das 

199
00:09:31,380 --> 00:09:33,940
auch das Überwachen, also zum 
Beispiel Server überwachen oder 

200
00:09:34,380 --> 00:09:36,660
Auslastung dieser Server zu 
überwachen etc. 

201
00:09:36,700 --> 00:09:40,900
Und das nach meinem Verständnis 
wird in Dev Ops eben kombiniert 

202
00:09:40,900 --> 00:09:43,980
beziehungsweise ist dev Ops 
irgendwie so eine Art Sammlung 

203
00:09:43,980 --> 00:09:47,820
an Methoden etc. 
Um das zu ermöglichen, dass das 

204
00:09:47,820 --> 00:09:50,220
quasi in einer Rolle oder dass 
diese Teams eng aneinander 

205
00:09:50,220 --> 00:09:52,150
rücken können. 
Ja genau. 

206
00:09:52,150 --> 00:09:55,470
Und zentrale Aufgabe ist, das 
quasi weg zu automatisieren, 

207
00:09:55,510 --> 00:09:59,390
dass ich quasi, dass wenn ich 
dass wir nicht als Coder quasi 

208
00:09:59,390 --> 00:10:01,870
einen neuen Code herstellen, 
dass dann alle Folgeschritte, 

209
00:10:01,870 --> 00:10:03,870
die du gerade erwähnt hast, 
nämlich das testen, das 

210
00:10:03,870 --> 00:10:07,790
Zusammenführen, das Versionieren
von den anderen Sachen und das 

211
00:10:07,870 --> 00:10:12,670
Verpacken in Artefakte und auch 
dann das quasi das an den Ja, 

212
00:10:12,670 --> 00:10:15,230
das das zur Verfügung stellen an
der richtigen Stelle in der 

213
00:10:15,230 --> 00:10:16,550
Cloud, nämlich nicht auf meinen 
Laptop. 

214
00:10:16,550 --> 00:10:19,230
Ich entwickle typischerweise auf
dem Laptop, das heißt, ist ja 

215
00:10:19,230 --> 00:10:22,310
Teil, aber das soll ja nicht 
jeder wieder, immer automatisch,

216
00:10:22,310 --> 00:10:25,070
also nicht jeder immer manuell 
machen soll, aber es soll halt 

217
00:10:25,070 --> 00:10:27,260
automatisch. 
Funktionieren und dafür gibt es 

218
00:10:27,260 --> 00:10:31,260
Toolings und Prozesse, die da 
ineinander greifen und die 

219
00:10:31,260 --> 00:10:33,980
zusammen würd ich sagen, nennt 
man dann devapser. 

220
00:10:34,540 --> 00:10:38,940
Und diese Toolings und Prozesse,
welche welche sind das erstmal 

221
00:10:38,940 --> 00:10:41,060
so? 
Also kannst du da ein paar 

222
00:10:41,060 --> 00:10:44,060
Beispiele geben. 
Ja, also das erste was du machen

223
00:10:44,060 --> 00:10:46,420
musst, ist typischerweise aus 
deinem Source Code quasi mal ein

224
00:10:46,420 --> 00:10:50,100
Artefakt zu bauen. 
Artefakt ist ein allgemeines 

225
00:10:50,100 --> 00:10:53,060
Wort für irgendwas, was man dann
ausführen kann, das kann im 

226
00:10:53,060 --> 00:10:55,020
einfachsten Fall ist das 
irgendwie ein Programm zum 

227
00:10:55,020 --> 00:10:57,740
Beispiel also eine Windows exe 
oder irgendwas oder vielleicht 

228
00:10:57,740 --> 00:11:01,350
eine Bibliothek eine dll. 
Oder aber auch ein Image eines 

229
00:11:01,350 --> 00:11:04,590
Docker Containers. 
Und da gibt es immer einen 

230
00:11:04,590 --> 00:11:07,830
Prozess, das, man nennt es 
irgendwie kompilieren oder 

231
00:11:07,830 --> 00:11:10,630
einfach bauen oder Irgendsowas 
der Code, den als Source Code 

232
00:11:10,630 --> 00:11:12,230
hat, der muss halt immer 
irgendwie nochmal optimiert 

233
00:11:12,230 --> 00:11:16,110
zusammengefasst werden und da 
kriegt dann quasi ein Siegel 

234
00:11:16,110 --> 00:11:17,750
dran. 
So das ist halt die Version so 

235
00:11:17,750 --> 00:11:21,750
und so die Bildversion von 
irgendwas und das ist ein Teil 

236
00:11:21,750 --> 00:11:25,350
der der Integration, also ein 
Teil der Devaps am Anfang, das 

237
00:11:25,350 --> 00:11:27,820
Bauen quasi. 
Und dann kommt das 

238
00:11:27,820 --> 00:11:31,420
typischerweise, das Testen das 
Ganze auch schon auf 2 Arten 

239
00:11:31,420 --> 00:11:34,980
geben, das kann quasi auf 
teilgebauten Aspekten geben, 

240
00:11:35,020 --> 00:11:37,020
also quasi sehr nah am 
Sourcecode. 

241
00:11:37,100 --> 00:11:39,540
Es kann aber auch Tests geben, 
die quasi dann schon dieses 

242
00:11:39,540 --> 00:11:42,980
Artefakt brauchen. 
Je nachdem ne das testen gibt es

243
00:11:42,980 --> 00:11:45,980
gibt es halt ganz nah. 
Also die sogenannten Unittest, 

244
00:11:45,980 --> 00:11:49,860
die sind halt sehr kleinteilig 
in den kleinsten Funktionen und 

245
00:11:49,860 --> 00:11:52,100
dann gibt es das Testen von 
immer größeren zusammengebauten 

246
00:11:52,100 --> 00:11:55,260
Komponenten, weil halt so ne 
Software ne aus kleineren 

247
00:11:55,260 --> 00:11:57,260
Komponenten die quasi 
aufeinander gestapelt werden und

248
00:11:57,260 --> 00:12:00,300
immer was Komplexeres ergeben, 
habe ich quasi auch Tests die 

249
00:12:00,300 --> 00:12:03,740
dann auf verschiedenen Leveln 
testen, also so sogenannte 

250
00:12:03,740 --> 00:12:06,620
Integration Tests ungefähr in 
der Mitte, wo ich dann schon die

251
00:12:06,620 --> 00:12:09,220
Zusammenarbeit von mehreren 
Modulen teste, aber noch nicht 

252
00:12:09,220 --> 00:12:12,300
das ganze Wesen und ganz zum 
Schluss kommt immer der Ende zu 

253
00:12:12,300 --> 00:12:15,820
Ende Test wo? 
Sie wirklich das voll deployate 

254
00:12:15,820 --> 00:12:18,860
Wesens, die ganze App irgendwie 
Ende zu Ende teste und da 

255
00:12:18,860 --> 00:12:20,700
müssen, da müssen alle 
Komponenten gut miteinander 

256
00:12:20,700 --> 00:12:22,500
arbeiten, damit die irgendwie 
grün werden, ne? 

257
00:12:22,740 --> 00:12:25,620
Dann bin ich jetzt also getestet
und kann releasen, quasi oder? 

258
00:12:25,940 --> 00:12:28,300
Und du könntest eigentlich 
releasen, sofern deine Tests. 

259
00:12:29,820 --> 00:12:33,060
Sofern du deinen Test vertraust,
ja, und aber aber da will man 

260
00:12:33,060 --> 00:12:35,940
eigentlich hin. 
Ja und ich glaube das ist 1 der 

261
00:12:35,940 --> 00:12:39,260
zentralen Ziele von jetzt sag 
ich nicht nur dev OPS sondern 

262
00:12:39,260 --> 00:12:43,220
CI, also Continuous Integration 
und jetzt muss ich noch mal kurz

263
00:12:43,220 --> 00:12:45,180
akkurat werden, kontinuierlich, 
kontinuierlich das d. 

264
00:12:45,180 --> 00:12:49,020
Das CD kann für 2 Sachen stehen 
und meistens meint man 

265
00:12:49,020 --> 00:12:53,780
Continuous Delivery, es heißt 
aber auch Continuous Deployment,

266
00:12:53,900 --> 00:12:56,140
es sind aber, wenn man es 
akkurat betrachtet 2 

267
00:12:56,140 --> 00:12:58,500
verschiedene Dinge. 
Ich habe Developer gesagt, das 

268
00:12:58,500 --> 00:13:01,390
war natürlich völlig falsch. 
Nee, ich glaube du hast sogar 

269
00:13:01,390 --> 00:13:03,190
Deployment gesagt jetzt am 
Anfang, aber ich weiß es auch 

270
00:13:03,190 --> 00:13:04,230
nicht mehr, nagel mich nicht 
fest. 

271
00:13:04,230 --> 00:13:08,310
Also Continuous Delivery und 
Continuous Deployment, also der 

272
00:13:08,310 --> 00:13:10,190
Unterschied ist vielleicht auch 
ein bisschen akademisch, aber 

273
00:13:10,190 --> 00:13:12,470
also wenn man es unterscheiden 
möchte ist continued delivery 

274
00:13:12,470 --> 00:13:17,110
ist quasi das herstellen. 
Des fertigen Produktes atme 

275
00:13:17,110 --> 00:13:19,750
hatte noch nicht die Freigabe an
den Endnutzer, also noch nicht 

276
00:13:19,750 --> 00:13:22,750
das Deployen direkt der App in 
den Endnutzer hinein, sage ich 

277
00:13:22,750 --> 00:13:25,870
mal, sondern man hat quasi bei 
Continuous Delivery noch eine 

278
00:13:25,870 --> 00:13:28,790
letzte manuelle Phase, wo dann 
irgendwelche Experten oder also 

279
00:13:28,790 --> 00:13:31,630
interne Teams noch mal einen 
Check machen können, ob wirklich

280
00:13:31,630 --> 00:13:34,750
alles super ist. 
Ob das Produkt, so wie es jetzt 

281
00:13:34,750 --> 00:13:37,660
da steht. 
Weitergegeben kann an den 

282
00:13:37,660 --> 00:13:39,940
Endkunden und wenn das der Fall 
ist, dann macht man das 

283
00:13:39,940 --> 00:13:43,900
Deployment tatsächlich in den 
Live Produktions ne, dann kannst

284
00:13:43,900 --> 00:13:46,380
du quasi unter deiner Domain 
oder irgendsowas das Ding dann 

285
00:13:46,380 --> 00:13:48,780
sehen. 
Ne genau und wenn man das gut 

286
00:13:48,780 --> 00:13:51,100
automatisiert hat, dann das 
testen gut automatisch. 

287
00:13:51,540 --> 00:13:53,820
Hast dann hast du natürlich nach
hinten heraus weniger zu tun. 

288
00:13:54,020 --> 00:13:56,340
Jetzt sind wir quasi in diesem, 
in dieser 8. 

289
00:13:56,500 --> 00:13:58,860
Quasi gerade von dem Linken in 
den rechten Kreis gesprungen, 

290
00:13:58,860 --> 00:14:00,100
also in der Linie 8 im Moment 
nicht. 

291
00:14:00,100 --> 00:14:03,740
Zeichen also vom genau da ist 
nämlich der Übergang dann beim 

292
00:14:03,740 --> 00:14:08,340
Deployment ist jetzt das Ops. 
Äh, quasi zuständig oder, oder, 

293
00:14:08,340 --> 00:14:11,300
oder. 
Wenn die Methoden des Operations

294
00:14:11,340 --> 00:14:13,700
angewendet, ja, genau. 
Gottes Integration befasst sich 

295
00:14:13,700 --> 00:14:17,740
mit Building Testing und 
Artefakt zur Verfügung stellen 

296
00:14:18,060 --> 00:14:20,580
und dann kommt dieses Delivery 
mit Staging. 

297
00:14:21,180 --> 00:14:23,860
Staging und Production Readiness
also. 

298
00:14:23,860 --> 00:14:26,380
Als Keywords, die ich mal 
mitgebracht habe, sind sowas wie

299
00:14:26,380 --> 00:14:29,460
Provisioning oder Infrastructure
as Code. 

300
00:14:29,460 --> 00:14:30,940
Was an der Stelle zum Einsatz 
kommt. 

301
00:14:30,940 --> 00:14:32,420
Da wird sie da vielleicht ein 
bisschen was dazu sagen. 

302
00:14:32,900 --> 00:14:35,580
Also wenn man irgendwas deployed
heutzutage oder vor allen Dingen

303
00:14:35,580 --> 00:14:38,180
von der Webtechnologie sprechen,
dann ist ja. 

304
00:14:39,910 --> 00:14:42,750
Das ist ja nicht nur ein 
Computer, auf dem ich irgendwas 

305
00:14:42,750 --> 00:14:46,550
hochladen muss, sondern sind im 
Notfall sehr viele. 

306
00:14:47,070 --> 00:14:49,190
Da muss ich quasi auf vielen 
verschiedenen Computern was 

307
00:14:49,190 --> 00:14:51,470
updaten, Teile, die 
zusammenarbeiten als großes 

308
00:14:51,470 --> 00:14:54,750
Ganzes, wenn ich ein 
skalierbares System habe und 

309
00:14:54,750 --> 00:14:57,990
muss quasi dann auch an der 
richtigen Stelle so Sachen 

310
00:14:57,990 --> 00:15:01,750
machen wie Internet, also IP 
Adressen, umrouten und so weiter

311
00:15:01,750 --> 00:15:04,070
innen drin. 
Ich will zum Beispiel ja nicht, 

312
00:15:04,630 --> 00:15:07,750
wenn ich jetzt ein Produkt habe,
was stark im Markt ist und stark

313
00:15:07,750 --> 00:15:10,790
benutzt wird, dann will ich 
eigentlich Zero Downtime haben. 

314
00:15:10,790 --> 00:15:12,310
Ich will eigentlich, dass die 
neue Version. 

315
00:15:13,190 --> 00:15:16,100
Sofort an die alte anschließt. 
Und das kann ich nicht 

316
00:15:16,100 --> 00:15:17,740
erreichen. 
Indem ich also, wenn ich, wenn 

317
00:15:17,740 --> 00:15:20,300
ich versuche, quasi auf dem auf 
der gleichen Hardware einfach 

318
00:15:20,300 --> 00:15:23,580
das neue Produkt anzufahren und 
das Alte abzuschalten, schaffe 

319
00:15:23,580 --> 00:15:25,860
ich das nicht mit Zero Downtime.
Es geht einfach nicht, muss die 

320
00:15:25,860 --> 00:15:28,620
Server runterfahren, ich muss 
das neue hochfahren, läuft 

321
00:15:28,620 --> 00:15:30,900
vielleicht noch ne Migration ab 
oder irgendsowas, das braucht 

322
00:15:30,900 --> 00:15:34,060
auf jeden Fall, da bin ich immer
kurz weg, also muss ich noch 

323
00:15:34,060 --> 00:15:37,020
viel mehr machen, ich muss quasi
ich brauche Komponenten, die 

324
00:15:37,020 --> 00:15:38,700
haben ja auch schon mal 
gesprochen sowas wie Reverse 

325
00:15:38,700 --> 00:15:43,420
proxies die quasi dann die die 
Anfragen vom User, der fragt ja 

326
00:15:43,420 --> 00:15:45,940
nicht eine IP Adresse an Tipps 
ja nicht wenn du irgendwas 

327
00:15:45,940 --> 00:15:51,510
suchst 147. 10 34 oder irgendwas
da rein, sondern heisenwert 

328
00:15:51,510 --> 00:15:54,990
Cloud oder so. 
Und da gibt es jetzt quasi 

329
00:15:54,990 --> 00:15:56,830
wieder Technologien und das 
nennt man dann halt die 

330
00:15:56,830 --> 00:15:59,830
Infrastruktur, das ist die ganze
Infrastruktur dieser ganzen 

331
00:15:59,830 --> 00:16:03,100
Anwendung, dazu gehört. 
Auch das Auflösen von 

332
00:16:03,100 --> 00:16:06,660
Domainnamen in IP Adressen und 
diese Infrastruktur muss jetzt 

333
00:16:06,660 --> 00:16:09,700
dafür sorgen, dass ich quasi das
neue Release sauber reinfahren 

334
00:16:09,700 --> 00:16:11,780
kann. 
Das heißt, da wird dann quasi 

335
00:16:11,780 --> 00:16:14,460
das neue System gestartet auf 
einem ganz anderen Server wird 

336
00:16:14,460 --> 00:16:16,100
vielleicht einer ganz anderen IP
Adresse. 

337
00:16:16,820 --> 00:16:20,020
Wenn das alles fertig ist und 
wir wissen, dass das quasi 

338
00:16:20,260 --> 00:16:24,020
losgehen kann, dann schaltet der
Reverse Proxy auf einmal um und 

339
00:16:24,260 --> 00:16:26,420
die nächste Anfrage auf die 
gleiche Adresse. 

340
00:16:26,420 --> 00:16:29,420
Eigentlich. 
Wird aber umgeroutet auf ne ganz

341
00:16:29,420 --> 00:16:32,420
andere, auf ganz andere 
Hardware, auf der quasi das neue

342
00:16:32,420 --> 00:16:34,500
System läuft und das alte ist in
dem nächsten Moment 

343
00:16:34,500 --> 00:16:36,860
abgeschaltet. 
Ja nur so Krieg ich solche 

344
00:16:36,860 --> 00:16:40,700
Effekte wie Zero Downtime, das 
ist Teil des das ist 

345
00:16:40,700 --> 00:16:43,180
Provisioning was du hier 
beschrieben hast oder oder 

346
00:16:43,180 --> 00:16:45,340
welche das jetzt auch ein 
bisschen die Antwort von deinem 

347
00:16:45,340 --> 00:16:48,420
Infrastructor is a code was 
damit zu tun hat, denn die 

348
00:16:48,420 --> 00:16:51,900
Anwendung an sich, also der eine
Webserver, der auf Anfrage quasi

349
00:16:51,900 --> 00:16:54,820
ne html Seite zurückgibt, das 
ist ja nur ein ganz kleiner 

350
00:16:54,820 --> 00:16:57,380
Sandkorn im ganzen Bild, 
deswegen spricht man von 

351
00:16:57,380 --> 00:17:01,420
Infrastruktur, du brauchst halt.
Ne Skalierende Cloud Anwendung 

352
00:17:01,740 --> 00:17:05,420
deploys brauchst du halt viele 
Komponenten die funktionieren 

353
00:17:05,420 --> 00:17:07,099
müssen die aufeinander 
abgestimmt sein müssen. 

354
00:17:07,099 --> 00:17:10,540
Die die meistens nicht auf einer
gleichen Hardware laufen sondern

355
00:17:10,540 --> 00:17:14,180
verteilt sind und alles das muss
aber in sich zusammenpassen und 

356
00:17:14,180 --> 00:17:16,300
richtig konfiguriert sein und 
dafür gibt es so Tools wie zum 

357
00:17:16,300 --> 00:17:19,780
Beispiel Terraform und das nennt
man Infrastruktur, weil du hast.

358
00:17:19,780 --> 00:17:22,540
Das ist eine echte, eine echte 
Infrastruktur, ein echtes System

359
00:17:22,540 --> 00:17:24,940
von verschiedenen Komponenten 
die verschiedene Sachen machen 

360
00:17:25,300 --> 00:17:28,900
und das musst du auch als Ganzes
in der Lage sein rauszunehmen 

361
00:17:28,900 --> 00:17:30,940
aus dem System und wieder hinzu 
Deployen. 

362
00:17:31,990 --> 00:17:34,310
Es ist in sich ein komplexes 
Wesen, das macht es wirklich. 

363
00:17:35,030 --> 00:17:38,510
Das macht diese Aufgabe relativ 
komplex, und dafür gibt es halt,

364
00:17:38,510 --> 00:17:40,430
dafür gibt es sehr Advanced 
Tools, die. 

365
00:17:41,540 --> 00:17:44,580
Ja, die ganze Serien von Servern
irgendwie mit irgendwelchen 

366
00:17:44,580 --> 00:17:46,580
Skripts bespielen, die dann da 
passieren dann sehr, sehr, sehr 

367
00:17:46,580 --> 00:17:48,980
viele Dinge gleichzeitig. 
Ja, und die werden aber quasi 

368
00:17:48,980 --> 00:17:51,900
zentral gemanagt dann von so 
Infrastructure as a Code 

369
00:17:51,940 --> 00:17:54,380
toolings ja, wollen wir. 
Dann auf diesem unendlichen 

370
00:17:54,380 --> 00:17:56,340
Prozess weitergehen. 
Da kommt dann der. 

371
00:17:56,620 --> 00:17:58,980
Nach nach des nach dem 
Deployment quasi das Operate, 

372
00:17:58,980 --> 00:18:01,580
also der Betrieb selber. 
Da sind so Stichwörter, 

373
00:18:01,580 --> 00:18:04,020
Virtualisierung oder 
Kontenarisierung, die wir nun 

374
00:18:04,020 --> 00:18:05,420
auch häufig schon besprochen 
haben. 

375
00:18:06,260 --> 00:18:08,540
In der Webwelt ist es ja so, 
dass wir viel mit Containern 

376
00:18:08,540 --> 00:18:12,300
arbeiten heutzutage. 
Das heißt, da guckt man dann, 

377
00:18:12,500 --> 00:18:16,020
wie ist die Last live im System,
das sind also auch Parts von, 

378
00:18:16,020 --> 00:18:18,060
ich hab gar nicht mehr so n 
statisches Deployment wie 

379
00:18:18,060 --> 00:18:19,500
früher, da hab ich das irgendwo 
auf dem. 

380
00:18:20,500 --> 00:18:22,500
Sag mal so klassisches Slamstab 
wenn ich, wenn ich mal so ne 

381
00:18:22,500 --> 00:18:24,300
Anwendung gemacht hab, da hab 
ich mir irgendwie n dedizierten 

382
00:18:24,300 --> 00:18:26,300
Server geholt und dann hat der 
halt irgendwie das gemacht was 

383
00:18:26,300 --> 00:18:30,860
er kann und heute ist sind die 
Anwendungen in diesen sinnvollen

384
00:18:30,860 --> 00:18:35,660
Teilen aufgespalten und die 
Hardware dahinter ist alles 

385
00:18:35,660 --> 00:18:39,660
virtualisiert, das heißt man 
kann quasi automatisch erkennen,

386
00:18:39,660 --> 00:18:43,140
dass große Last entsteht. 
Viele User wollen ein Ticket 

387
00:18:43,140 --> 00:18:45,740
kaufen, zum Beispiel weil 
irgendeine Deadline ausläuft und

388
00:18:45,740 --> 00:18:49,940
moderne Systeme erkennen das und
fahren quasi dynamisch mehr 

389
00:18:49,940 --> 00:18:52,980
Hardware hoch. 
Und es geht deswegen, weil die, 

390
00:18:52,980 --> 00:18:55,460
weil die Softwarelogik quasi in 
kleinen kontinuierisierten 

391
00:18:55,460 --> 00:18:57,020
Einheiten ist. 
Und das ist so, als würde ich 

392
00:18:57,020 --> 00:18:58,980
einfach n größeres Schiff zur 
Verfügung stellen und mehr 

393
00:18:58,980 --> 00:19:02,140
Container aufladen können und 
mehr Last abzunehmen. 

394
00:19:02,140 --> 00:19:04,740
Ja und das geht alles dynamisch 
und es fährt auch wieder runter,

395
00:19:04,900 --> 00:19:08,380
dynamisch wenn die Last weg ist.
Also alle haben gebucht und 

396
00:19:08,380 --> 00:19:10,500
danach macht der Server 
irgendwie noch eine Anfrage pro 

397
00:19:10,500 --> 00:19:12,340
Woche. 
Ja dann will ich ja nicht 

398
00:19:12,340 --> 00:19:16,300
irgendwie zig Server damit das 
Wasser heiß machen lassen, 

399
00:19:16,300 --> 00:19:18,580
sondern so soll das quasi auch 
wieder die Hardware die benutzt 

400
00:19:18,580 --> 00:19:20,940
wird um diese Software zu 
betreiben auch dynamisch 

401
00:19:20,940 --> 00:19:23,550
runterfahren. 
Das sind die komplexen 

402
00:19:23,550 --> 00:19:26,190
Herausforderungen heute von 
modernen Softwaresystemen. 

403
00:19:26,590 --> 00:19:30,070
Alles dieses ist quasi meta 
Informationen, die ja nicht 

404
00:19:30,070 --> 00:19:32,390
wirklich mit der Business Logik 
meiner Anwendung zu tun haben, 

405
00:19:32,390 --> 00:19:35,030
sondern mit dem skalierbaren 
Verhalten meiner Anwendung 

406
00:19:35,030 --> 00:19:36,710
deswegen. 
Operations genau deswegen. 

407
00:19:36,710 --> 00:19:41,030
Nennt man das DEV Ops genau und 
das das ist in sich ein so 

408
00:19:41,030 --> 00:19:44,350
komplexes Thema, dass es auch 
neben den Softwareentwicklern, 

409
00:19:44,350 --> 00:19:46,550
die das Produkt eigentlich 
entwickeln, halt die DEV Ops 

410
00:19:46,550 --> 00:19:51,790
Engineering gibt oder Deops Team
Pampers, die sich exklusiv nur 

411
00:19:51,790 --> 00:19:54,300
darum kümmern. 
Und das hat ja nicht nur was mit

412
00:19:54,300 --> 00:19:56,700
Skalierbarkeit und Performance 
zu tun, sondern auch mit Kosten.

413
00:19:57,500 --> 00:19:59,460
Dass der Kram wirtschaftlich 
auch läuft. 

414
00:19:59,460 --> 00:20:02,100
In der Firma entstehen ja quasi 
Kosten, wenn zu viel Hardware 

415
00:20:02,100 --> 00:20:04,100
benutzt wird, vor allem wenn ich
die irgendwo Miete bei so einem.

416
00:20:05,060 --> 00:20:07,460
Bei so einem Azure oder oder was
auch immer AWS ne. 

417
00:20:07,940 --> 00:20:10,620
Also eine weitere Aufgabe von 
DEV Ops, insbesondere vom Obst 

418
00:20:10,620 --> 00:20:12,500
Teil aus. 
Dev OPS ist hier in dem Fall 

419
00:20:13,180 --> 00:20:18,060
Hardware Ressourcen ja effizient
einzusetzen, das beschreibt es 

420
00:20:18,060 --> 00:20:21,820
eigentlich glaub ich ganz gut ne
so viel wie man braucht aber 

421
00:20:21,820 --> 00:20:25,540
auch nicht zu wenig, das ist 
quasi vielleicht nicht 

422
00:20:25,900 --> 00:20:28,580
erreichbar ist die Anwendung du 
hast gerade schon so das 

423
00:20:28,580 --> 00:20:31,740
Monitoring bisschen mit 
angerissen was der letzte 

424
00:20:31,740 --> 00:20:35,540
Anführungsstrichen der letzte 
Punkt ist in diesem 8 oder nicht

425
00:20:35,540 --> 00:20:37,870
Zeichen. 
Da Stichpunkte sind einfach 

426
00:20:37,870 --> 00:20:41,750
logging Visualisierungen, solche
Sachen, die für uns bei heißen 

427
00:20:41,750 --> 00:20:43,670
wir jetzt auch gerade total 
spannend sind, ja. 

428
00:20:43,670 --> 00:20:46,030
Genau im besten Falle hast du, 
und da schneiden sich aber 

429
00:20:46,030 --> 00:20:49,470
glaube ich so ein bisschen die 
Bereiche, also im besten Falle 

430
00:20:49,470 --> 00:20:53,870
weißt du ziemlich genau, wie 
deine Nutzer deine Software 

431
00:20:53,870 --> 00:20:56,390
benutzen, um sie besser zu 
machen, das kennen wir ja auch 

432
00:20:56,390 --> 00:20:59,550
überall, also Windows und 
Telefon, neues Telefon kaufst, 

433
00:20:59,550 --> 00:21:02,350
wirst ja ständig gefragt, dürfen
wir anonym irgendwie Daten zur 

434
00:21:02,350 --> 00:21:04,630
Benutzungseigenschaften und so 
weiter senden, das muss man 

435
00:21:04,630 --> 00:21:08,060
abfragen, weil es Datenschutz. 
Rechtliches Thema wenn du so das

436
00:21:08,060 --> 00:21:11,660
nennt sich Telemetrie, das 
Fachwort, also ich sende senden 

437
00:21:11,660 --> 00:21:17,100
einfach nutzereigenschaften 
Metadaten quasi zurück und das 

438
00:21:17,100 --> 00:21:18,700
kann auch auch auf allen Levels 
passieren. 

439
00:21:18,700 --> 00:21:20,980
Ne, also es kann das können die 
Klicks sein auf meiner App, das 

440
00:21:20,980 --> 00:21:23,460
kann aber auch einfach die die 
Loks sein die hinten im Backend 

441
00:21:23,460 --> 00:21:25,300
passieren wo irgendwelche 
Fehlermeldungen aufploppen und 

442
00:21:25,300 --> 00:21:26,860
so weiter und im besten Falle 
wird das alles ins 

443
00:21:26,860 --> 00:21:30,900
Entwicklungsteam zurückgespielt.
Auch das sind viele Daten im 

444
00:21:30,900 --> 00:21:31,820
Notfall. 
Da gibt es dann auch schon 

445
00:21:31,820 --> 00:21:34,340
wieder Tools, das gehört auch 
dazu, elastic Search und so 

446
00:21:34,340 --> 00:21:36,540
weiter die dir dann das 
rausfinden, was relevant ist, 

447
00:21:37,060 --> 00:21:39,980
also quasi die signifikanten 
Ereignisse herausholen, da gibt 

448
00:21:39,980 --> 00:21:43,180
es auch statistische Methoden 
und auch schon AI tatsächlich. 

449
00:21:44,300 --> 00:21:47,100
Für dieses ganze Monitoring von 
CPUS und so weiter weil das kann

450
00:21:47,100 --> 00:21:50,780
auch kompliziert sein, wenn du 
ja über Wochen oder Monate quasi

451
00:21:50,780 --> 00:21:54,540
ne App im Feld hast und musst 
dann analysieren das Big Data 

452
00:21:54,620 --> 00:21:58,260
gegeben allen CPU Usages und RAM
Usages und dann auch noch dem 

453
00:21:58,260 --> 00:22:01,340
Nutzerverhalten, das korreliert 
ja vielleicht hat einen Grund 

454
00:22:01,340 --> 00:22:04,780
warum irgendwo CPU hochgeht weil
halt irgendwie eine Deadline war

455
00:22:04,780 --> 00:22:07,380
und alle haben gleichzeitig 
geklickt und so weiter aber da 

456
00:22:07,380 --> 00:22:09,540
gibt es halt wieder ein ganzes 
Set von Tools die dir helfen 

457
00:22:09,540 --> 00:22:14,100
diese monitorten Daten quasi zu 
analysieren und die brauchst du 

458
00:22:14,100 --> 00:22:17,260
quasi in der nächsten Runde der 
8, weil sonst eine Software soll

459
00:22:17,260 --> 00:22:19,700
ja dann verbessert werden, also 
wenn es dann quasi gestoppt hat 

460
00:22:19,700 --> 00:22:21,700
weil Überlastbar oder 
Irgendsowas, dann müssen die 

461
00:22:21,700 --> 00:22:24,430
Entwickler das verstehen. 
Und dann müssen entweder die 

462
00:22:24,430 --> 00:22:27,350
Software Jungs oder die DEV op 
Jungs irgendwas machen, damit 

463
00:22:27,350 --> 00:22:29,190
das irgendwie geschmeidiger 
funktioniert, ja. 

464
00:22:29,190 --> 00:22:32,270
Cool, jetzt hast du den Kreis 
oder die 8 geschlossen, dann 

465
00:22:32,390 --> 00:22:35,230
können wir wieder daraus planen 
und dann wieder anfangen zu 

466
00:22:35,230 --> 00:22:39,510
coden, wieder zu bauen, wieder 
zu testen, zu Relesen und zu 

467
00:22:39,510 --> 00:22:42,590
Deployen, betreiben und wieder 
zu überwachen, zu Monitoren 

468
00:22:42,590 --> 00:22:45,710
letzten Endes, das darf man sich
jetzt, denke ich mal nicht so 

469
00:22:45,710 --> 00:22:47,780
als Prozessvorschläge. 
Immer Schritt für Schritt 

470
00:22:47,780 --> 00:22:49,980
abläuft, sondern die ganzen 
Sachen laufen ja irgendwie 

471
00:22:49,980 --> 00:22:52,580
gerade in größeren Teams 
irgendwie dauernd parallel und 

472
00:22:52,580 --> 00:22:54,740
eher themenbezogen vermute ich 
mal ne. 

473
00:22:55,260 --> 00:22:56,980
Ja, und das ist das Wort 
Continuous ne. 

474
00:22:56,980 --> 00:22:59,220
Also das ist du willst das 
eigentlich nicht sehen und 

475
00:22:59,220 --> 00:23:01,740
wissen ja dann als Entwickler 
nicht ja, also als Entwickler 

476
00:23:01,740 --> 00:23:03,660
bin ich interessiert, ich 
schilder euch mal kurz die 

477
00:23:03,660 --> 00:23:06,460
Perspektive vom Entwickler was 
du eigentlich haben will, der 

478
00:23:06,460 --> 00:23:09,340
kriegt im Prinzip der geht zum 
Beispiel macht noch Kanban 

479
00:23:09,340 --> 00:23:12,980
agiles Coden, so ist es modern 
und dann sieht er einfach in der

480
00:23:12,980 --> 00:23:16,780
to do Liste was zu machen ist. 
Ja und woher sich diese to do s 

481
00:23:16,940 --> 00:23:18,580
die kommen jetzt von der letzten
Runde der 8. 

482
00:23:18,580 --> 00:23:20,420
Also es wurde irgendwie 
gemonitor, dass hier irgendwie 

483
00:23:20,420 --> 00:23:22,900
Fehler sind, Bugs sind reported 
von User und so weiter 

484
00:23:23,220 --> 00:23:24,700
resultiert. 
Ende des Tages in kleinen 

485
00:23:24,700 --> 00:23:27,260
Aufträgen Tickets, sogenannte 
Tickets für die Entwickler. 

486
00:23:27,700 --> 00:23:29,060
Die schnappen sich diese 
Tickets. 

487
00:23:30,180 --> 00:23:32,460
Machen einen sogenannten Brunch,
das ist n wichtiges Konzept, 

488
00:23:32,460 --> 00:23:36,460
also die Hauptlinie des Codes, 
das heißt meistens Main oder 

489
00:23:36,460 --> 00:23:40,380
Master Brunch, das ist wichtig 
an der Stelle, das ist quasi das

490
00:23:40,380 --> 00:23:43,940
laufende getestete Ding, was 
immer funktionieren muss, ja 

491
00:23:43,940 --> 00:23:47,670
darf nie kaputt gehen, ne. 
Das ist auch n Vorteil von 

492
00:23:47,670 --> 00:23:50,190
diesen continuisten du bist halt
zu jederzeit im Prinzip Release,

493
00:23:50,190 --> 00:23:52,710
fertig, fertig und fähig. 
Ja kommt der Chef rein und sagt 

494
00:23:52,710 --> 00:23:54,950
ich brauch jetzt n Release dann 
muss es gehen, dann muss hier 

495
00:23:54,950 --> 00:23:57,150
einer n Knopf drücken und dann 
sagen OK es dauert ne halbe 

496
00:23:57,150 --> 00:24:00,070
Stunde dann hast du es ja du 
musst nicht in Schweißperlen auf

497
00:24:00,070 --> 00:24:02,990
den Kopf kriegen, dann hast du 
was falsch gemacht ja aber um 

498
00:24:02,990 --> 00:24:04,830
das letzte Mal fertig zu machen,
dann hast du quasi ein Ticket 

499
00:24:04,830 --> 00:24:07,510
als Entwickler und Du arbeitest 
an diesem Ticket und zwar so, 

500
00:24:07,510 --> 00:24:10,230
dass du quasi von dem 
Hauptbrunch einen kleinen 

501
00:24:10,230 --> 00:24:13,590
nebenbranch abzweigst, also 
quasi nicht direkt was kaputt 

502
00:24:13,590 --> 00:24:15,870
machst. 
Machst du deine Codeänderung und

503
00:24:15,870 --> 00:24:17,420
dann. 
Sogenanntes Merch request. 

504
00:24:17,420 --> 00:24:20,100
Und damit fängt die ganze 
Geschichte der Automatisierung 

505
00:24:20,100 --> 00:24:22,380
an. 
Dieser Merch request. 

506
00:24:22,380 --> 00:24:25,100
Der kann dann gesehen werden von
deinen Kollegenentwicklern oder 

507
00:24:25,100 --> 00:24:27,460
von deinen 
Seniorsoftwareentwicklern, da 

508
00:24:27,460 --> 00:24:31,020
gibt es dann einen Code Review. 
Das kann man nicht automatisch 

509
00:24:31,020 --> 00:24:32,660
machen. 
Da guckt also meistens ne 4 

510
00:24:32,660 --> 00:24:34,220
Augen Prinzip einer noch mit 
drauf. 

511
00:24:34,660 --> 00:24:37,700
Gibt hier Review, also kannst 
sagen hier das hast du bisher 

512
00:24:37,780 --> 00:24:39,860
besser noch hier und hier fehlt 
noch n Test und so weiter. 

513
00:24:40,780 --> 00:24:43,380
Und aber wenn das dann fertig 
ist und das Review durch ist, 

514
00:24:44,220 --> 00:24:46,780
dann kann man quasi so ne kleine
so ne kleine Veränderung am 

515
00:24:46,780 --> 00:24:49,790
Code. 
Hinzufügen zu diesem 

516
00:24:49,790 --> 00:24:53,420
Masterbrunch. 
Und es wird quasi verändert. 

517
00:24:53,420 --> 00:24:58,380
Die, die die Software und dann 
müssen quasi oder am besten noch

518
00:24:58,380 --> 00:25:01,100
davor passiert das meistens, 
weil wenn es wenn nichts drin 

519
00:25:01,100 --> 00:25:03,140
hab hab ich es drin, ja dann 
werden diese ganzen Sachen 

520
00:25:03,140 --> 00:25:06,580
angestoßen, das testen. 
Von ganz nah an diesem Modul, 

521
00:25:06,580 --> 00:25:08,180
was ich da gemacht hab, da ich 
vielleicht auch neue Tests 

522
00:25:08,180 --> 00:25:10,380
geschrieben, aber dann werden 
die ganzen anderen Tests auch 

523
00:25:10,380 --> 00:25:13,140
angestoßen, dann werden die 
ganzen Artefakte gebraucht um 

524
00:25:13,140 --> 00:25:15,340
das zu testen. 
Ja nur für diesen, für dieses 

525
00:25:15,340 --> 00:25:19,380
eine Ticket quasi. 
Ja damit ich am Ende sicher bin.

526
00:25:19,500 --> 00:25:23,060
Dass dieses kleine Änderung an 
Code dem Gesamtprodukt keinen 

527
00:25:23,060 --> 00:25:26,220
Schaden zufügt, das ist der der 
Hintergrund von Continuous. 

528
00:25:26,220 --> 00:25:28,820
Ja, ich will halt wissen, wenn 
ich irgendwie irgendwas 

529
00:25:28,820 --> 00:25:30,700
verändert hab, ist das immer 
noch Release fähig. 

530
00:25:30,700 --> 00:25:33,700
Ja und wenn ich das gut gemacht 
hab, dann dann stößt quasi diese

531
00:25:33,780 --> 00:25:37,620
dieser kleine Effekt ne riesige 
Reihe von von weiteren Prozessen

532
00:25:37,620 --> 00:25:40,220
an, die dazu führen, dass ich 
irgendwie in der Staging 

533
00:25:40,220 --> 00:25:43,780
Umgebung was neues habe oder 
sogar wenn es ganz krass ist, 

534
00:25:43,780 --> 00:25:46,780
ist tatsächlich deployed bis zum
Ende gleich durch pro Ticket 

535
00:25:47,780 --> 00:25:50,420
oder das ist nicht der extremste
Fall oder man einigt sich 

536
00:25:50,420 --> 00:25:52,660
natürlich drauf und das machen 
wir auch so, dass man sagt man 

537
00:25:52,660 --> 00:25:54,980
fasst jetzt hier einige Tickets 
zusammen und macht so eine Art 

538
00:25:54,980 --> 00:25:57,830
Release. 
Das muss dann nicht 1.3.4 

539
00:25:57,830 --> 00:25:58,870
heißen. 
Das können dann auch einfach so 

540
00:25:58,870 --> 00:26:01,710
Releases sein, die durchgezählt 
werden und dann fasst man 

541
00:26:01,710 --> 00:26:04,270
mehrere Sachen zusammen, vor 
allem was sich komplett durch 

542
00:26:04,270 --> 00:26:06,110
automatisiert hat, sondern wenn 
ich auch nochmal klicken will, 

543
00:26:06,110 --> 00:26:08,110
dann wird das quasi das neue 
Release, das hat so und so viel 

544
00:26:08,110 --> 00:26:10,830
Features und so und so viel 
Bugfixes und dann kommt das in 

545
00:26:10,830 --> 00:26:13,910
so eine Art Staging wo man das 
schon mal so benutzen kann wie 

546
00:26:13,910 --> 00:26:15,790
als wäre es fertig. 
Dann heißt aber die Domain 

547
00:26:15,790 --> 00:26:18,150
irgendwie staging heisenware 
irgendwas. 

548
00:26:19,060 --> 00:26:21,620
Und dann wird das normal alles 
auf, auf auf. 

549
00:26:22,420 --> 00:26:25,380
Wie sagt man so schön, Herz und 
Nieren getestet, ja genau das 

550
00:26:25,460 --> 00:26:28,980
fehlt mir gerade, danke und dann
drückt man auf deploy und dann 

551
00:26:28,980 --> 00:26:31,620
ist es halt dann am Kunden ne 
und aber als Entwickler will ich

552
00:26:31,620 --> 00:26:32,740
das eigentlich alles gar nicht 
wissen, ne? 

553
00:26:33,460 --> 00:26:36,020
Dann mache ich meine Tickets. 
OK, dann machst du deine 

554
00:26:36,020 --> 00:26:39,350
Tickets. 
Da hab ich dann gleich noch mal 

555
00:26:39,350 --> 00:26:41,990
ne Frage zur Zusammenarbeit. 
Aber vorher noch ein Einschub, 

556
00:26:42,190 --> 00:26:44,510
woran ich mich noch erinnern 
kann von von früher, wo wir auch

557
00:26:44,510 --> 00:26:47,110
schon gemeinsam ja gearbeitet 
haben bei Netzangestellte. 

558
00:26:48,340 --> 00:26:51,540
Da ging, da gab es immer den 
Release Train, das weiß ich 

559
00:26:51,540 --> 00:26:52,820
noch. 
Ja, da kann man der Release 

560
00:26:52,820 --> 00:26:54,180
Train irgendwie an manchen 
Tagen. 

561
00:26:55,870 --> 00:26:58,220
Was war das noch mal? 
Ja, das ist, das ist das 

562
00:26:58,220 --> 00:27:00,620
Zeichen, wenn es noch nicht so 
richtig automatisiert ist. 

563
00:27:00,620 --> 00:27:02,180
So, ja dann. 
Ich glaub das hab ich in vorher 

564
00:27:02,180 --> 00:27:03,940
gesehen, dass ich erinnere mich 
hab ich glaub ich auch gesagt, 

565
00:27:03,940 --> 00:27:06,420
da gab es dann Release Tagen 
kamen die Softwareentwickler mit

566
00:27:06,420 --> 00:27:09,780
dem Bauhelm an. 
So irgendwie ne. 

567
00:27:09,780 --> 00:27:11,820
Heute ist Release Tag, heute 
muss schwer geschuftet werden, 

568
00:27:11,820 --> 00:27:14,740
ne und dann schwer geschwitzt 
werden, weil manchmal ist das so

569
00:27:14,740 --> 00:27:16,700
ne du hast ne also das 
Management zum Beispiel oder aus

570
00:27:16,700 --> 00:27:18,740
irgendwelchen anderen Gründen 
gibt es n Release date das muss 

571
00:27:18,740 --> 00:27:20,900
gehalten werden in der 
Gamingindustrie ist das total 

572
00:27:20,900 --> 00:27:22,820
krass. 
Ja, die Versprechen haben wir 

573
00:27:22,820 --> 00:27:25,060
mal n Release Date, da muss das 
Spiel rauskommen und an diesem 

574
00:27:25,060 --> 00:27:27,340
Tag muss dann halt irgendwie 
alles so zusammengebaut werden 

575
00:27:27,340 --> 00:27:30,060
da da entwickeln vielleicht 500 
Entwickler zusammen alle ihre 

576
00:27:30,060 --> 00:27:33,020
verschiedenen Teilchen und 
Hühnchen und aber an diesem Tag 

577
00:27:33,020 --> 00:27:35,300
muss halt alles so aufbereitet 
werden, dass wirklich alles gut 

578
00:27:35,300 --> 00:27:36,820
zusammen funktioniert, nichts 
mehr kaputt ist. 

579
00:27:36,820 --> 00:27:39,180
So ja und wenn das nicht 
automatisiert ist, dann kriegst 

580
00:27:39,180 --> 00:27:42,740
du, dann musst du arbeiten sag. 
Mal aber war der Release Train, 

581
00:27:42,740 --> 00:27:47,100
also der Zug der Train im Sinne 
von Zug, jetzt nicht so, dass 

582
00:27:47,100 --> 00:27:50,900
der wirklich immer regelmäßig 
fuhr in Anführungsstrichen also.

583
00:27:51,990 --> 00:27:54,630
Immer dienstags, so wie es jetzt
unseren Podcast gibt. 

584
00:27:54,830 --> 00:27:57,910
Und dann guckst du halt, dass 
du, wenn du da dein Ticket 

585
00:27:57,910 --> 00:27:59,990
abarbeitest, dass du das 
entweder noch auf den Zug 

586
00:27:59,990 --> 00:28:04,470
aufschmeißt und du wartest halt 
auf den Zug, der dann eine Woche

587
00:28:04,470 --> 00:28:06,230
später erst fährt oder 2. 
Ja. 

588
00:28:06,230 --> 00:28:07,910
Das ist so. 
Ja, das stimmt. 

589
00:28:07,910 --> 00:28:10,590
Also das war tatsächlich das 
Meaning von dem Release Train, 

590
00:28:10,590 --> 00:28:12,950
auch wenn die Bauräume auch mal 
da waren so, aber das ist so, ja

591
00:28:13,470 --> 00:28:16,590
es wurde immer Release zu einem 
Takt genau continuous, also es 

592
00:28:16,750 --> 00:28:18,750
wurde nicht relevant wenn 
irgendwelche Features drin waren

593
00:28:18,750 --> 00:28:20,790
und da Bugs nicht, sondern es 
wurde zum festen Zeitpunkt 

594
00:28:20,790 --> 00:28:23,630
released genau das Ganze machen 
und da so eine Pipeline hast 

595
00:28:24,190 --> 00:28:25,420
genau. 
Dann dann ist das mit den 

596
00:28:25,420 --> 00:28:27,260
Tickets was ich sagte. 
Entweder ist das noch mit drin, 

597
00:28:27,260 --> 00:28:30,220
weil das das Review gepasst 
hatte und wurde quasi noch mit 

598
00:28:30,220 --> 00:28:33,020
eingebaut in den. 
In den Featuresatz oder in den 

599
00:28:33,020 --> 00:28:34,380
Bugfixesatz oder halt auch 
nicht. 

600
00:28:34,380 --> 00:28:36,100
Genau. 
Und wenn du es nicht geschafft 

601
00:28:36,100 --> 00:28:38,020
hattest, dann war es halt 
irgendwie erst zum nächsten. 

602
00:28:38,020 --> 00:28:40,180
Mal was ganz Wichtiges war für 
den Kunden, dann wurde der Zug 

603
00:28:40,180 --> 00:28:41,580
auch mal kurz blockiert. 
Ne irgendwie. 

604
00:28:42,300 --> 00:28:43,980
Mal. 
Was in die Speicherschlüssel 

605
00:28:43,980 --> 00:28:45,380
noch. 
Einmal noch einmal noch einmal 

606
00:28:45,380 --> 00:28:47,220
im Kreis geführt. 
Weiche, oder? 

607
00:28:47,780 --> 00:28:52,580
Ja, dann noch mal nachtanken. 
OK, ich glaub das das passt zum 

608
00:28:52,660 --> 00:28:56,100
zum Death orps also es sind 
irgendwie es es ist so ne so n 

609
00:28:56,100 --> 00:28:59,340
Oberbegriff hab ich jetzt auch 
verstanden noch besser der 

610
00:28:59,340 --> 00:29:01,900
eigentlich alles zusammenfasst 
was irgendwie in ne 

611
00:29:01,900 --> 00:29:05,020
Softwareentwicklung und aber 
auch den Betrieb der Software 

612
00:29:05,180 --> 00:29:10,300
anfällt, da Tools und Methoden 
zur Verfügung stellt und auch 

613
00:29:10,300 --> 00:29:15,100
das ganze oder bei der Disziplin
als als als 1 begreift weil am 

614
00:29:15,100 --> 00:29:18,540
Ende dient das alles dem, dass 
die die Nutzer der Software 

615
00:29:18,540 --> 00:29:20,500
eigentlich eine tolle Software 
bekommen. 

616
00:29:20,700 --> 00:29:23,060
Die auch immer zur Verfügung 
steht. 

617
00:29:23,420 --> 00:29:26,020
Auf meinem Spicker steht so eine
Sache, die ich erwähnen wollte, 

618
00:29:26,580 --> 00:29:29,300
damit man versteht, warum das, 
also man kann lange darüber 

619
00:29:29,300 --> 00:29:31,260
reden, was da alles gibt und so 
weiter aber ich glaub man 

620
00:29:31,260 --> 00:29:33,460
versteht immer noch schwierig, 
warum das wirklich notwendig 

621
00:29:33,460 --> 00:29:35,260
ist. 
So viel Krams irgendwie ja. 

622
00:29:36,260 --> 00:29:40,380
Ich, ich will ein Beispiel 
geben, wenn wir heute, wenn man 

623
00:29:40,380 --> 00:29:42,980
nur ne ganz einfaches Frontend 
macht, mit React zum Beispiel ne

624
00:29:42,980 --> 00:29:46,220
Single Page Application und das 
startet zu entwickeln und man 

625
00:29:46,220 --> 00:29:50,580
sagt einfach nur krei mir mal 
die Grundlage um jetzt ne React 

626
00:29:50,580 --> 00:29:53,100
App zu bauen und ich hab noch 
gar nichts gebaut, da dreht nur 

627
00:29:53,100 --> 00:29:56,060
n Logo irgendwie auf der Seite. 
In dem Moment habe ich schon 

628
00:29:56,060 --> 00:30:00,540
1000 ich hab's nicht ausprobiert
heute morgen 1490 Pakete 

629
00:30:00,540 --> 00:30:05,180
runtergeladen, die Penancies aus
dem Netz nur um die Basis 

630
00:30:05,180 --> 00:30:10,390
hinzustellen. 1490 ja, 1400. 90 
die penancies hast du ja also 

631
00:30:10,390 --> 00:30:14,270
1490 Gitarre Repositories, die 
irgendwo verteilt sind, die 

632
00:30:14,270 --> 00:30:16,630
irgendeine Version haben, die 
aber ziemlich genau aufeinander 

633
00:30:16,630 --> 00:30:18,750
passen müssen, damit das alles 
zusammen funktioniert. 

634
00:30:19,470 --> 00:30:21,790
Und das ist ja nur der Start und
dann fängst du erst an Software 

635
00:30:21,790 --> 00:30:24,190
zu entwickeln, darauf bauen sich
dann noch deine Dependencies 

636
00:30:24,190 --> 00:30:27,350
auf, die du brauchst. 
Also so große Projekte haben 

637
00:30:27,350 --> 00:30:30,870
unglaublich viele Dependencies 
und wenn man sich jetzt anguckt,

638
00:30:31,430 --> 00:30:33,590
wie das heute funktioniert, das 
normale Web Development, das 

639
00:30:33,590 --> 00:30:35,230
muss man sich auf der Zunge 
zergehen lassen, dann ist es so,

640
00:30:35,230 --> 00:30:38,020
wenn du das. 
Von Scratch neu installierst. 

641
00:30:38,020 --> 00:30:40,980
Also du hast deine Codebase und 
dann sagst du NPM ist zum 

642
00:30:40,980 --> 00:30:44,220
Beispiel der Paketemanager für 
Node Note Package Manager, der 

643
00:30:44,220 --> 00:30:46,540
macht das so. 
Ja dann sagst du NPM in Stall 

644
00:30:46,820 --> 00:30:48,980
und dann lädt der sich just in 
Time. 

645
00:30:50,260 --> 00:30:53,660
Diese ganzen Dependencies aus 
dem Netz, von diesen ganzen 

646
00:30:53,660 --> 00:30:57,260
Repositories runter. 
Und dann nimmt er deinen Code 

647
00:30:57,260 --> 00:30:59,500
und bastelt ihn dazu und so 
weiter das heißt ein Artefakt, 

648
00:30:59,500 --> 00:31:02,980
dein Produkt, was du da machst, 
ist total abhängig davon, wann 

649
00:31:02,980 --> 00:31:04,820
du es tust. 
Ja, machst du 3 Tage später die 

650
00:31:04,820 --> 00:31:07,660
gleiche Übung, hast du n ganz 
anderes Produkt, weil um dich 

651
00:31:07,660 --> 00:31:09,940
rum irgendwelche Entwickler 
vielleicht schon wieder ihr 

652
00:31:09,940 --> 00:31:12,940
nächstes Patch gemacht haben 
oder den nächsten Miner Update 

653
00:31:13,100 --> 00:31:15,300
und dann kriegst du diese 
Patches und meine Updates 

654
00:31:15,300 --> 00:31:17,340
typischerweise auch mit rein in 
deinen Kram. 

655
00:31:18,220 --> 00:31:21,980
Und das willst du aber nicht 
haben, wenn du wenn du es wäre 

656
00:31:21,980 --> 00:31:24,540
eine Katastrophe du testest zum 
Beispiel irgendwie eine Woche 

657
00:31:24,540 --> 00:31:28,020
lang ja und dann kannst du es 
nicht schaffen reproduzierbar. 

658
00:31:29,110 --> 00:31:32,270
Dieses getestete Ding in das 
finale Artefakt zu verpacken, 

659
00:31:32,270 --> 00:31:35,270
was dann das Docker Image ist, 
wird was ausgeliefert wird. 

660
00:31:35,630 --> 00:31:38,670
Allein dafür braucht es schon 
Tools und diesen Komplex ja gibt

661
00:31:38,670 --> 00:31:41,550
es so Log Files und so weiter 
dass du dann quasi gibt es 

662
00:31:41,550 --> 00:31:44,790
sekundäre Files, die speichern 
dir ab welche exakte Version von

663
00:31:44,790 --> 00:31:47,310
welchem Paket habe ich hier 
genutzt? 

664
00:31:47,990 --> 00:31:50,110
Diese ganzen Sachen die musst du
richtig kriegen. 

665
00:31:50,110 --> 00:31:53,870
Ja das ist alles Teil von diesen
Automatisierungsprozessen weil 

666
00:31:54,150 --> 00:31:55,990
am Ende ist da sogar ein 
Softwareentwickler das lange 

667
00:31:55,990 --> 00:31:57,190
macht mit überfordert das alles 
selber. 

668
00:31:57,860 --> 00:32:00,900
Richtig hinzubiegen, ne, also 
das wollt ich mal so sagen da da

669
00:32:00,900 --> 00:32:02,940
muss ich mal so ne Idee kriegt 
was so los ist. 

670
00:32:02,940 --> 00:32:08,460
Ja und auch wichtig, du musst ja
wenn du jetzt mal n Bug hast und

671
00:32:08,460 --> 00:32:12,580
du willst den Nachstellen 
reproduzieren, das muss man auch

672
00:32:12,580 --> 00:32:16,820
einmal verstanden haben, ein 
fertig ausgerolltes System das. 

673
00:32:17,180 --> 00:32:19,900
In die Hand kriegen ist 
Hochoptimiert da sind die Code 

674
00:32:19,900 --> 00:32:21,340
zahlen nicht mehr leserlich. 
Das wird alles so 

675
00:32:21,340 --> 00:32:25,020
zusammengedampft sag ich mal von
automatischen anderen 

676
00:32:25,020 --> 00:32:28,140
Computerprogrammen, dass das 
hoch optimal läuft mit maximaler

677
00:32:28,140 --> 00:32:30,380
Geschwindigkeit. 
Ein Entwickler kann da nicht 

678
00:32:30,380 --> 00:32:32,340
mehr reingucken, das ist wie n 
wie ne Blackboard ja. 

679
00:32:33,650 --> 00:32:35,930
Wenn man jetzt aber n Fehler 
findet und sagt, in dieser 

680
00:32:35,930 --> 00:32:38,450
Version war was kaputt und du 
musst das in dieser Version noch

681
00:32:38,450 --> 00:32:41,890
fixen und das ist ja kein 
seltener Fall, dann muss ich ja 

682
00:32:41,890 --> 00:32:46,890
in der Lage sein, dieses 
komplexe Produkt nachzustellen, 

683
00:32:46,890 --> 00:32:49,330
aber so, dass es quasi der Code 
wieder offen ist, nicht 

684
00:32:49,330 --> 00:32:52,490
komprimiert und den Fehler 
finden könnten um ihn dann zu 

685
00:32:52,490 --> 00:32:56,410
fixen und auf dieses Ganze 
rückwärts Korrespondenz, dass 

686
00:32:56,410 --> 00:32:58,610
ich quasi in der Lage bin eine 
bestimmte Version mit diesen 

687
00:32:58,610 --> 00:33:01,410
ganzen vielen verteilten 
Komponenten nochmal quasi in der

688
00:33:01,410 --> 00:33:05,290
Entwicklungsumgebung quasi 
hinzubauen, damit ich Bugs 

689
00:33:05,290 --> 00:33:08,110
nachstellen kann. 
Das ist alles hochkomplexe 

690
00:33:08,110 --> 00:33:10,110
Materie und das Bedarf dann 
solcher Tools. 

691
00:33:10,110 --> 00:33:14,190
Jetzt komme ich noch zum Anfang 
von diesen Infrastructure as a 

692
00:33:14,190 --> 00:33:16,630
Code, die in der Lage sind das 
quasi zu tun für dich 

693
00:33:16,630 --> 00:33:18,790
automatisch, weil sonst wirst du
wahnsinnig, da musst du ja die 

694
00:33:18,790 --> 00:33:21,030
zig Systeme anfassen jetzt bist.
Du noch mal ein bisschen 

695
00:33:21,030 --> 00:33:23,110
abgetaucht, auch noch mal ein 
bisschen in Deavups rein oder in

696
00:33:23,110 --> 00:33:24,670
einzelne Methoden daraus oder so
genau. 

697
00:33:24,670 --> 00:33:27,630
Aber nur noch mal, um 
Anzuteasern, damit unsere Nutzer

698
00:33:27,630 --> 00:33:29,990
verstehen, warum man das Macht. 
Als der Softwareentwickler genau

699
00:33:29,990 --> 00:33:30,990
warum? 
Macht man das als 

700
00:33:30,990 --> 00:33:32,510
Softwareentwickler? 
Jetzt will ich aber ganz gerne 

701
00:33:32,510 --> 00:33:34,940
noch mal zum Abschluss eine. 
Höher gehen. 

702
00:33:34,940 --> 00:33:38,540
Ja warum führen Team Staff Ops 
ein? 

703
00:33:38,540 --> 00:33:40,860
Ja also du hast jetzt viel von 
Automatisierung gesprochen und 

704
00:33:40,860 --> 00:33:44,260
von Tools. 
Wirkt sich dann das eigentlich 

705
00:33:44,260 --> 00:33:47,060
auf die Zusammenarbeit in Teams 
auf aus und auf die 

706
00:33:47,060 --> 00:33:50,700
Kommunikation, also auch Dev 
ops, aber wie auch CICD? 

707
00:33:52,430 --> 00:33:54,510
Ist jetzt klingt es für mich so,
als wäre das alles so. 

708
00:33:55,100 --> 00:33:57,460
Stark definiert und 
automatisiert und die 

709
00:33:57,460 --> 00:34:00,220
Schnittstellen sind ganz klar, 
dass da eigentlich keiner mehr 

710
00:34:00,220 --> 00:34:01,940
miteinander sprechen muss. 
So n bisschen ne und 

711
00:34:01,940 --> 00:34:05,420
Kommunikation hinfällig wird, 
Zusammenarbeit also auf ganz 

712
00:34:05,420 --> 00:34:08,020
klare Schnittstellen 
Übergabepunkte beschränkt ist. 

713
00:34:08,060 --> 00:34:11,900
Ja ist das so oder ist das 
eigentlich anders in Teams und 

714
00:34:12,300 --> 00:34:15,260
welche Vorteile hat das 
eigentlich und welche Nachteile 

715
00:34:15,500 --> 00:34:17,940
sowas einzuführen? 
Sehr gute Frage. 

716
00:34:17,940 --> 00:34:20,380
Also ich würde sagen, wenn du 
ein sehr großes Team bist und 

717
00:34:20,380 --> 00:34:22,820
hast ein Produkt mit sehr sehr 
vielen Komponenten, wo sehr 

718
00:34:22,820 --> 00:34:24,380
viele Entwickler an 
verschiedenen Komponenten 

719
00:34:24,380 --> 00:34:25,620
arbeiten. 
Meistens ist das so, dass die 

720
00:34:25,620 --> 00:34:27,300
Entwickler nicht 
komponentenübergreifend 

721
00:34:27,300 --> 00:34:29,139
arbeiten, sondern es gibt 
Spezialisten für bestimmte 

722
00:34:29,139 --> 00:34:31,550
Bereiche. 
Also mindestens Frontend und 

723
00:34:31,550 --> 00:34:33,469
Backend wird oft getrennt. 
Full Stack Entwickler gibt es 

724
00:34:33,469 --> 00:34:36,510
gar nicht so viele. 
Willst du eigentlich schon auch 

725
00:34:36,510 --> 00:34:38,310
die Kommunikation ein bisschen 
limitieren? 

726
00:34:38,310 --> 00:34:40,790
Also du willst ja effizientes 
Projekt haben, das heißt du 

727
00:34:40,790 --> 00:34:44,389
willst minimal kommunizieren 
müssen um maximal zu wissen ob 

728
00:34:44,389 --> 00:34:48,110
das funktionieren wird und 
deswegen wird das automatisiert,

729
00:34:48,110 --> 00:34:50,389
ja dann ist es nämlich so. 
Wenn du jetzt ein Stück Code 

730
00:34:50,389 --> 00:34:53,630
machst in einer bestimmten zu 
einer bestimmten Funktion, für 

731
00:34:53,630 --> 00:34:55,310
die du zuständig bist als 
Entwickler. 

732
00:34:56,340 --> 00:34:58,860
Dann kommunizierst du eigentlich
nur noch mit denen, die das auch

733
00:34:59,020 --> 00:35:01,140
verstehen können. 
Also dieses Review findet statt,

734
00:35:01,140 --> 00:35:05,260
ja, und aber für beide Parteien,
für den Reviewenden und für den,

735
00:35:05,260 --> 00:35:08,460
der den Code geändert hat, ist 
es total essentiell zu sehen, 

736
00:35:08,460 --> 00:35:10,940
dass irgendwann mal, und das ist
jetzt Teil dieser Continuous 

737
00:35:10,940 --> 00:35:15,460
Integration, der Dev Ops, ein 
grünes Licht aufleuchtet, dass 

738
00:35:15,460 --> 00:35:18,660
alle Tests. 
Nichts mit dir direkt zu tun 

739
00:35:18,660 --> 00:35:21,140
haben, aber indirekt ne, die 
werden ja alle automatisch 

740
00:35:21,140 --> 00:35:23,820
angestoßen. 
Ja, dass die Grünen laufen, dann

741
00:35:23,820 --> 00:35:28,580
weißt du schon mal, dieser Code 
wäre technisch erst mal so 

742
00:35:28,580 --> 00:35:30,980
Releasefähig jedenfalls das, was
dir deine Testabdeckung, die du 

743
00:35:30,980 --> 00:35:33,820
gerade hast sagt ja. 
Das total wichtig, weil so. 

744
00:35:34,020 --> 00:35:36,220
Also wir hatten das in der alten
Firma, solange das nicht auf 

745
00:35:36,220 --> 00:35:38,580
Grün ist, brauchst du gar kein 
Review anstoßen, ne, weil mit 

746
00:35:38,580 --> 00:35:40,900
dem roten X, weil weil du 
irgendwas gemacht hast was 

747
00:35:40,900 --> 00:35:42,660
irgendeinen anderen Test failen 
lässt, weil irgendeine 

748
00:35:42,660 --> 00:35:45,340
Schnittstelle nicht richtig 
bedient wird, wie sie eigentlich

749
00:35:45,340 --> 00:35:48,800
definiert war oder irgend sowas.
Ja, kann sagen, das wird halt, 

750
00:35:48,800 --> 00:35:50,480
das wird sowieso nicht durch, 
das blockt es auch. 

751
00:35:50,480 --> 00:35:53,120
Ja und deswegen und eigentlich 
willst du nämlich tatsächlich 

752
00:35:53,120 --> 00:35:56,000
die Kommunikation schon schlank 
halten, ja, du willst nur mit 

753
00:35:56,000 --> 00:35:58,680
deinem, mit deinen Leuten, die 
auch von deinem Code so n 

754
00:35:58,680 --> 00:36:00,680
bisschen was verstehen Reviews 
machen, weil das ist ja 

755
00:36:00,680 --> 00:36:03,360
aufwendig so n so n wenn du n 
ordentliches Code Review machst,

756
00:36:03,800 --> 00:36:05,840
dann muss ja derjenige der 
Reviewt sich schon auch tief 

757
00:36:05,840 --> 00:36:07,800
einarbeiten. 
Wir sprechen hier von Source 

758
00:36:07,800 --> 00:36:10,880
Code, das ist ja jetzt keine 
keine laxe Materie, oft ist das.

759
00:36:12,060 --> 00:36:14,900
So und dann, und dann will ich 
quasi das relativ schmal halten.

760
00:36:14,900 --> 00:36:17,900
Ich kommuniziere aber nur mit 
mit den notwendigen Kollegen, 

761
00:36:17,900 --> 00:36:19,180
sag ich mal. 
Ja, also so würd ich es 

762
00:36:19,180 --> 00:36:21,660
jedenfalls organisieren. 
Ja, und so ist es glaub ich auch

763
00:36:21,660 --> 00:36:23,900
viel organisiert O. 
K, das heißt, Kommunikation wird

764
00:36:23,900 --> 00:36:26,380
tatsächlich Runtergeschraubt. 
Es ist, es ist so eine. 

765
00:36:26,820 --> 00:36:28,980
In Technik definierte 
Schnittstelle dann häufig sogar 

766
00:36:28,980 --> 00:36:31,300
schon, wie du gerade sagst. 
Ja, die Lämpchen gehen auf grün,

767
00:36:31,340 --> 00:36:33,260
dann kann ich überhaupt erst 
weitermachen oder eben nicht, 

768
00:36:33,260 --> 00:36:36,660
dann muss ich erstmal auch für 
mich bleiben und und das heißt 

769
00:36:36,660 --> 00:36:40,460
Kreativität ist in so einem 
Prozess eigentlich jetzt nicht 

770
00:36:40,460 --> 00:36:42,820
erlaubt. 
Sondern beschränkt sich dann auf

771
00:36:42,820 --> 00:36:45,540
die auf die einzelnen Schritte. 
Ja, ich kann in meinem Ticket 

772
00:36:45,540 --> 00:36:48,740
kreativ werden, ich kann 
vielleicht beim Operations 

773
00:36:48,740 --> 00:36:51,860
kreativ werden oder sowas, also 
kreativ im Sinne von ich. 

774
00:36:51,860 --> 00:36:54,180
Ich kann überlegen, wie ich das 
jetzt löse, ne gewisse 

775
00:36:54,180 --> 00:36:57,500
Herausforderung ne aber? 
Den Prozess darf ich eigentlich 

776
00:36:57,820 --> 00:36:59,060
nicht jetzt anfangen zu 
verändern. 

777
00:36:59,060 --> 00:37:01,140
Also ich muss schon konform 
sein, denn als Entwickler in so 

778
00:37:01,140 --> 00:37:03,260
einem großen Team und und und 
kann da nicht aus der Reihe 

779
00:37:03,260 --> 00:37:05,580
tanzen. 
Nee, nee, überhaupt nicht. 

780
00:37:05,580 --> 00:37:08,260
Und dann also man versucht 
tatsächlich auch das, das liegt 

781
00:37:08,260 --> 00:37:09,700
an der Physik der Dinge, sag ich
mal. 

782
00:37:09,700 --> 00:37:11,860
Man versucht die Tickets sehr 
klein zu halten, ne, also ich 

783
00:37:11,860 --> 00:37:14,500
mach nie irgendwas großes. 
Ja im besten Fall habe ich nur 

784
00:37:14,500 --> 00:37:18,660
sehr kleine gekapselte Dinge die
ich tue und bringe die rein, 

785
00:37:18,740 --> 00:37:21,300
weil je größer das Teil wird und
am schlimmsten ist übergreift 

786
00:37:21,300 --> 00:37:23,580
irgendwelche Schnittstellen und 
Grenzen dann habe ich ein 

787
00:37:23,580 --> 00:37:26,660
größeres Teil so dann muss mehr 
kommuniziert werden, da müssen 

788
00:37:26,940 --> 00:37:29,340
mehrere Tests angefasst werden, 
da muss teamübergreifend 

789
00:37:29,340 --> 00:37:30,940
irgendwas gemacht werden, aber 
das. 

790
00:37:31,220 --> 00:37:32,460
Auch im echten Leben. 
Ja, auch so habe ich ein 

791
00:37:32,460 --> 00:37:35,620
komplexes Produkt, Maschine oder
irgend sowas und will die ich 

792
00:37:36,020 --> 00:37:38,900
will was was was 
maschinenübergreifendes 

793
00:37:38,900 --> 00:37:41,700
Komplexes ändern. 
Da müssen wieder viele Sachen 

794
00:37:41,700 --> 00:37:43,020
angeguckt werden. 
Ob die danach noch 

795
00:37:43,020 --> 00:37:44,780
funktionieren. 
Ne, das macht das, das ist schon

796
00:37:44,780 --> 00:37:47,820
ne schwierige, das geht aber 
trotzdem auch auch dafür hilft 

797
00:37:47,820 --> 00:37:50,460
dir die Automatisierung ja, aber
dann dann dann macht man es 

798
00:37:50,460 --> 00:37:52,940
quasi nicht in so nen kleinen 
Check out Brunch, das macht man 

799
00:37:52,940 --> 00:37:55,380
quasi. 
Dann teilt man das Produkt, die 

800
00:37:55,380 --> 00:37:59,100
Hauptlinie quasi in ne zweite 
Linie und dann müssen quasi 

801
00:37:59,140 --> 00:38:01,700
mehrere gleichzeitig ne längere 
Zeit an einem zweiten 

802
00:38:01,700 --> 00:38:04,060
entwicklungsbahnschen Feature 
Branch zum Beispiel wenn das was

803
00:38:04,060 --> 00:38:05,860
Größeres ist. 
N größeres Feature gibt es ja 

804
00:38:05,860 --> 00:38:07,900
auch, ja. 
Müssen sie halt arbeiten, 

805
00:38:07,900 --> 00:38:10,740
während der Alte noch bedient 
wird, die die Bugs und so weiter

806
00:38:10,740 --> 00:38:12,940
von dem alten müssen noch gefixt
werden, sehr teuer für so n. 

807
00:38:12,940 --> 00:38:15,380
Für so ne Firma, dann teilt 
quasi das Entwicklungsteam oder 

808
00:38:15,380 --> 00:38:17,740
die die Leute teilen sich 
aufmachen n bisschen an dem ganz

809
00:38:17,740 --> 00:38:20,100
neuen Krams rum, während der 
Alte noch am Leben gehalten 

810
00:38:20,100 --> 00:38:23,940
werden muss, ja. 
Und genau und und auch dafür 

811
00:38:23,940 --> 00:38:26,100
brauchst du halt ganz, ganz 
dringend versionskontrolle und 

812
00:38:26,100 --> 00:38:28,580
so weiter du willst halt also 
das kriegst du im Leben nicht 

813
00:38:28,580 --> 00:38:32,020
manuell gemanagt so ja und die 
Versionskontrolle, das Wissen 

814
00:38:32,020 --> 00:38:34,100
vielleicht auch viel und ich 
sage hier noch mal, es ist ja 

815
00:38:34,100 --> 00:38:37,020
so, dass je nachdem du kannst 
halt sagen, ich will als 

816
00:38:37,020 --> 00:38:39,900
Softwareentwickler auf einen 
bestimmten Entwicklungsbranch an

817
00:38:39,900 --> 00:38:43,220
einem bestimmten Punkt springen 
und was passiert ist, werden 

818
00:38:43,220 --> 00:38:45,860
unter deinem Hintern tatsächlich
alle Dateien ausgetauscht und so

819
00:38:45,860 --> 00:38:47,860
weiter physikalisch du siehst 
dann. 

820
00:38:48,620 --> 00:38:51,620
Die die so, die den den 
Sourcecode an dieser Stelle in 

821
00:38:51,620 --> 00:38:53,380
diesem zu diesem Zeitpunkt auf 
diesem Branch. 

822
00:38:53,380 --> 00:38:56,260
Ja, und das ist alles konsistent
in sich, ja, also das kriegst du

823
00:38:56,260 --> 00:38:58,100
sowieso nie im Leben hinkriegen,
wenn du irgendwie da mit 

824
00:38:58,100 --> 00:39:00,060
irgendwelchen Files selber 
rumjonglierst und so weiter. 

825
00:39:00,500 --> 00:39:03,260
Und das heißt ineinander 
integriert und deswegen mit den 

826
00:39:03,260 --> 00:39:06,380
Tests und so weiter die hängen 
alle davon ab das Versions das 

827
00:39:06,380 --> 00:39:08,980
Versionssystem ist quasi so n 
bisschen der Dreh und Angelpunkt

828
00:39:08,980 --> 00:39:11,540
die Drehscheibe für diese ganzen
Automatismen die dran kommen 

829
00:39:11,540 --> 00:39:12,300
und. 
Für für so n. 

830
00:39:12,300 --> 00:39:14,780
Für diese ganzen Automatismen 
und diese ganzen Tools und diese

831
00:39:14,780 --> 00:39:16,100
ganzen Überlegungen, was den 
Prozess. 

832
00:39:16,500 --> 00:39:18,540
Angeht. 
Wer ist dann am Ende zuständig? 

833
00:39:18,540 --> 00:39:20,780
Das ist so ne Art 
Entwicklungsleiterleiterin also 

834
00:39:20,780 --> 00:39:23,660
oder gibt es da noch mal wieder 
ne eigene Rolle sowie was weiß 

835
00:39:23,660 --> 00:39:26,620
ich Scrum Master beim 
Development oder so oder. 

836
00:39:28,140 --> 00:39:30,620
Ich würde sagen, dass der 
Vorsitzende vom DEV Ops Team so 

837
00:39:30,620 --> 00:39:32,660
ja also der DEV ops bleibt, wenn
man sich das leisten kann, dann 

838
00:39:32,660 --> 00:39:36,100
hast du nen in diesen, das sind 
sehr sehr prominente stellen 

839
00:39:36,100 --> 00:39:38,820
auch sehr gut bezahlt im Moment 
glaube ich höher wenn man so 

840
00:39:38,820 --> 00:39:40,740
guckt als ein 
Softwareentwicklerstelle. 

841
00:39:41,260 --> 00:39:43,540
Denn man muss sehr viel wissen 
und sehr viel Tools kennen. 

842
00:39:43,540 --> 00:39:46,660
Es ändert sich auch ständig und 
man hat sehr viel Verantwortung,

843
00:39:46,660 --> 00:39:50,100
weil das mindestens genauso 
wichtig das Ding irgendwie auf 

844
00:39:50,100 --> 00:39:54,020
die Straße zu setzen, als es 
überhaupt zu bauen ne und und 

845
00:39:54,020 --> 00:39:56,340
derjenige entscheidet das glaube
ich, in enger Abstimmung mit 

846
00:39:56,340 --> 00:39:58,820
Management und so weiter aber 
der der Leiter des DEV Ops 

847
00:39:58,820 --> 00:40:00,380
Teams. 
Ist tatsächlich eher eine 

848
00:40:00,380 --> 00:40:02,420
Expertenrolle als eine leitende 
Rolle. 

849
00:40:02,420 --> 00:40:04,540
Sogar jetzt auf jeden. 
Fall ist eine Expertenrolle, 

850
00:40:04,540 --> 00:40:07,100
also einfach eine leitende 
Angestellter schafft das nicht, 

851
00:40:07,100 --> 00:40:09,300
also ein Dev ops. 
Ein erfahrener Devopsingenieur 

852
00:40:09,300 --> 00:40:12,630
hat sehr viel Fachwissen. 
Sehr aktuelles Fachwissen und 

853
00:40:12,630 --> 00:40:14,430
gibt. 
Es dann irgendwelche bestimmten.

854
00:40:14,590 --> 00:40:16,630
Weißt du das? 
Gibt es irgendwelche bestimmten 

855
00:40:16,630 --> 00:40:20,310
kp is? 
An denen sowas so ein Prozess 

856
00:40:20,310 --> 00:40:22,430
dann gemessen wird, ob der 
erfolgreich ist oder nicht. 

857
00:40:22,430 --> 00:40:24,630
Also. 
Naja, ich würde sagen, also der 

858
00:40:24,630 --> 00:40:27,670
eine KPI der alles zählt ist 
funktioniert. 

859
00:40:27,670 --> 00:40:30,830
Diese Automatisierung im besten 
Falle kannst Du auf ein kannst 

860
00:40:30,830 --> 00:40:32,990
du sagen und das machst du 
einfach, du checkst zum Beispiel

861
00:40:32,990 --> 00:40:35,270
einen Tag ein, was so viel heißt
ich möchte jetzt hier ein 

862
00:40:35,270 --> 00:40:38,220
Release machen. 
Und wenn das dann einfach 

863
00:40:38,220 --> 00:40:41,940
durchrutscht und alle Tests 
werden Grün und am Ende hat der 

864
00:40:41,940 --> 00:40:45,060
Endkunde sogar nicht nur nen 
Delivery sondern so n Deployment

865
00:40:45,060 --> 00:40:47,860
und alles ist da und das eine 
neue Feature ist mit drin, dann 

866
00:40:47,860 --> 00:40:50,020
hab ich alles richtig gemacht 
als devopsingenieur. 

867
00:40:50,780 --> 00:40:53,180
Und aber ich glaube, das echte 
Leben ist irgendwo dazwischen, 

868
00:40:53,220 --> 00:40:54,940
zwischen kompletter 
Automatisierung und semio 

869
00:40:54,940 --> 00:40:57,380
Automatisierung. 
Aber das der Heilige Gral ist 

870
00:40:57,900 --> 00:41:01,780
das im Prinzip jeder zu jedem 
Zeitpunkt sagen kann, hier das 

871
00:41:01,780 --> 00:41:04,300
Review ist gut, das Ding kommt 
rein, ich drücke auf den Knopf 

872
00:41:04,900 --> 00:41:07,780
und dann dauert es ein bisschen,
je nachdem, es ist ja auch 

873
00:41:07,780 --> 00:41:09,940
manchmal sehr viel, deswegen 
kann man es auch gar nicht mehr 

874
00:41:09,940 --> 00:41:11,980
lokal machen, deswegen brauchen 
wir auch diese Tools, man 

875
00:41:11,980 --> 00:41:13,700
braucht manchmal richtig 
Materie, richtig Server, das 

876
00:41:13,700 --> 00:41:16,580
alles kompilieren und nach 2 
Stunden das neue Release draußen

877
00:41:16,620 --> 00:41:18,540
und ohne dass ich irgendwie 
Angst haben muss, dass irgendwas

878
00:41:18,540 --> 00:41:20,580
kaputt gegangen ist oder ich 
irgendeine Komponente vergessen 

879
00:41:20,580 --> 00:41:22,830
habe, oder? 
Irgendein System nicht 

880
00:41:22,830 --> 00:41:24,870
hochgekommen ist, denn wir haben
ja auch mit echter Hardware zu 

881
00:41:24,870 --> 00:41:26,350
tun. 
Das ist auch nicht vergessen, 

882
00:41:26,350 --> 00:41:27,870
wenn ich jetzt immer, ich 
spreche immer wieder, sind auf 

883
00:41:27,870 --> 00:41:29,590
verschiedenen Servern, manchmal 
geht ja auch einfach eine 

884
00:41:29,590 --> 00:41:32,190
Festplatte kaputt oder 
irgendwas, da kümmern sich 

885
00:41:32,190 --> 00:41:35,270
meistens die Cloud Anbieter 
drin, aber im Prinzip gehört das

886
00:41:35,270 --> 00:41:37,710
auch dazu, ja, da muss das 
erkannt werden und quasi auf den

887
00:41:37,710 --> 00:41:39,430
nächsten deployed werden und so 
weiter. 

888
00:41:39,430 --> 00:41:41,430
Also es ist am. 
Ende eine Effizienzkennzahl, die

889
00:41:41,430 --> 00:41:44,030
dann tatsächlich den Erfolg 
bemessen könnte. 

890
00:41:44,270 --> 00:41:47,070
Ja, und garantiert die halt die 
Performance vom Team, weil du 

891
00:41:47,070 --> 00:41:48,750
willst halt die 
Softwareentwickler komplett 

892
00:41:48,750 --> 00:41:51,670
freihalten von diesen ganzen 
Prozessgedöns. 

893
00:41:51,870 --> 00:41:54,310
Du willst halt das die Coden 
können effektiv. 

894
00:41:54,500 --> 00:41:57,020
Von deren Features und Bugs 
arbeiten und sich nicht kümmern 

895
00:41:57,020 --> 00:41:58,620
müssen. 
Ob der Rest irgendwie läuft ne 

896
00:41:58,620 --> 00:42:00,660
und es ist natürlich auch ein 
Langzeitstabilität für dein 

897
00:42:00,660 --> 00:42:03,660
Produkt, wenn du sowas aufgebaut
hast und das kontinuierlich 

898
00:42:03,660 --> 00:42:06,460
weiterbaust und du jedes neue 
Feature und jeden Bug und im 

899
00:42:06,460 --> 00:42:09,380
Test hinterlegst wo du dann 
automatisiert quasi sehen 

900
00:42:09,380 --> 00:42:12,140
kannst, läuft es oder läuft es 
nicht, dann baust du natürlich 

901
00:42:12,140 --> 00:42:14,620
eine riesen Geschwindigkeit auf 
und wenn du es nicht machst, 

902
00:42:14,620 --> 00:42:17,060
verlierst du ganz viel 
Geschwindigkeit gegenüber einer 

903
00:42:17,060 --> 00:42:18,940
Firma, die das zum Beispiel 
macht, dann brauchst du halt 

904
00:42:18,940 --> 00:42:21,820
ganz viel Personal mehr wie es 
halt so ist, ist quasi die 

905
00:42:21,820 --> 00:42:24,060
Digitalisierung einer Software 
Firma könnte man sagen die 

906
00:42:24,060 --> 00:42:26,030
devops. 
Verschlafen manche 

907
00:42:26,030 --> 00:42:27,590
Softwarefirmen auch, so wie 
manche Maschinenbauer das 

908
00:42:27,590 --> 00:42:29,590
verschlafen? 
Ich glaube, das wird teuer am 

909
00:42:29,590 --> 00:42:30,870
Ende des Tages. 
Apropos. 

910
00:42:30,870 --> 00:42:33,590
Man braucht ganz viel Personal. 
Vielleicht machen wir so eine 

911
00:42:33,590 --> 00:42:36,590
Folge nochmal. 
Wenn man noch mehr Erfahrung mit

912
00:42:36,590 --> 00:42:38,830
größeren Teams gesammelt haben. 
Das Team wächst. 

913
00:42:38,830 --> 00:42:42,390
Bookert wen suchst du gerade? 
Ah ja, das stimmt ja genau, das 

914
00:42:42,390 --> 00:42:44,150
Team wächst. 
Wir suchen gerade einen 

915
00:42:44,150 --> 00:42:49,230
Frontentwickler für für uns, der
Lust hat auf ein Startup, sich 

916
00:42:49,230 --> 00:42:52,790
da auf verwirklichen kann ja 
viel Verantwortung übernehmen 

917
00:42:52,790 --> 00:42:56,110
darf und das ist auch vielleicht
eine Last. 

918
00:42:56,300 --> 00:42:59,660
Das muss man auch rollen, aber 
man hat natürlich, wir arbeiten 

919
00:42:59,660 --> 00:43:01,740
am schönen Produkt glaub ich und
der auch n bisschen Gefühl für 

920
00:43:01,740 --> 00:43:07,380
UX hat n schönes Aussehen und ja
Lust auf Start Feeling hat ja 

921
00:43:07,380 --> 00:43:10,780
jetzt bei uns genau richtig. 
Ja möge sich bewerben ne oder 

922
00:43:10,780 --> 00:43:13,820
sie. 
Und wahrscheinlich javascript. 

923
00:43:13,820 --> 00:43:19,740
Und der React ist noch n Thema. 
Genau und javascript richtig. 

924
00:43:19,740 --> 00:43:21,740
Also wer jemanden kennt oder 
sogar zuhört, hier als 

925
00:43:21,740 --> 00:43:23,380
Frontentwickler, darf sich gerne
mal melden. 

926
00:43:23,380 --> 00:43:26,660
Ja, wir sind gerade dabei, ja, 
die ersten Gespräche zu führen. 

927
00:43:27,140 --> 00:43:29,300
Und nehmen natürlich gern noch 
Bewerbungen. 

928
00:43:29,380 --> 00:43:33,700
Soviel zur Werbung, ja dann wird
es passend für mich. 

929
00:43:33,700 --> 00:43:38,380
Forgot ja, ich. 
Hab mehr verstanden. 

930
00:43:38,380 --> 00:43:41,780
Ich hab das natürlich anfangs n 
bisschen selber rein gelesen, 

931
00:43:41,780 --> 00:43:43,980
aber ich hab jetzt n besseres 
Gefühl, was es eigentlich 

932
00:43:43,980 --> 00:43:46,820
bedeutet Deff Ops das ist es ist
tatsächlich dieses Set an 

933
00:43:46,820 --> 00:43:49,020
Methoden und so ins 
Gesamtprozess zu betrachten und 

934
00:43:49,020 --> 00:43:50,620
nicht es nicht. 
Es gibt jetzt nicht diese eine 

935
00:43:50,620 --> 00:43:53,820
Dev aufs. 
Personen oder sowas, die beides 

936
00:43:53,820 --> 00:43:56,500
macht, sondern es ist eigentlich
n übergreifendes Thema, ne. 

937
00:43:56,500 --> 00:43:58,500
Ja, ich, ich glaube das, was ich
zuletzt gesagt hat, hat mich 

938
00:43:58,500 --> 00:44:00,420
selber überzeugt. 
Also es ist quasi die die 

939
00:44:00,420 --> 00:44:03,620
Digitalisierung der eigenen, 
eine Softwareunternehmens, was 

940
00:44:03,620 --> 00:44:05,980
irgendwie in sich komisch 
klingt, aber die Digitalisierung

941
00:44:05,980 --> 00:44:07,940
der Prozesse ein und 
Automatisierungsprozesse 

942
00:44:07,940 --> 00:44:11,580
innerhalb einer eines Software 
schaffenden Unternehmens, das 

943
00:44:11,580 --> 00:44:13,260
trifft es, glaube ich ziemlich 
gut. 

944
00:44:13,260 --> 00:44:15,340
Perfekt. 
Dann den Deckel drauf, so ist 

945
00:44:15,340 --> 00:44:17,420
es. 
Danke dir wie immer und danke 

946
00:44:17,460 --> 00:44:20,180
euch fürs Zuhören. 
Wir hören uns in 2 Wochen 

947
00:44:20,180 --> 00:44:21,900
wieder, so sieht's aus bei dem 
Thema. 

948
00:44:22,790 --> 00:44:25,110
Schönen Abend, Tschüss aus 
Hamburg, das hab ich gesagt. 

949
00:44:25,110 --> 00:44:26,070
Ja ist. 
Doch gut, dann wünsche ich noch 

950
00:44:26,070 --> 00:44:29,420
einen schönen Abend heute. 
Ciao. 

951
00:44:31,180 --> 00:44:33,300
Flex wird präsentiert und 
produziert von Highsomware. 

952
00:44:33,500 --> 00:44:34,780
Wir freuen uns auf deine Fragen 
und 

953
00:44:34,780 --> 00:44:38,380
deinfeedbackanpodcast@heisewerk.com
vielen Dank fürs Hören dieser 

954
00:44:38,380 --> 00:44:41,020
Folge bis Dienstag in 2 Wochen 
und Tschüss aus Hamburg.

