1
00:00:00,320 --> 00:00:02,680
Hi everyone, My name is Patrick 
O Kew and if you're interested 

2
00:00:02,680 --> 00:00:05,600
in mastering software 
engineering as a craft, this 

3
00:00:05,600 --> 00:00:08,240
episode is for you. 
Joining me today is Joris 

4
00:00:08,240 --> 00:00:12,040
Gowkers, CTO and hands on 
Architect over at Trifork, and 

5
00:00:12,040 --> 00:00:14,560
he has over 25 years of 
experience in this industry, 

6
00:00:14,840 --> 00:00:17,320
more than yours and mine 
combined potentially. 

7
00:00:17,880 --> 00:00:20,280
He walks us through what to 
focus on when you're early in 

8
00:00:20,280 --> 00:00:24,240
career or already senior with 
regards to how to master new 

9
00:00:24,240 --> 00:00:28,440
topics, which environments to be
in to thrive and much, much 

10
00:00:28,440 --> 00:00:29,400
more. 
So enjoy. 

11
00:00:33,480 --> 00:00:36,200
In essence, you've been in the 
industry for a lot longer than 

12
00:00:36,200 --> 00:00:38,960
me, and I think for a lot longer
than most listeners as well. 

13
00:00:39,200 --> 00:00:42,080
What still gives you energy when
you're creating software, when 

14
00:00:42,080 --> 00:00:45,480
you're delivering things? 
Yeah. 

15
00:00:45,480 --> 00:00:48,760
What I one thing that I still 
like, and that's also why I like

16
00:00:48,760 --> 00:00:51,600
being very deep into a tech 
stack, is to actually have a 

17
00:00:51,600 --> 00:00:56,040
feeling of mastery where if you 
do get a new problem, you don't 

18
00:00:56,040 --> 00:00:58,640
feel overwhelmed. 
Or if I go, man, how we're going

19
00:00:58,640 --> 00:01:01,240
to do this, I've no idea. 
But you actually feel in 

20
00:01:01,240 --> 00:01:03,640
control. 
You feel in a way that you can 

21
00:01:03,640 --> 00:01:06,400
say, OK, I understand what you 
want, I can plot out some 

22
00:01:06,400 --> 00:01:08,640
alternatives. 
I can think about the different 

23
00:01:08,640 --> 00:01:11,040
pros and cons of different 
alternatives, then make it work.

24
00:01:11,840 --> 00:01:14,160
And then when you do that and it
actually works, that's still 

25
00:01:14,160 --> 00:01:15,840
something that I find very 
rewarding. 

26
00:01:16,520 --> 00:01:20,560
I always joke at work. 
That's my methodology is 

27
00:01:20,680 --> 00:01:23,280
Kaiper's first time, right? 
I like to build something that 

28
00:01:23,280 --> 00:01:26,080
just works rather than have to 
reiterate and fix and fix and 

29
00:01:26,080 --> 00:01:27,200
fix. 
No, this is not the way. 

30
00:01:27,960 --> 00:01:30,480
And you can only do that when 
you, when you have a like a deep

31
00:01:30,480 --> 00:01:32,960
understanding upfront of what 
you're going to do, what you're 

32
00:01:32,960 --> 00:01:34,520
going to encounter, what the 
pros and cons are. 

33
00:01:35,840 --> 00:01:39,000
Because in the end, what I, what
I like to do is on the one hand,

34
00:01:39,000 --> 00:01:41,720
I like to build custom software.
That's what I've been doing for 

35
00:01:41,720 --> 00:01:44,040
a very long time already. 
And I, I still enjoy doing that.

36
00:01:44,720 --> 00:01:48,320
But I also like to do it in a, 
in a way that for customers 

37
00:01:49,000 --> 00:01:51,880
sounds like a real benefit 
rather than something that just 

38
00:01:51,880 --> 00:01:54,160
costs a lot of additional money 
because they couldn't buy 

39
00:01:54,160 --> 00:01:55,200
something off the shelf. 
Right. 

40
00:01:55,200 --> 00:01:58,480
That's very often the perception
of, of enterprise custom 

41
00:01:58,480 --> 00:01:59,880
software. 
It's, Oh yeah, it's just going 

42
00:01:59,880 --> 00:02:02,960
to be expensive because it is 
expensive to do something that 

43
00:02:02,960 --> 00:02:07,960
is completely custom. 
So that's that feeling of 

44
00:02:07,960 --> 00:02:11,520
mastery where you can both 
quickly show that you can 

45
00:02:11,520 --> 00:02:14,280
deliver real business value and 
at the same time know that the 

46
00:02:14,280 --> 00:02:17,200
way that you've done it is not 
like taking shortcuts or doing a

47
00:02:17,200 --> 00:02:19,880
hack, but to do something proper
that you will be able to 

48
00:02:19,880 --> 00:02:21,800
maintain for a longer time as 
well, for example. 

49
00:02:22,160 --> 00:02:23,480
Yeah, that's still something I 
really enjoy. 

50
00:02:23,800 --> 00:02:27,960
I feel like that, like the idea 
of mastering your, I love that. 

51
00:02:27,960 --> 00:02:29,720
But also in software 
engineering, there's so many new

52
00:02:29,720 --> 00:02:31,400
things that like come in and 
out. 

53
00:02:31,760 --> 00:02:35,000
How do you still like have this 
confidence of mastery? 

54
00:02:35,320 --> 00:02:38,640
Because even for me, I've done 
this for like 8 years now in the

55
00:02:38,640 --> 00:02:41,280
industry, I don't feel like I've
mastered this craft. 

56
00:02:41,320 --> 00:02:42,520
I feel like new stuff always 
keeps. 

57
00:02:42,840 --> 00:02:45,080
It's true, yeah. 
It's, it's what I like in 

58
00:02:45,080 --> 00:02:49,040
general as to have to drive the 
direction of where I need to 

59
00:02:49,040 --> 00:02:52,760
learn and where I need to evolve
is to, to, to have real real 

60
00:02:52,760 --> 00:02:54,520
work or real problems that I 
need to solve. 

61
00:02:54,880 --> 00:02:57,640
So this has been a problem, for 
example, if for myself in my 

62
00:02:57,640 --> 00:03:01,240
previous job when I was working 
for spring Source as a trainer 

63
00:03:01,240 --> 00:03:04,880
and consultant, this would 
always be when it wasn't 

64
00:03:04,880 --> 00:03:06,920
training. 
The consultancy was typically 

65
00:03:06,920 --> 00:03:09,480
short assignments, couple of 
days with the customer. 

66
00:03:09,480 --> 00:03:11,960
They had some particular issue 
that they were struggling with 

67
00:03:11,960 --> 00:03:14,000
or they wanted to learn about 
something that they didn't 

68
00:03:14,000 --> 00:03:15,440
understand yet. 
And I would help them out. 

69
00:03:15,440 --> 00:03:20,480
But when you do that and then 
you do some trainings and then 

70
00:03:20,480 --> 00:03:23,080
every now and then you have like
a week where there's downtime, 

71
00:03:23,080 --> 00:03:24,920
you can just start studying 
stuff. 

72
00:03:25,560 --> 00:03:26,800
There's nothing really to tell 
you. 

73
00:03:26,800 --> 00:03:30,760
OK, so out of the 5000 things 
that I could start to research 

74
00:03:30,760 --> 00:03:32,600
now, what is it that I'm going 
to do? 

75
00:03:32,640 --> 00:03:35,600
Because, well, you have your 
personal interests, but it 

76
00:03:35,600 --> 00:03:37,840
doesn't really make sense to 
only have your personal interest

77
00:03:37,840 --> 00:03:39,400
drive your professional 
development. 

78
00:03:39,400 --> 00:03:41,520
It should come from professional
requirements. 

79
00:03:42,280 --> 00:03:46,560
So what I really like about my 
current job is that most of the 

80
00:03:46,560 --> 00:03:49,120
stuff that I research is 
actually driven by real 

81
00:03:49,120 --> 00:03:51,880
requirements. 
So if I'm, for example, I'm 

82
00:03:51,880 --> 00:03:54,400
currently working for Nate 
Longslow today that does 

83
00:03:54,400 --> 00:03:57,000
lotteries for a couple of years 
already where we are building a 

84
00:03:57,000 --> 00:04:01,360
big integration platform. 
So the typical concerns there 

85
00:04:01,360 --> 00:04:07,280
are stuff like making robust 
integrations to external systems

86
00:04:07,280 --> 00:04:11,040
where we have item potency and 
retries and circuit Breakers and

87
00:04:11,040 --> 00:04:13,280
observability and all of that 
stuff in place. 

88
00:04:14,200 --> 00:04:17,760
It's about orchestration, making
sure that the one we have 

89
00:04:17,760 --> 00:04:20,519
business processes that span 
multiple back ends and something

90
00:04:20,519 --> 00:04:23,280
goes wrong, that we can correct 
it in a way that everything is 

91
00:04:23,280 --> 00:04:26,400
still consistent and that 
automatically that focus gives 

92
00:04:26,400 --> 00:04:29,040
me a way of, OK, so this is what
I need to learn. 

93
00:04:29,040 --> 00:04:33,040
I need to dive into what tooling
is available to make sure that 

94
00:04:33,040 --> 00:04:35,520
we have stuff like circuit 
breaking in place. 

95
00:04:35,840 --> 00:04:38,240
I need to look into 
observability to make sure that 

96
00:04:38,240 --> 00:04:40,680
not only do we have login, but 
we have metrics around all of 

97
00:04:40,680 --> 00:04:43,040
this and we can do dashboarding 
and we can see what's happening 

98
00:04:43,240 --> 00:04:46,360
because we have over 40 back 
ends that we're actually 

99
00:04:46,360 --> 00:04:48,680
integrating into this platform. 
So it's, it's huge. 

100
00:04:50,520 --> 00:04:53,400
And that's, yeah, that sort of 
automatically gives you a way, a

101
00:04:53,400 --> 00:04:56,040
way forward. 
We're running stuff on 

102
00:04:56,080 --> 00:04:58,120
Kubernetes. 
So that means, OK, I need to 

103
00:04:58,120 --> 00:05:00,920
learn about containerization, 
how to effectively do that with 

104
00:05:00,920 --> 00:05:03,360
my applications. 
The way that you package up a 

105
00:05:03,360 --> 00:05:06,080
Spring Boot application, for 
example, in a, in a Docker image

106
00:05:06,840 --> 00:05:09,120
makes a big difference in how it
actually performs and how it 

107
00:05:09,120 --> 00:05:12,680
runs and how it builds. 
Also, you don't want to like 

108
00:05:12,680 --> 00:05:15,440
have to rebuild the entire layer
just because of a single code 

109
00:05:15,440 --> 00:05:19,080
change. 
So yeah, that I usually try to 

110
00:05:19,080 --> 00:05:23,400
let the the the the requirements
of, of real projects of real 

111
00:05:23,400 --> 00:05:26,080
customers drive what I'm 
actually getting into. 

112
00:05:26,600 --> 00:05:29,920
And that has been working out 
quite well for for the last 20 

113
00:05:29,920 --> 00:05:31,680
years. 
I mean, I've, I've been doing 

114
00:05:31,680 --> 00:05:34,400
something similar where if 
there's a certain problem at a 

115
00:05:34,400 --> 00:05:37,000
customer with specific 
technologies, that for me is the

116
00:05:37,000 --> 00:05:39,680
opportunity to dive deep in 
those technologies specifically.

117
00:05:40,240 --> 00:05:43,240
I don't have this inkling of 
this interest to go deep by 

118
00:05:43,240 --> 00:05:45,800
myself to just various 
technologies because I don't 

119
00:05:45,800 --> 00:05:48,160
know if I'm going to apply that.
Similar with me and sometimes I 

120
00:05:48,760 --> 00:05:50,400
that could also be tricky, 
right? 

121
00:05:50,400 --> 00:05:52,800
Because you're only learning the
stuff that happens to be in the 

122
00:05:52,800 --> 00:05:53,960
like. 
A chicken egg problem? 

123
00:05:53,960 --> 00:05:54,720
No. 
Exactly. 

124
00:05:54,760 --> 00:05:59,920
So for example, recently with a 
colleague, I was invited to an 

125
00:05:59,920 --> 00:06:02,760
event or a seminar around 
quantum computing. 

126
00:06:03,160 --> 00:06:05,320
And this was one of those areas 
where it's like, oh, this is 

127
00:06:05,320 --> 00:06:08,720
completely foreign to me. 
I need to, I don't know anything

128
00:06:08,720 --> 00:06:10,400
about this. 
And I know people also in the 

129
00:06:10,400 --> 00:06:13,640
Java space that have been 
looking into what is quantum 

130
00:06:13,640 --> 00:06:14,960
computing. 
They've tried to make it 

131
00:06:15,360 --> 00:06:17,840
digestible and explainable to 
people. 

132
00:06:18,320 --> 00:06:19,560
And I find it sort of 
interesting. 

133
00:06:19,560 --> 00:06:22,800
But it's indeed not the thing 
that I'm just by myself are 

134
00:06:23,000 --> 00:06:25,920
going to be spending a lot of 
time on because I am very 

135
00:06:25,920 --> 00:06:29,480
focused on professional 
engineering. 

136
00:06:29,480 --> 00:06:31,080
That's always what I've been 
doing. 

137
00:06:32,360 --> 00:06:35,160
Before I got into college, I I 
didn't want to study computer 

138
00:06:35,160 --> 00:06:37,520
science because I thought that's
just going to be sitting behind 

139
00:06:37,520 --> 00:06:38,920
the computer. 
That's probably not for me. 

140
00:06:39,200 --> 00:06:43,120
So I did AI. 
But I did AI in 1994 to 1999 so 

141
00:06:43,120 --> 00:06:45,560
it was 20 years too early. 
But you're an AI expert. 

142
00:06:46,560 --> 00:06:49,880
I was most certainly I'm not 
anymore though. 

143
00:06:49,920 --> 00:06:53,080
This was traditional AI mostly. 
It was at the free University in

144
00:06:53,080 --> 00:06:55,000
Amsterdam. 
It was expert systems, that sort

145
00:06:55,000 --> 00:06:57,600
of stuff. 
At the end they rebranded it to 

146
00:06:57,600 --> 00:06:59,760
multi agent systems, but it was 
still expert systems. 

147
00:07:00,880 --> 00:07:03,600
So that's what I did. 
And then my first job actually 

148
00:07:03,600 --> 00:07:07,800
was the R&D department for 
software engineering geek. 

149
00:07:08,080 --> 00:07:10,800
And I thought that will be nice.
I will learn some more server 

150
00:07:10,800 --> 00:07:13,840
engineering than I learned in 
college and then I'll go back 

151
00:07:13,840 --> 00:07:15,600
into AI. 
But I never went back into AI. 

152
00:07:16,000 --> 00:07:19,160
But it means that my my drive to
do software engineering to learn

153
00:07:19,160 --> 00:07:20,720
about software has always been 
professional. 

154
00:07:20,720 --> 00:07:23,720
It's never been like, oh, I'm 
just really into computers and I

155
00:07:23,720 --> 00:07:25,760
want to learn all of the 
languages or I want to learn. 

156
00:07:26,560 --> 00:07:28,840
It's always been, OK, we're 
going to solve this issue. 

157
00:07:28,840 --> 00:07:30,640
And I, I want to do it in the 
best possible way. 

158
00:07:30,640 --> 00:07:32,120
And for that, I need to 
understand a lot. 

159
00:07:32,640 --> 00:07:35,320
And when you start with 
enterprise Java in 1999, you 

160
00:07:35,320 --> 00:07:38,040
have to learn a lot of stuff 
just to build a very simple 

161
00:07:38,040 --> 00:07:40,240
system. 
Yeah, I think that that's also 

162
00:07:40,240 --> 00:07:41,880
part of it, right? 
I've always been in this 

163
00:07:41,880 --> 00:07:44,440
situation where you need, you 
needed to have like this super 

164
00:07:44,440 --> 00:07:47,640
steep learning curve. 
And then only once you get past 

165
00:07:47,640 --> 00:07:48,960
that, you can start to do 
something. 

166
00:07:48,960 --> 00:07:51,480
So that's been becoming sort of 
a habit for me. 

167
00:07:51,480 --> 00:07:54,360
It doesn't matter if I need to 
learn a lot, I'll just dive in 

168
00:07:54,360 --> 00:07:57,520
until I really understand. 
I feel like that that skill, 

169
00:07:57,520 --> 00:08:01,040
that essence is what is going to
make people successful Software 

170
00:08:01,040 --> 00:08:02,800
engineer. 
Yeah, I think it has to. 

171
00:08:02,800 --> 00:08:04,440
You have to. 
It's a combination of being 

172
00:08:04,440 --> 00:08:06,000
curious but also being 
persistent. 

173
00:08:06,080 --> 00:08:07,040
Yeah, right. 
Yeah. 

174
00:08:07,880 --> 00:08:10,480
Piece of discipline and also 
kind of comfort in being 

175
00:08:10,480 --> 00:08:12,600
uncomfortable. 
Yeah, I like that you highlight 

176
00:08:12,600 --> 00:08:15,040
that, like this position that 
you have of mastery that gives 

177
00:08:15,040 --> 00:08:17,760
you the comfort, but it doesn't 
take away that there's a lot of 

178
00:08:17,760 --> 00:08:19,200
technologies that you have to 
learn. 

179
00:08:19,280 --> 00:08:20,600
Yeah, Yeah. 
And that's consistent. 

180
00:08:20,600 --> 00:08:21,680
That's never going to go away. 
No. 

181
00:08:21,680 --> 00:08:22,440
Exactly. 
Yeah. 

182
00:08:22,440 --> 00:08:24,320
Yeah. 
What would you advise for people

183
00:08:24,320 --> 00:08:26,840
that are, like trying to master 
their own craft? 

184
00:08:26,840 --> 00:08:29,320
Because I feel like if I were to
start out now and it's very hard

185
00:08:29,320 --> 00:08:32,799
to relate, but there's a lot of 
technologies, I do think that 

186
00:08:32,960 --> 00:08:35,480
software engineering is a very 
good core to have. 

187
00:08:35,600 --> 00:08:38,880
And if you can be a really good 
software engineer by essence of 

188
00:08:38,880 --> 00:08:41,039
you being responsible for 
creating software, you're going 

189
00:08:41,039 --> 00:08:43,360
to think of observability, 
you're going to think of 

190
00:08:43,360 --> 00:08:46,320
infrastructure, you're going to 
touch on topics like data and AI

191
00:08:46,720 --> 00:08:48,640
and cloud. 
Like I feel like software is the

192
00:08:48,640 --> 00:08:52,200
centre of it so it could be a 
good start to start with but 

193
00:08:52,200 --> 00:08:54,240
then how do you start and what 
do you master first or? 

194
00:08:54,240 --> 00:08:58,800
Yeah, I think the start needs to
be with the basics in terms of 

195
00:08:58,800 --> 00:09:01,360
the language that you're using. 
You should just understand the 

196
00:09:01,360 --> 00:09:02,880
language very well. 
I still see a lot of people 

197
00:09:02,880 --> 00:09:06,680
programming in languages where 
it's clear that they don't 

198
00:09:06,920 --> 00:09:09,080
really grasp a lot of the basics
still. 

199
00:09:09,760 --> 00:09:12,640
And that means not only that 
you're limited in what you can 

200
00:09:12,640 --> 00:09:14,720
express in your own code, it 
also means it becomes a lot 

201
00:09:14,720 --> 00:09:16,320
harder to understand other 
people's code. 

202
00:09:16,560 --> 00:09:20,160
So one thing that taught me a 
tremendous amount of stuff was 

203
00:09:20,160 --> 00:09:23,160
reading other people's code. 
And not just anyone, but for 

204
00:09:23,160 --> 00:09:25,640
example, the open source 
frameworks that you use that you

205
00:09:25,640 --> 00:09:29,040
know, have been authored by 
experienced people that have 

206
00:09:29,040 --> 00:09:32,640
been sort of Spring in my case, 
it's not only a framework that I

207
00:09:32,640 --> 00:09:37,200
know very well because I use it.
I've actually read a lot of the 

208
00:09:37,200 --> 00:09:40,600
code to understand how it works.
But then that that taught me a 

209
00:09:40,600 --> 00:09:42,360
lot of patterns also. 
Oh, this is the way that they 

210
00:09:42,360 --> 00:09:45,320
approach is, hey, this seems to 
be the similar type of problem, 

211
00:09:45,320 --> 00:09:48,400
but in a different domain. 
But I see that the approach that

212
00:09:48,400 --> 00:09:49,920
they take to solve it is 
similar. 

213
00:09:49,920 --> 00:09:51,960
So you learn about these 
patterns, these use cases. 

214
00:09:52,440 --> 00:09:55,200
I would start with that because 
it's going to be overwhelming if

215
00:09:55,200 --> 00:10:00,240
you're going to try to start as 
an architect that needs to think

216
00:10:00,240 --> 00:10:03,680
about everything, right? 
You cannot think about, OK, this

217
00:10:03,680 --> 00:10:06,280
thing needs to be coded, but I 
also need to think about the 

218
00:10:06,280 --> 00:10:09,080
build and I need to think about 
the CD because it needs to be 

219
00:10:09,240 --> 00:10:11,240
deployed to an environment. 
And then I need to think about 

220
00:10:11,560 --> 00:10:13,680
how will it actually run in that
environment and how we're going 

221
00:10:13,680 --> 00:10:16,080
to make sure that it is, that it
is up and that we can observe 

222
00:10:16,080 --> 00:10:17,920
it. 
And then I need to, it's just 

223
00:10:17,920 --> 00:10:20,840
too much. 
So I think a very natural way 

224
00:10:20,840 --> 00:10:23,600
for most developers will be to 
start with just developing the 

225
00:10:23,600 --> 00:10:27,440
functionality and leave all of 
that other stuff builds, run 

226
00:10:27,440 --> 00:10:30,160
times, operations, leave that to
other people. 

227
00:10:30,720 --> 00:10:35,000
And then over time, in my case, 
not even on purpose, but just 

228
00:10:35,120 --> 00:10:37,920
how it goes, you will you will 
learn about that stuff because 

229
00:10:37,920 --> 00:10:40,080
you need to pick it up because 
someone else is not there to do 

230
00:10:40,080 --> 00:10:42,760
it for you or because you find 
that you are indeed interested 

231
00:10:42,760 --> 00:10:44,480
in it. 
In my case, observability has 

232
00:10:44,480 --> 00:10:48,000
been something that over the 
last seven years I spend a lot 

233
00:10:48,000 --> 00:10:50,560
of time diving and just because 
I I really enjoy doing it. 

234
00:10:51,040 --> 00:10:53,320
It turned out that stuff like 
building dashboards based on 

235
00:10:53,320 --> 00:10:56,960
metrics is something that once I
learned that it could be done 

236
00:10:56,960 --> 00:10:58,680
with because this is not 
something that was really 

237
00:10:58,680 --> 00:11:00,800
available 10 years ago. 
But now with all of the tooling 

238
00:11:00,800 --> 00:11:02,520
that's there, it's, it's quite 
straightforward. 

239
00:11:03,520 --> 00:11:04,760
Yeah, I found it really 
enjoyable. 

240
00:11:05,120 --> 00:11:07,600
So it was again a combination 
of, OK, I see that this stuff 

241
00:11:07,600 --> 00:11:10,800
becomes important. 
It it provides real value for 

242
00:11:10,800 --> 00:11:13,080
customers who can also see 
things also business metrics, 

243
00:11:13,080 --> 00:11:16,680
not just operational metrics, 
but it's also interesting to 

244
00:11:16,680 --> 00:11:18,360
learn. 
And there is a lot that I don't 

245
00:11:18,360 --> 00:11:20,280
know yet that I think I can get 
into. 

246
00:11:21,160 --> 00:11:24,440
Yeah, just start, start with the
basics, learn it properly and 

247
00:11:24,440 --> 00:11:25,640
then take it from there, I would
say. 

248
00:11:25,760 --> 00:11:28,240
But learning it properly is, I 
think is, is indeed something 

249
00:11:28,240 --> 00:11:30,840
that I find really important. 
And I, I do see a lot of people 

250
00:11:30,840 --> 00:11:34,320
skipping because they, a lot of 
people, I think are also asked 

251
00:11:34,320 --> 00:11:38,560
to be not experts in one thing, 
but to do a little bit of 

252
00:11:38,560 --> 00:11:40,560
everything. 
And when you start as a junior 

253
00:11:40,800 --> 00:11:44,000
and you don't learn anything 
deep, but your, your attention 

254
00:11:44,000 --> 00:11:45,600
is just spread across 
everywhere. 

255
00:11:46,160 --> 00:11:49,160
It's really hard to, to do this.
And you'll see that with people,

256
00:11:49,160 --> 00:11:52,240
for example, who are working in 
two people teams at some 

257
00:11:52,240 --> 00:11:54,200
startup, right? 
If you start there as a junior, 

258
00:11:54,240 --> 00:11:55,600
you're, you're supposed to do 
everything. 

259
00:11:56,160 --> 00:11:59,560
But so you do learn a lot, but 
you you learn only in a, in a 

260
00:11:59,560 --> 00:12:02,000
very broad sense, and you don't 
ever go deep. 

261
00:12:03,640 --> 00:12:07,120
That's how I started. 
Like I I started in OPS and I 

262
00:12:07,120 --> 00:12:09,800
got to touch on a lot of systems
and then I moved more to 

263
00:12:09,800 --> 00:12:12,080
software engineering. 
But it was also front and back. 

264
00:12:12,080 --> 00:12:14,400
It was immediately kind of the 
whole stack and cloud. 

265
00:12:14,480 --> 00:12:16,160
Yeah, exactly. 
Thinking of a lot of things. 

266
00:12:16,200 --> 00:12:18,640
And that's, I think now if you 
want to do that nowadays, it's 

267
00:12:18,640 --> 00:12:21,400
just you're, you cannot go deep 
down you're. 

268
00:12:21,400 --> 00:12:22,800
Going to be overwhelmed. 
Yeah, you're going to be 

269
00:12:22,800 --> 00:12:24,280
overwhelmed. 
Just look at. 

270
00:12:24,360 --> 00:12:28,160
I mean, the front end nowadays 
is even that in itself to 

271
00:12:28,160 --> 00:12:29,200
keeping up with what's. 
Happening. 

272
00:12:29,200 --> 00:12:31,360
It's quite a beast. 
It's huge, Yeah, it's huge and 

273
00:12:31,360 --> 00:12:33,280
it's happening and it's 
happening so quickly. 

274
00:12:33,280 --> 00:12:38,080
Also just catching up and making
sure we had a a discussion 

275
00:12:38,080 --> 00:12:42,280
yesterday someone told me that 
they were somewhere where they 

276
00:12:42,280 --> 00:12:44,760
were still working on an Angular
GS Angular one. 

277
00:12:45,560 --> 00:12:46,480
Oh wow. 
For example. 

278
00:12:46,720 --> 00:12:49,720
That's the sort of thing like 
from that is no different in 

279
00:12:49,720 --> 00:12:51,680
that sense from back end. 
You, you have legacy there as 

280
00:12:51,680 --> 00:12:54,040
well and stuff moves really 
quickly and you need to 

281
00:12:54,040 --> 00:12:55,440
understand why you're doing 
things. 

282
00:12:55,440 --> 00:12:58,840
But again with AI, it's also 
easy to just say, well, you 

283
00:12:58,840 --> 00:13:03,000
know, we're using some stack. 
It involves React and just give 

284
00:13:03,000 --> 00:13:05,400
me something that seems to work 
and yeah. 

285
00:13:05,600 --> 00:13:07,720
It's a quick win. 
It's a quick win for now, yeah, 

286
00:13:07,720 --> 00:13:09,440
Yeah. 
And it depends a lot. 

287
00:13:09,440 --> 00:13:12,360
Also the one of the other 
things, apart from like mastery,

288
00:13:12,360 --> 00:13:15,680
one of the things I think that 
really defines how I work and 

289
00:13:15,680 --> 00:13:17,800
what I find important is is also
pragmatism. 

290
00:13:18,280 --> 00:13:20,560
You need to understand always 
the context of which you're 

291
00:13:20,560 --> 00:13:23,040
working in. 
And sometimes we work, or 

292
00:13:23,040 --> 00:13:27,920
actually quite often we work on 
big systems that need to support

293
00:13:27,920 --> 00:13:31,800
mission critical processes that 
need to be developed and 

294
00:13:31,800 --> 00:13:34,440
maintained for many years. 
So then a lot of this stuff is 

295
00:13:34,440 --> 00:13:37,080
important, but you also need to 
recognize that maybe now I'm 

296
00:13:37,080 --> 00:13:39,840
building something that will be 
replaced in a year, but for now 

297
00:13:39,840 --> 00:13:42,800
we just need a solution. 
You shouldn't apply the same 

298
00:13:42,800 --> 00:13:44,360
principles then. 
I think that's also very 

299
00:13:44,360 --> 00:13:45,880
important. 
How do you handle those 

300
00:13:45,880 --> 00:13:47,280
conversations? 
Because I've been in 

301
00:13:47,760 --> 00:13:50,240
conversations with regards to 
pre sales and customers and I 

302
00:13:50,240 --> 00:13:52,240
have people where their 
discipline is like cloud 

303
00:13:52,240 --> 00:13:54,440
infrastructure. 
And I can see they look at the 

304
00:13:54,440 --> 00:13:56,320
problem through their lens, 
right? 

305
00:13:56,320 --> 00:13:59,800
If it's AWS, they go Dynamo DB, 
we can run it there And like 

306
00:13:59,880 --> 00:14:02,280
those immediately those 
infrastructure components come 

307
00:14:02,280 --> 00:14:04,080
in. 
And then I come in with regards 

308
00:14:04,080 --> 00:14:07,920
to, OK, do we have metrics on 
which users use which components

309
00:14:07,920 --> 00:14:10,440
and what's the traffic? 
And then can we go just with 

310
00:14:10,440 --> 00:14:13,000
this component and then live as 
fast as possible and then build 

311
00:14:13,000 --> 00:14:14,520
from there? 
Like I have a very different 

312
00:14:14,520 --> 00:14:16,160
approach. 
And then we have the 

313
00:14:16,160 --> 00:14:19,160
conversations, you'll get 
defensive and I call people out 

314
00:14:19,160 --> 00:14:20,800
when they get defensive. 
I'm like, I'm not, I'm not 

315
00:14:20,800 --> 00:14:22,600
trying to attack your judgement 
or whatever. 

316
00:14:22,920 --> 00:14:24,320
I just think this is what we 
need. 

317
00:14:24,320 --> 00:14:26,360
And then this is good enough. 
And they're like, well, but this

318
00:14:26,360 --> 00:14:29,240
is robust and scalable. 
And like, those conversations 

319
00:14:29,240 --> 00:14:31,600
for me are always challenging. 
It is challenging, but I think 

320
00:14:31,600 --> 00:14:33,200
it is the way to do it. 
You need to have that 

321
00:14:33,200 --> 00:14:37,280
conversation. 
I was not my previous job, but 

322
00:14:37,280 --> 00:14:41,800
the job before that I started to
work as an internal consultant 

323
00:14:41,800 --> 00:14:45,960
for the the Natal onset bunk. 
So that's in English. 

324
00:14:45,960 --> 00:14:48,400
That would be like the Dutch 
bank, but they're not an actual 

325
00:14:48,840 --> 00:14:50,840
commercial bank. 
They are actually a government 

326
00:14:50,840 --> 00:14:54,000
organization that governs all of
the banks and other financial 

327
00:14:54,000 --> 00:14:57,400
institutions in the Netherlands.
And this was one of those 

328
00:14:57,400 --> 00:14:59,640
traditional government 
organization where there would 

329
00:14:59,640 --> 00:15:02,480
be like, every other week 
someone would celebrate their 

330
00:15:02,480 --> 00:15:04,520
25th anniversary within the 
company. 

331
00:15:04,640 --> 00:15:05,920
Right. 
People have been working there 

332
00:15:05,920 --> 00:15:07,440
unbelievably forever. 
Yeah. 

333
00:15:08,520 --> 00:15:10,560
And that was true also for a lot
of the developers. 

334
00:15:10,560 --> 00:15:14,880
And I started to work there when
I was around 25 years old and 

335
00:15:14,880 --> 00:15:17,520
very fresh, yeah, very fresh. 
And basically my job was to tell

336
00:15:17,520 --> 00:15:20,240
those people how to work or how 
to start working in a different 

337
00:15:20,240 --> 00:15:22,640
way. 
So that that felt, that felt 

338
00:15:22,640 --> 00:15:25,000
exactly the same. 
Like, OK, so now I need to, to 

339
00:15:25,000 --> 00:15:29,360
start to persuade people with 
2025 years of experience in what

340
00:15:29,360 --> 00:15:31,640
they're doing, in listening to 
me. 

341
00:15:31,640 --> 00:15:35,160
And, and, and again, the way I 
think that that I managed to do 

342
00:15:35,160 --> 00:15:38,120
that because it turned out that 
it, it was possible and actually

343
00:15:38,120 --> 00:15:42,160
quite successful to do that is 
to make sure indeed that you 

344
00:15:42,160 --> 00:15:45,200
don't just tell people we're 
going to do it this way, we're 

345
00:15:45,200 --> 00:15:47,480
going to do it that way. 
You need to convince them and 

346
00:15:47,480 --> 00:15:50,320
they need to also be on board. 
But you do that with arguments. 

347
00:15:50,680 --> 00:15:52,760
You always have to explain your 
reasoning. 

348
00:15:52,760 --> 00:15:56,440
You always have to be able to 
say, I'm thinking about these 

349
00:15:56,440 --> 00:15:59,480
and these end goals. 
Therefore, I think that these 

350
00:15:59,480 --> 00:16:02,320
and these things are important 
requirements to take into 

351
00:16:02,320 --> 00:16:05,760
consideration, but these other 
things are not based on this. 

352
00:16:06,120 --> 00:16:10,480
I think that we can go this or 
this way and also have a way to 

353
00:16:10,480 --> 00:16:12,920
verify the results. 
So what what you're saying, for 

354
00:16:12,920 --> 00:16:15,920
example, what I really like is 
get something out as quickly as 

355
00:16:15,920 --> 00:16:18,480
possible. 
If you have that, it's it's much

356
00:16:18,480 --> 00:16:23,360
easier to iterate on something 
that works than to work for a 

357
00:16:23,360 --> 00:16:25,560
very long time on something 
where you don't really see the 

358
00:16:25,560 --> 00:16:27,840
intermediate results, Right. 
This is why big projects fail 

359
00:16:28,000 --> 00:16:31,040
very often. 
Still in IT, everyone just says,

360
00:16:31,040 --> 00:16:33,680
yeah, yeah, we're 80% there and 
for months, for months. 

361
00:16:33,760 --> 00:16:34,920
Yeah, exactly. 
Incredible. 

362
00:16:34,920 --> 00:16:36,440
It doesn't work. 
You need to have something out. 

363
00:16:36,440 --> 00:16:39,040
You need to have something 
working and you can almost 

364
00:16:39,040 --> 00:16:42,640
always do that, I think, but you
need to think about how to do 

365
00:16:42,640 --> 00:16:46,120
it. 
So then you can show people that

366
00:16:46,120 --> 00:16:49,040
stuff works and then you can 
gain their confidence and they 

367
00:16:49,040 --> 00:16:51,200
get on board and they become 
enthusiastic because they see, 

368
00:16:51,200 --> 00:16:53,440
oh, actually this is a much 
nicer way of working than what 

369
00:16:53,440 --> 00:16:55,680
I'm used to, but it's baby 
steps. 

370
00:16:55,800 --> 00:16:59,480
And yeah, you need to that that 
sort of consultancy aspects of 

371
00:16:59,480 --> 00:17:04,280
getting people on board and open
to change is tricky, but it can 

372
00:17:04,280 --> 00:17:06,000
be very rewarding if it works, I
think. 

373
00:17:06,240 --> 00:17:09,359
I feel like it's it's a skill 
that is quite interesting 

374
00:17:09,359 --> 00:17:11,920
because you need to be able to 
communicate properly to 

375
00:17:11,920 --> 00:17:14,359
different audiences, upper 
management or your peers. 

376
00:17:14,800 --> 00:17:17,560
Software engineers specifically,
and maybe even more so people in

377
00:17:17,560 --> 00:17:19,040
tech have this bullshit 
detector. 

378
00:17:19,319 --> 00:17:20,880
So if you're selling them 
something that they don't 

379
00:17:20,880 --> 00:17:23,359
believe in because you don't 
have that depth, then it's also 

380
00:17:23,359 --> 00:17:24,520
a problem. 
You can't just be great at 

381
00:17:24,520 --> 00:17:27,160
communicating, you need to have 
deep knowledge with. 

382
00:17:27,200 --> 00:17:28,800
Absolutely. 
That's one of the reasons that I

383
00:17:28,800 --> 00:17:31,520
like my my current job is that I
get to do all of these things at

384
00:17:31,800 --> 00:17:35,360
in a single position because I 
like developing, but I don't 

385
00:17:35,360 --> 00:17:37,640
want to be a full time code 
writer. 

386
00:17:37,840 --> 00:17:40,280
Yeah, no, I I want to be hands 
on, but I don't want to do it 

387
00:17:40,280 --> 00:17:43,160
all the time. 
I want to have also be involved 

388
00:17:43,160 --> 00:17:46,200
with customer discussions. 
I want to have like an account 

389
00:17:46,200 --> 00:17:47,760
manager like role with my 
customers. 

390
00:17:48,000 --> 00:17:51,840
I want to be able to do this 
sort of mentoring and coaching. 

391
00:17:52,920 --> 00:17:55,000
I like still delivering 
trainings as well. 

392
00:17:55,000 --> 00:17:57,480
And Oh, my career job allows me 
to actually combine. 

393
00:17:57,760 --> 00:18:02,480
All of that I do a lot, yeah. 
I don't get to choose and it's 

394
00:18:02,480 --> 00:18:05,320
also laziness. 
Maybe sometimes I, I, I don't 

395
00:18:05,520 --> 00:18:08,480
really make very deliberate 
choices in my career and that's 

396
00:18:08,480 --> 00:18:10,520
never been the case. 
It's always just happened sort 

397
00:18:10,520 --> 00:18:14,560
of to me, but what I really like
is that it, it does allow me to 

398
00:18:14,560 --> 00:18:17,160
combine all of these different 
things and they sometimes they 

399
00:18:17,160 --> 00:18:19,520
do actually interact with each 
other and, and enhance each 

400
00:18:19,520 --> 00:18:22,240
other in a very nice way, right?
If you're, if you're used to 

401
00:18:22,240 --> 00:18:26,480
delivering a lot of trainings, 
it means you are used to not 

402
00:18:26,480 --> 00:18:28,600
only explaining things to 
people, but also just to speak 

403
00:18:28,600 --> 00:18:30,240
in public. 
So it becomes easier to become a

404
00:18:30,240 --> 00:18:32,960
public speaker. 
When you do that, you'll learn 

405
00:18:32,960 --> 00:18:34,920
that it's actually important 
that you know what you're 

406
00:18:34,920 --> 00:18:36,560
talking about, but you don't 
need to be an expert at 

407
00:18:36,560 --> 00:18:38,800
everything, right? 
Very often people for a start 

408
00:18:38,800 --> 00:18:41,760
with public speaking, they think
like, oh, but I need to be a 

409
00:18:41,760 --> 00:18:45,080
super expert in order to share 
something useful with people and

410
00:18:45,080 --> 00:18:47,000
otherwise they will just know 
I'm bullshitting. 

411
00:18:48,120 --> 00:18:51,240
But this is not the case at all.
But that's the sort of stuff I 

412
00:18:51,240 --> 00:18:52,960
think that if you do a lot of 
that different things. 

413
00:18:52,960 --> 00:18:55,560
Yeah, you, you build up a broad 
from that. 

414
00:18:55,560 --> 00:18:57,600
People talk about this deep 
profile and actually thought 

415
00:18:57,600 --> 00:19:00,440
about it before going into this 
podcast, like because you had a 

416
00:19:00,440 --> 00:19:02,720
question like what what sort of 
defines how you work? 

417
00:19:03,280 --> 00:19:07,600
And I think it's that my not my 
goal because I don't think it's 

418
00:19:07,600 --> 00:19:09,640
AT org. 
My ambition sort of is to say 

419
00:19:09,640 --> 00:19:13,160
instead of like AT like profile,
I actually want to have the the 

420
00:19:13,160 --> 00:19:15,360
top of the T, But then then it 
needs to be brought. 

421
00:19:15,520 --> 00:19:17,680
I want to be both broad and deep
at everything. 

422
00:19:18,080 --> 00:19:20,800
And you can't. 
But that's why I think it's, 

423
00:19:20,920 --> 00:19:24,200
it's so nice that you can get 
focus from the work that you do 

424
00:19:24,200 --> 00:19:25,520
right. 
I don't need to know everything 

425
00:19:25,520 --> 00:19:27,560
about everything. 
I need to know everything about 

426
00:19:27,880 --> 00:19:30,000
the stuff I actually use on a 
day-to-day basis. 

427
00:19:30,600 --> 00:19:32,680
And even then everything is 
probably a bit much. 

428
00:19:32,680 --> 00:19:37,440
But now I'm still very often 
people will come to me before 

429
00:19:37,440 --> 00:19:38,920
they Google, right? 
That's that's why that's. 

430
00:19:39,680 --> 00:19:41,160
A good sign? 
Yeah, that's a good sign. 

431
00:19:41,280 --> 00:19:43,840
I think yeah, yeah, for me. 
So the, the depth is always 

432
00:19:43,840 --> 00:19:47,000
something that I I think is 
interesting and I can go deep 

433
00:19:47,000 --> 00:19:49,840
based on customer problems. 
And then I always have this kind

434
00:19:49,840 --> 00:19:52,720
of internal struggle because 
should I need to know this in 

435
00:19:52,720 --> 00:19:54,640
advance or is this fine and can 
I go deep? 

436
00:19:54,640 --> 00:19:58,080
And then what is time that is 
too long before I reach out to 

437
00:19:58,080 --> 00:19:59,920
colleagues and like ask for help
and stuff like that? 

438
00:20:00,200 --> 00:20:04,760
That's also something I like to 
explain people or when I coach 

439
00:20:04,760 --> 00:20:08,120
developers, indeed, it's always 
spend some time first yourself 

440
00:20:08,480 --> 00:20:10,960
because that's typically where 
you learn the most, right? 

441
00:20:10,960 --> 00:20:12,960
If someone just provides you 
with an answer, do this and it 

442
00:20:12,960 --> 00:20:17,520
works, then you're learning why 
or what could have tried. 

443
00:20:17,640 --> 00:20:19,640
But you also don't want to have 
someone, especially when they 

444
00:20:19,640 --> 00:20:21,960
work remote, for example, who 
just struggles for a day at 

445
00:20:21,960 --> 00:20:23,680
home. 
And it turns out that there was 

446
00:20:23,680 --> 00:20:26,320
some small thing that that you 
could have solved with them like

447
00:20:26,320 --> 00:20:29,040
in 15 minutes. 
So I think it's always good to 

448
00:20:29,040 --> 00:20:32,040
get feedback and ask questions, 
but always make sure that you, 

449
00:20:33,080 --> 00:20:34,920
you, you know what you're 
asking, right? 

450
00:20:35,160 --> 00:20:38,520
You don't just go to the first 
error or something doesn't work 

451
00:20:38,520 --> 00:20:40,800
And you immediately say, can 
someone help me out? 

452
00:20:41,040 --> 00:20:42,960
That you first look into it and 
you think, oh, maybe I can 

453
00:20:42,960 --> 00:20:45,000
understand it or I can't. 
And then once you have an 

454
00:20:45,000 --> 00:20:46,800
understanding of the problem, 
but you don't know how to fix 

455
00:20:46,800 --> 00:20:49,200
it, that's the time I think that
you can ask for, for help. 

456
00:20:49,680 --> 00:20:51,760
I've always tried to make sure 
that it becomes a learning 

457
00:20:51,760 --> 00:20:54,160
experience where I ask for help 
instead of just someone saying, 

458
00:20:55,120 --> 00:20:56,760
but it could be stupid things as
well, right? 

459
00:20:56,760 --> 00:21:02,000
I had even my, my CEO who is 
also very technical, actually he

460
00:21:02,080 --> 00:21:04,320
just before his holiday, he 
wanted to get something fixed 

461
00:21:04,840 --> 00:21:07,520
and he got to me on Slack. 
It was like literally his last 

462
00:21:07,520 --> 00:21:10,560
day before he left. 
And he said something is off, 

463
00:21:10,840 --> 00:21:13,320
but I don't see it. 
Maybe you see it and he needed 

464
00:21:13,320 --> 00:21:17,400
to change a Git URL from SSH to 
HTTPS, and he forgot to replace 

465
00:21:17,400 --> 00:21:19,200
a colon with a slash. 
Yeah, yeah. 

466
00:21:19,200 --> 00:21:21,840
That's the sort of basic that 
can take half a day if you don't

467
00:21:21,840 --> 00:21:23,040
see it and you're just 
struggling. 

468
00:21:23,040 --> 00:21:24,560
And that's the that's why you 
need help. 

469
00:21:24,920 --> 00:21:26,480
That's why you need to ask 
someone else for help. 

470
00:21:26,760 --> 00:21:29,840
You shouldn't be working on that
sort of stuff for for too long. 

471
00:21:30,160 --> 00:21:34,680
I think that yeah, if it really 
comes to yeah, understanding the

472
00:21:34,680 --> 00:21:37,200
technology that you're using it,
it's worth spending some time 

473
00:21:37,200 --> 00:21:39,040
on. 
And that's what I find really 

474
00:21:39,040 --> 00:21:40,880
important. 
So also when I have people on my

475
00:21:40,880 --> 00:21:47,280
team that are junior or meteor 
but not senior yet, I always 

476
00:21:47,280 --> 00:21:49,280
give them some time for this. 
I always tell them don't stress 

477
00:21:49,280 --> 00:21:52,000
out right If if you don't get 
something to work or if there is

478
00:21:52,080 --> 00:21:54,160
an error in there, just spend 
some time on it. 

479
00:21:54,440 --> 00:21:56,440
Just try to figure it out and 
then explain to me what you've 

480
00:21:56,440 --> 00:21:59,480
done and especially if they're 
able to explain it and you can 

481
00:21:59,480 --> 00:22:01,520
see if they learn anything. 
Yeah, Yeah. 

482
00:22:01,520 --> 00:22:05,040
I like that you put a lot of 
importance on also people's own 

483
00:22:05,080 --> 00:22:07,560
kind of personal development and
growth within a team. 

484
00:22:08,040 --> 00:22:10,600
I feel like that's very 
important, not just to be part 

485
00:22:10,600 --> 00:22:13,080
of a team that is kind of 
continuously learning, but also 

486
00:22:13,080 --> 00:22:16,400
for there to be room and space. 
Yeah, but that last part, 

487
00:22:16,400 --> 00:22:18,360
usually when there's high 
pressure, people are looking 

488
00:22:18,360 --> 00:22:20,120
towards business outcomes 
faster. 

489
00:22:20,320 --> 00:22:24,200
You might not be even optimal 
team size and then pressure gets

490
00:22:24,200 --> 00:22:26,000
high. 
Yeah, But there needs to be kind

491
00:22:26,000 --> 00:22:27,880
of a fine balance between 
learning, growing. 

492
00:22:28,160 --> 00:22:31,720
Yeah, it depends a lot indeed on
on how your project is run, how 

493
00:22:31,720 --> 00:22:33,760
it's being perceived to run 
also. 

494
00:22:33,840 --> 00:22:35,680
Yeah, that's true. 
And I'm in the lucky position 

495
00:22:35,920 --> 00:22:39,440
that the customers that I've 
I'm, I'm working with right now 

496
00:22:39,760 --> 00:22:42,160
have a very deep trust in what 
we're doing. 

497
00:22:42,520 --> 00:22:45,160
And we're working more like a 
partnership relationship in 

498
00:22:45,160 --> 00:22:48,960
there with them rather than a 
vendor's supplier sort of role. 

499
00:22:49,040 --> 00:22:50,920
That's the best. 
And that's, yeah, that's ideal 

500
00:22:51,040 --> 00:22:52,960
because you can have open 
discussions. 

501
00:22:53,200 --> 00:22:56,800
You don't have to upfront 
explain everything that you're 

502
00:22:56,800 --> 00:22:59,480
going to do just so that they 
can trust that you're doing the 

503
00:22:59,480 --> 00:23:03,400
right thing. 
It also means that I think for 

504
00:23:03,400 --> 00:23:05,720
six years ago already, maybe 
even more, we stopped doing 

505
00:23:05,720 --> 00:23:09,120
estimations for for stories, for
individual stories, of course we

506
00:23:09,120 --> 00:23:10,480
estimate like, oh, we're. 
Going to have. 

507
00:23:10,480 --> 00:23:13,280
Something I see how how big is 
this, but just high over indeed 

508
00:23:14,040 --> 00:23:15,840
we had for this integration 
project. 

509
00:23:15,840 --> 00:23:18,960
So we started traditional scrum.
So we did the whole planning 

510
00:23:18,960 --> 00:23:23,040
poker thing, and in the end, 
someone from a partner company 

511
00:23:23,040 --> 00:23:24,440
actually said this doesn't make 
any sense. 

512
00:23:24,440 --> 00:23:26,840
You're just spending a lot of 
time talking about stuff where 

513
00:23:26,840 --> 00:23:28,880
you don't know what it's going 
to be anyways, because the 

514
00:23:28,880 --> 00:23:30,560
integration is a really tricky 
domain. 

515
00:23:30,560 --> 00:23:33,840
You're always depending on other
partners, on other companies 

516
00:23:33,840 --> 00:23:36,440
that need to set stuff up. 
Can we even access this external

517
00:23:36,440 --> 00:23:38,320
system already? 
Do we have credentials for it? 

518
00:23:38,320 --> 00:23:40,480
Do they have documentation? 
You're going to run into 

519
00:23:40,480 --> 00:23:42,520
problems all the time. 
Everything gets blocked, and 

520
00:23:42,520 --> 00:23:44,200
then you need to fix up 
something while you wait for 

521
00:23:44,200 --> 00:23:46,480
that to become unblocked. 
And then in the end, every 

522
00:23:46,480 --> 00:23:48,880
estimate becomes like, yeah, 
well, three points. 

523
00:23:49,320 --> 00:23:51,320
It's just, it's, it's waste. 
It's waste. 

524
00:23:51,320 --> 00:23:53,760
And in the end what you want to 
do is you want to reduce that 

525
00:23:53,760 --> 00:23:57,520
waste, of course. 
So we have a very well, I think 

526
00:23:57,520 --> 00:24:01,840
Agile is sort of a dead work, 
but we have a very flexible way 

527
00:24:01,840 --> 00:24:05,040
of working as more Kanban 
lifestyle where we do take some 

528
00:24:05,040 --> 00:24:06,800
of the aspects of Scrum that we 
like. 

529
00:24:06,920 --> 00:24:10,000
Like every three weeks we do 
three-week sprints or 

530
00:24:10,000 --> 00:24:13,440
iterations. 
We still do a presentation and 

531
00:24:13,440 --> 00:24:16,600
the demo just so that everyone 
is aware of what it is that 

532
00:24:16,600 --> 00:24:19,720
we're doing. 
It's also a nice point for us to

533
00:24:19,720 --> 00:24:22,320
show to everyone in the team 
what we have been doing because 

534
00:24:22,320 --> 00:24:25,720
not everyone might be aware. 
We do daily standups as well, 

535
00:24:26,000 --> 00:24:28,440
but we don't do stuff like 
indeed, the estimation we don't 

536
00:24:28,440 --> 00:24:31,640
have burn downs. 
We also don't worry about, oh, 

537
00:24:31,840 --> 00:24:34,880
we thought we would have 
finished this in three weeks, 

538
00:24:34,880 --> 00:24:37,320
but well, turned out that it got
blocked and now it's not 

539
00:24:37,320 --> 00:24:39,880
finished. 
Oh, OK, then it's not finished 

540
00:24:39,880 --> 00:24:41,360
that we'll pick it up when it's 
ready. 

541
00:24:41,360 --> 00:24:44,680
Yeah, we'll keep going. 
And I really like that way of 

542
00:24:44,680 --> 00:24:48,760
working rather than the the real
traditional way of doing Scrum 

543
00:24:48,760 --> 00:24:51,120
because I've I've seen it go 
wrong also on our summer run 

544
00:24:51,120 --> 00:24:53,960
projects so often that's I don't
really want to do that anymore. 

545
00:24:54,280 --> 00:24:56,960
I feel like it's, it's similar 
to what we discussed with 

546
00:24:56,960 --> 00:24:59,400
regards to kind of being really 
good at communicating and then 

547
00:24:59,400 --> 00:25:01,200
having depth knowing what you're
talking about. 

548
00:25:01,440 --> 00:25:04,240
Because the communicating part, 
a lot of agile coaches that I've

549
00:25:04,240 --> 00:25:06,360
seen and perceived, they have 
that down. 

550
00:25:06,960 --> 00:25:09,080
And then there's the depth 
missing on why are we doing 

551
00:25:09,080 --> 00:25:12,320
story points in the 1st. 
Place and it's it's not just an 

552
00:25:12,360 --> 00:25:13,840
IT problem. 
I think it's a problem that's 

553
00:25:13,840 --> 00:25:17,480
happening everywhere. 
There's for example, person I 

554
00:25:17,480 --> 00:25:20,160
really like in how what he 
writes and what he thinks about 

555
00:25:20,160 --> 00:25:22,120
is bear to bear in the 
Netherlands. 

556
00:25:22,120 --> 00:25:26,400
He also has an English social 
media accounts that he publishes

557
00:25:26,400 --> 00:25:29,520
on a lot on various things. 
But one of the things that he's 

558
00:25:29,520 --> 00:25:31,920
talking about, and I see this in
IT, but I see this in other 

559
00:25:31,920 --> 00:25:35,640
things within government, for 
example, there is no more 

560
00:25:35,640 --> 00:25:38,440
expertise. 
Government used to be an expert 

561
00:25:38,440 --> 00:25:41,360
at a lot of things. 
For example, in the, all of the 

562
00:25:41,360 --> 00:25:43,720
bridges that needed to be 
maintained in the dykes, they 

563
00:25:43,720 --> 00:25:46,640
would have people themselves 
that knew how to do this. 

564
00:25:47,120 --> 00:25:50,280
And over time, all of that has 
been outsourced, has been going 

565
00:25:50,280 --> 00:25:52,560
away. 
And now they don't even have the

566
00:25:52,560 --> 00:25:55,640
expertise anymore to verify the 
results of the work that they 

567
00:25:55,640 --> 00:25:56,880
outsource. 
That's a problem. 

568
00:25:56,960 --> 00:25:59,680
And that is a real problem. 
You're but it's, I think 

569
00:25:59,680 --> 00:26:02,600
something that has been seen in 
many different areas, right? 

570
00:26:02,600 --> 00:26:05,280
It's in government, but you saw 
the same thing in healthcare. 

571
00:26:06,480 --> 00:26:09,720
My, my mother has been working 
in healthcare for decades, and 

572
00:26:09,720 --> 00:26:12,360
she saw that same thing 
happening there, where managers 

573
00:26:12,360 --> 00:26:15,680
were just thought to be generic 
process managers, right? 

574
00:26:15,720 --> 00:26:17,680
You don't need to understand the
process you're managing. 

575
00:26:17,680 --> 00:26:19,320
You need to just understand 
management. 

576
00:26:20,520 --> 00:26:23,040
And that happens in IT. 
It happens in healthcare, it 

577
00:26:23,040 --> 00:26:25,240
happens in the government. 
It happens everywhere where 

578
00:26:25,240 --> 00:26:28,360
this, this notion of, yeah, you 
have to understand what you're 

579
00:26:28,360 --> 00:26:30,720
doing and be good at it. 
It's just something that is 

580
00:26:30,720 --> 00:26:32,960
perceived as, yeah, but we can 
just outsource that, right? 

581
00:26:32,960 --> 00:26:36,760
We just need to manage contracts
and then have regular goals 

582
00:26:36,800 --> 00:26:39,960
about are we still on schedule 
and, and and that's the 

583
00:26:39,960 --> 00:26:42,400
management part of it. 
And that doesn't really work in 

584
00:26:42,400 --> 00:26:44,280
it. 
I think that's also why I think 

585
00:26:44,280 --> 00:26:47,800
as a manager, I'm in the Mt of 
of our company. 

586
00:26:48,120 --> 00:26:51,920
Yeah, you don't necessarily need
to be like the best expert at 

587
00:26:51,920 --> 00:26:56,160
everything, but you definitely 
need to have the actual hands on

588
00:26:56,160 --> 00:26:58,000
experience of what it means to 
be in IT. 

589
00:26:58,160 --> 00:27:00,760
Otherwise I don't think you can.
Same thing with people who are 

590
00:27:00,760 --> 00:27:04,400
in sales, right? 
It can be tempting to think 

591
00:27:04,400 --> 00:27:06,200
that, well, if you're a good 
salesman, you can sell 

592
00:27:06,200 --> 00:27:08,720
everything, but then indeed 
you're going to end up like 

593
00:27:08,720 --> 00:27:11,560
you're saying with these people 
who have the bullshit detector. 

594
00:27:12,400 --> 00:27:14,080
They're just trying to sell me. 
They don't even know what 

595
00:27:14,080 --> 00:27:16,000
they're selling. 
Especially if you're trying to 

596
00:27:16,000 --> 00:27:18,360
sell custom software 
development, which is a really, 

597
00:27:18,720 --> 00:27:23,720
as we found a really tricky 
service to sell because people 

598
00:27:23,720 --> 00:27:27,520
are not looking for a company 
who can just build software. 

599
00:27:27,520 --> 00:27:30,800
People are looking for, oh, I 
have a insurance problem or I 

600
00:27:30,800 --> 00:27:35,120
have a problem with lotteries or
I have a problem where I need to

601
00:27:35,120 --> 00:27:39,040
have a, a system that checks if 
you can answer all of your 

602
00:27:39,040 --> 00:27:40,440
driving license. 
Do you read exams? 

603
00:27:40,440 --> 00:27:42,480
Correct, right. 
That's, that's what what 

604
00:27:42,480 --> 00:27:45,400
customers see. 
But in the end, and I think 

605
00:27:45,400 --> 00:27:48,320
that's happened quite, quite 
quickly in the last couple of 

606
00:27:48,320 --> 00:27:50,720
years, in the end, companies 
tend to realize, but that is 

607
00:27:50,720 --> 00:27:52,160
actually an IT problem. 
Yeah. 

608
00:27:52,600 --> 00:27:56,320
I feel like slowly and 
especially with newer companies,

609
00:27:56,760 --> 00:27:59,480
the people that are in 
leadership teams or managers, 

610
00:27:59,480 --> 00:28:01,840
they're not necessarily experts 
anymore. 

611
00:28:01,840 --> 00:28:04,000
No, but they definitely do have 
expertise. 

612
00:28:04,000 --> 00:28:07,160
Like there's a lot of value in 
having managers and also 

613
00:28:07,160 --> 00:28:09,520
expertise on what they're 
managing for the people that are

614
00:28:09,520 --> 00:28:10,480
doing the actual. 
Work. 

615
00:28:10,480 --> 00:28:14,000
Yeah, the I see the same thing 
for example with my product 

616
00:28:14,000 --> 00:28:17,680
owner from Das Lotteries. 
He's actually someone who can by

617
00:28:17,680 --> 00:28:21,720
himself analyse our production 
logs. 

618
00:28:22,080 --> 00:28:27,000
If something is off, yeah, make 
an estimated guess on what is 

619
00:28:27,000 --> 00:28:29,680
happening. 
And then after that comes to me 

620
00:28:29,680 --> 00:28:31,240
and say, can you have a look at 
this? 

621
00:28:31,240 --> 00:28:33,800
Because I think we need to fix 
over there or maybe someone else

622
00:28:33,800 --> 00:28:34,800
needs to do something over 
there. 

623
00:28:35,400 --> 00:28:37,240
But he's basically already done 
the analysis. 

624
00:28:37,240 --> 00:28:40,440
And that's, that helps so much 
because it means that you can 

625
00:28:40,440 --> 00:28:43,880
also get to focus a lot more on 
the work that you want to do, 

626
00:28:44,120 --> 00:28:47,200
new development. 
That's rather than just putting 

627
00:28:47,200 --> 00:28:49,560
out fires everywhere or 
analyzing things for other 

628
00:28:49,560 --> 00:28:52,000
people. 
And again, because this is the 

629
00:28:52,000 --> 00:28:54,800
business I'm currently in 
integration, this, this can very

630
00:28:54,800 --> 00:28:57,920
quickly run out of hand where 
you're just spending half of 

631
00:28:57,920 --> 00:29:03,600
your day explaining stuff to 
other clients or to downstream 

632
00:29:03,600 --> 00:29:05,160
systems that you need to 
integrate with. 

633
00:29:06,400 --> 00:29:08,880
And in the end, it turns out 
there was, it had nothing to do 

634
00:29:08,880 --> 00:29:10,000
with the thing that you were 
doing. 

635
00:29:11,680 --> 00:29:14,200
So that's another reason I think
that it's important for people 

636
00:29:14,200 --> 00:29:17,400
indeed to who are involved in 
these sort of things to, to know

637
00:29:17,400 --> 00:29:18,960
what they are doing. 
Yeah. 

638
00:29:19,280 --> 00:29:22,160
I feel like if I were to start 
my career and I wanted to do 

639
00:29:22,280 --> 00:29:24,800
software engineering again, 
there's a lot of integration 

640
00:29:24,800 --> 00:29:27,920
problems that need to be solved.
And the part of that is kind of 

641
00:29:27,920 --> 00:29:30,360
resiliency and observability and
security. 

642
00:29:31,000 --> 00:29:34,160
But a lot of engineering work is
going to go and I think also in 

643
00:29:34,160 --> 00:29:35,960
the future, more into 
integration work. 

644
00:29:36,360 --> 00:29:40,120
We have now a lot of software as
a service companies, but also AI

645
00:29:40,120 --> 00:29:42,520
providers and everyone needs 
integration. 

646
00:29:42,520 --> 00:29:45,160
You also see that those 
companies that are for example, 

647
00:29:45,400 --> 00:29:49,000
their core is an AI model with 
their core is chat bot AI, 

648
00:29:49,000 --> 00:29:52,280
something they are hiring people
on staff, they call them forward

649
00:29:52,280 --> 00:29:55,240
deployed engineers, which are 
basically integration engineers 

650
00:29:55,240 --> 00:29:57,520
and they come into an 
organization, kind of ask 

651
00:29:57,520 --> 00:29:59,880
consultants, they do the 
integration work and then they 

652
00:29:59,880 --> 00:30:02,040
leave. 
I feel like a lot of people are,

653
00:30:02,840 --> 00:30:04,160
yeah, kind of looking for 
integration. 

654
00:30:04,160 --> 00:30:08,120
It's also a lot of work that we 
do tends to either be centered 

655
00:30:08,120 --> 00:30:11,240
around integration, like my own 
project, or even if it's not an 

656
00:30:11,240 --> 00:30:14,400
integration project, still a big
component is always integration.

657
00:30:14,680 --> 00:30:18,880
Because, yeah, especially in 
enterprise, right, software is 

658
00:30:18,880 --> 00:30:21,040
everywhere. 
So you're no longer working on 

659
00:30:21,040 --> 00:30:23,960
isolated little islands that 
just run by themselves on a 

660
00:30:23,960 --> 00:30:25,960
machine that is under someone's 
desk. 

661
00:30:26,320 --> 00:30:27,560
Everything. 
Everything needs to be 

662
00:30:27,560 --> 00:30:30,440
integrated indeed. 
I feel like if you were like, if

663
00:30:30,440 --> 00:30:33,320
you get really good at the 
integration work then you've 

664
00:30:33,320 --> 00:30:35,000
solved a lot of problems I feel 
like. 

665
00:30:35,320 --> 00:30:37,800
And when it comes to learning, 
for example, I think this is 

666
00:30:37,800 --> 00:30:40,800
after learning like basics of 
development and languages and 

667
00:30:40,800 --> 00:30:43,200
that sort of stuff. 
Learning integration patterns is

668
00:30:43,200 --> 00:30:47,440
actually a great way of becoming
more of a senior developer or or

669
00:30:47,440 --> 00:30:50,080
slash architect, right? 
Thinking about what it means to 

670
00:30:50,080 --> 00:30:53,080
do stuff synchronously versus 
asynchronously. 

671
00:30:53,080 --> 00:30:54,600
What are the pros and cons 
there? 

672
00:30:55,640 --> 00:30:58,760
What options do you have on a 
technical level for integration?

673
00:30:58,760 --> 00:31:01,280
Is it going to be based on 
Http://web socket? 

674
00:31:01,280 --> 00:31:04,040
It's going to be based on 
message oriented middleware. 

675
00:31:04,200 --> 00:31:06,480
What are the patterns for using 
message oriented middleware? 

676
00:31:06,480 --> 00:31:08,880
What's the difference between 
point to point versus pops up? 

677
00:31:10,120 --> 00:31:12,040
What technologies do exist 
there? 

678
00:31:12,040 --> 00:31:14,960
What is actually suitable for 
stuff like edge computing where 

679
00:31:14,960 --> 00:31:18,560
you have a huge amount of 
clients sending in information 

680
00:31:18,800 --> 00:31:21,760
versus just doing point to point
between two big applications. 

681
00:31:22,120 --> 00:31:25,640
All of that sort of stuff is is 
around integration knowledge 

682
00:31:25,640 --> 00:31:29,560
basically and indeed it's it's 
quite important and it's also 

683
00:31:29,600 --> 00:31:32,600
much more available nowadays. 
One of the things I really like 

684
00:31:32,680 --> 00:31:38,000
as a as an architect about the 
fact that so many clients, 

685
00:31:38,000 --> 00:31:42,360
organizations are moving to 
cloud computing is that using 

686
00:31:42,360 --> 00:31:45,400
something like Mises or in the 
middleware is just something you

687
00:31:45,440 --> 00:31:47,560
enable toggle. 
Yeah, it's just toggle. 

688
00:31:47,560 --> 00:31:49,000
There's already credit card 
there. 

689
00:31:49,000 --> 00:31:51,920
You can just pay for it. 
Where I've been with a lot of 

690
00:31:51,920 --> 00:31:55,800
clients in the past where they 
were just running stuff on their

691
00:31:55,800 --> 00:31:58,640
own data center and the small 
operations team responsible for 

692
00:31:58,640 --> 00:32:00,640
things where you would go to 
them and you would say, you 

693
00:32:00,640 --> 00:32:02,600
know, I have this use case now 
that we're building, for 

694
00:32:02,600 --> 00:32:07,800
example, with the the Dutch 
Financial Times, we have once 

695
00:32:07,800 --> 00:32:11,240
built their entire website what 
they were still using their old 

696
00:32:12,360 --> 00:32:14,600
content management system. 
So whenever the content 

697
00:32:14,600 --> 00:32:17,720
management system would either 
publish a new article, news 

698
00:32:17,720 --> 00:32:21,520
article or make an update to an 
existing article, we needed all 

699
00:32:21,520 --> 00:32:25,280
of our application instances to 
know about that so that could 

700
00:32:25,280 --> 00:32:29,080
drop their cash and refresh it. 
This is a classic pops up 

701
00:32:29,320 --> 00:32:31,960
message use case, right? 
So we said, OK, what do you have

702
00:32:31,960 --> 00:32:33,880
for messaging system? 
No, we don't. 

703
00:32:34,280 --> 00:32:37,280
OK, can you just install 
something, maybe revving Q, 

704
00:32:37,280 --> 00:32:40,200
active Q, whatever, because we 
would really like to have a 

705
00:32:40,680 --> 00:32:42,960
little pops up system here set 
up so they can do this and say, 

706
00:32:42,960 --> 00:32:46,000
well, no, we're not going to do 
that because well, we're three 

707
00:32:46,000 --> 00:32:47,600
people. 
We're already struggling with 

708
00:32:47,600 --> 00:32:48,720
the stuff that we have right 
now. 

709
00:32:48,960 --> 00:32:51,240
We're not just going to 
introduce an entirely new piece 

710
00:32:51,240 --> 00:32:54,640
of middleware because you asked 
us to, which makes sense. 

711
00:32:54,760 --> 00:32:56,320
I mean, from their point of 
view, I can completely 

712
00:32:56,320 --> 00:32:58,760
understand that. 
But it means that well, I cannot

713
00:32:58,760 --> 00:33:02,240
use the best technology for the 
job and now I need to like an 

714
00:33:02,240 --> 00:33:06,080
idiot manually do like 
individual requests to all of 

715
00:33:06,080 --> 00:33:08,520
the endpoints that all of a 
sudden need to know. 

716
00:33:09,240 --> 00:33:11,840
Whereas I I don't have to deal 
with anything like this. 

717
00:33:11,840 --> 00:33:13,680
And with cloud, this is not a 
problem anymore. 

718
00:33:14,640 --> 00:33:19,440
Everyone has either something 
like if you're on AWS, you have 

719
00:33:19,440 --> 00:33:23,800
SQSSNS or they're running some 
form of Kafka which is really 

720
00:33:23,800 --> 00:33:27,040
popular nowadays, or there is 
Rabbit MQ, or there is something

721
00:33:27,040 --> 00:33:29,480
else with because it's not 
important what which thing there

722
00:33:29,480 --> 00:33:30,560
is. 
It's just important that there 

723
00:33:30,560 --> 00:33:34,040
is such a technology in place 
and there's there's abstractions

724
00:33:34,040 --> 00:33:35,360
and adapters everywhere 
nowadays. 

725
00:33:35,360 --> 00:33:37,480
So integrating something like 
this in your application is 

726
00:33:37,960 --> 00:33:38,760
peanuts. 
Yeah. 

727
00:33:39,160 --> 00:33:42,840
I feel like I really like that 
story because it highlights, I 

728
00:33:42,840 --> 00:33:45,080
think a really good thinking in 
the 1st place with regards to 

729
00:33:45,080 --> 00:33:47,600
the total cost of ownership. 
And if we don't have, it should 

730
00:33:47,600 --> 00:33:49,200
be really added. 
If there's a really good use 

731
00:33:49,200 --> 00:33:51,880
case, then likely it's yes, 
because that burden is going to 

732
00:33:51,960 --> 00:33:53,640
be somewhere in the 1st place 
anyway. 

733
00:33:54,120 --> 00:33:57,480
And I feel like now it's a good 
thing that infrastructure is 

734
00:33:57,480 --> 00:33:59,800
becoming more accessible. 
And it also has that dark side 

735
00:33:59,800 --> 00:34:02,840
where I feel like people can 
over engineer systems and 

736
00:34:02,840 --> 00:34:04,880
resiliency where it's not 
necessarily needed. 

737
00:34:05,240 --> 00:34:07,920
Like that conversation of cost 
of ownership, even on the cloud 

738
00:34:08,199 --> 00:34:11,239
should still be a conversation. 
And then yes, it can be easier 

739
00:34:11,239 --> 00:34:12,000
to add to it. 
It's a. 

740
00:34:12,040 --> 00:34:14,239
Similar thing where with micro 
service there's still 

741
00:34:14,239 --> 00:34:17,040
conversation there like OK, how 
many do we need and how big do 

742
00:34:17,040 --> 00:34:19,760
they need to be. 
I remember something like 3 

743
00:34:19,760 --> 00:34:22,920
years ago, not that long ago, we
had a go to Amsterdam, that's 

744
00:34:22,920 --> 00:34:25,639
conference that we used to work 
recognize where there was a 

745
00:34:25,840 --> 00:34:29,880
speaker there who did a lot of 
micro service cloud native 

746
00:34:29,880 --> 00:34:34,159
architecture with Go. 
But one thing I still remember 

747
00:34:34,159 --> 00:34:36,880
very well because it was very 
different from how we use, how 

748
00:34:36,880 --> 00:34:40,000
we work, not even used to work 
how we still work is that to 

749
00:34:40,000 --> 00:34:42,679
connect to a database, they 
would never just open up a 

750
00:34:42,679 --> 00:34:44,800
database connection from their 
Go service. 

751
00:34:45,080 --> 00:34:50,520
They would actually build like a
dedicated adapter service in 

752
00:34:50,520 --> 00:34:53,520
front of their database that 
they would expose over GRPC. 

753
00:34:53,960 --> 00:34:56,960
And then over that GRPC you 
could actually make the calls to

754
00:34:56,960 --> 00:34:59,680
the database. 
And it sounded completely weird 

755
00:34:59,680 --> 00:35:02,240
to me, but then he started to 
explain and he said, yeah, well,

756
00:35:02,240 --> 00:35:06,240
actually we found that at that 
time at least the the the 

757
00:35:06,240 --> 00:35:08,320
database supporting Go isn't 
actually that great when it 

758
00:35:08,320 --> 00:35:11,080
comes to things like connection 
pools and validation. 

759
00:35:11,320 --> 00:35:14,160
And we found that, well, some 
something like Java's actually 

760
00:35:14,160 --> 00:35:16,440
really good at that. 
So just building a Java series 

761
00:35:16,440 --> 00:35:20,040
for that put the GRPC front and 
and and everything else is Go. 

762
00:35:21,360 --> 00:35:23,520
So that I found that very 
interesting because it shows a 

763
00:35:23,520 --> 00:35:26,200
very different way of thinking 
about granularity and how big 

764
00:35:26,200 --> 00:35:28,160
should service be and what does 
that mean? 

765
00:35:28,160 --> 00:35:31,320
And there is no right or wrong 
way, but they but you do need to

766
00:35:31,320 --> 00:35:33,440
think about it indeed and see 
what are the trade-offs when we 

767
00:35:33,440 --> 00:35:34,360
start doing this. 
Yeah. 

768
00:35:34,880 --> 00:35:37,440
That's why I think it's super 
important that the people that 

769
00:35:37,680 --> 00:35:40,640
build the software, they also 
are responsible for like running

770
00:35:40,640 --> 00:35:42,480
it and owning it and also in 
production. 

771
00:35:42,480 --> 00:35:45,720
Yeah. 
And and I mean, I agree in the 

772
00:35:45,720 --> 00:35:48,280
sense that I don't think that 
people need to be always like on

773
00:35:48,280 --> 00:35:49,800
call for their own software, for
example. 

774
00:35:50,080 --> 00:35:54,760
But one thing for example, that 
the way I very much agree with 

775
00:35:54,760 --> 00:35:56,880
is whenever we have someone 
interviewing with us for 

776
00:35:56,880 --> 00:35:59,480
example, and they come from 
banking or insurance like 

777
00:35:59,480 --> 00:36:04,360
traditional sort of enterprises,
I always ask them, were you able

778
00:36:04,360 --> 00:36:06,840
to just even see the log files 
on production for the software 

779
00:36:06,840 --> 00:36:10,040
that you were building? 
And still so often I get, well, 

780
00:36:10,040 --> 00:36:13,120
no, not directly, but if there 
was a problem, we could file a 

781
00:36:13,120 --> 00:36:16,760
request and someone would make 
an export of a part of the logs 

782
00:36:16,760 --> 00:36:20,200
and they would ship it to us. 
Like, fuck, if that's your, if 

783
00:36:20,200 --> 00:36:22,840
that's the way that they, they 
do, they do trust you to build 

784
00:36:22,840 --> 00:36:24,840
the software that runs your 
production, but they don't trust

785
00:36:24,840 --> 00:36:26,040
you to actually look at it 
running. 

786
00:36:26,280 --> 00:36:28,800
That's strange, right? 
It's completely insane. 

787
00:36:28,800 --> 00:36:32,080
They actively break the feedback
loop and you have no idea what 

788
00:36:32,080 --> 00:36:35,040
what your stuff is doing. 
And that's another thing I try 

789
00:36:35,040 --> 00:36:38,280
to cultivate in people indeed, 
is make sure that you, once you 

790
00:36:38,280 --> 00:36:41,240
actually build it, that you look
at it and make sure that you can

791
00:36:41,240 --> 00:36:43,440
see what it's doing. 
And if you find out that, well, 

792
00:36:43,440 --> 00:36:46,240
you cannot see it properly, 
think about what you need to do 

793
00:36:46,240 --> 00:36:48,760
to make sure that you can see it
at logging, at metrics, 

794
00:36:48,760 --> 00:36:51,560
whatever. 
Because, yeah, I think that is 

795
00:36:51,760 --> 00:36:54,960
super important for people. 
Once you move beyond junior is 

796
00:36:54,960 --> 00:36:57,640
you need to, you need to build 
that feedback loop for yourself 

797
00:36:57,640 --> 00:37:00,840
where you can understand what 
the stuff that you build is 

798
00:37:00,840 --> 00:37:02,680
actually doing in a real 
environment. 

799
00:37:03,800 --> 00:37:05,640
And if you don't have that, if 
that's missing, and there are a 

800
00:37:05,640 --> 00:37:08,240
lot of companies where this is 
missing, people just don't see 

801
00:37:08,280 --> 00:37:11,560
what their stuff is doing. 
Yeah, you're never going to move

802
00:37:11,560 --> 00:37:13,640
beyond a certain level. 
No, I agree. 

803
00:37:13,800 --> 00:37:16,720
You mentioned that you wouldn't 
necessarily put the people that 

804
00:37:16,720 --> 00:37:19,840
create the software also in the 
role of being on call duty. 

805
00:37:19,840 --> 00:37:20,400
No. 
Why? 

806
00:37:20,400 --> 00:37:24,360
Why is that? 
Because I think a lot of a lot 

807
00:37:24,360 --> 00:37:27,040
of problems that we typically 
see that people that are on call

808
00:37:27,040 --> 00:37:29,840
need to deal with are not about 
there is a bug in the software 

809
00:37:29,840 --> 00:37:31,640
that we need to fix immediately 
and roll out. 

810
00:37:31,960 --> 00:37:34,560
It's about other stuff in the 
integration business that I'm in

811
00:37:34,560 --> 00:37:36,840
right now. 
Typically it's not us, it's 

812
00:37:37,160 --> 00:37:38,680
downstream system that is 
struggling. 

813
00:37:39,520 --> 00:37:43,800
But then that means the queues 
are filling up or maybe some 

814
00:37:43,800 --> 00:37:46,400
threat pool is running out of 
threats because some system is 

815
00:37:46,400 --> 00:37:49,000
just super slow. 
Now everything starts stalling 

816
00:37:49,320 --> 00:37:50,920
and that causes certain things 
to happen. 

817
00:37:52,080 --> 00:37:56,240
But it's not that often the case
that that the developer will be 

818
00:37:56,240 --> 00:37:57,600
able to efficiently deal with 
that. 

819
00:37:57,600 --> 00:38:00,400
And they might also not have 
like the complete overview of 

820
00:38:00,400 --> 00:38:02,680
the entire platform rather than 
the system that they are 

821
00:38:02,680 --> 00:38:04,880
responsible for to make these 
sort of decisions. 

822
00:38:05,320 --> 00:38:08,120
So I think there is still a 
value in separating those roles.

823
00:38:08,120 --> 00:38:11,840
And I still see a couple of 
years ago when DevOps started to

824
00:38:11,840 --> 00:38:15,960
become a term, people made fun 
of companies who had a DevOps 

825
00:38:15,960 --> 00:38:18,640
team because the whole point of 
DevOps was that you didn't have 

826
00:38:18,640 --> 00:38:21,080
a DevOps team anymore, but that 
it was development and 

827
00:38:21,080 --> 00:38:24,280
operations doing stuff together.
Rather than saying, Oh yeah, 

828
00:38:24,280 --> 00:38:25,640
you're now, you're now the 
DevOps are. 

829
00:38:26,240 --> 00:38:27,760
But I think that's changed 
DevOps. 

830
00:38:27,880 --> 00:38:30,960
The meaning of DevOps itself has
changed quite significantly 

831
00:38:30,960 --> 00:38:34,240
actually. 
DevOps now means way more things

832
00:38:34,240 --> 00:38:37,160
like infrastructure as a 
software doing stuff with 

833
00:38:37,160 --> 00:38:40,040
terraform, automatic 
provisioning of, of entire 

834
00:38:40,720 --> 00:38:43,600
environments. 
And, and again, that it makes 

835
00:38:43,600 --> 00:38:45,560
sense to say, Oh yeah, that's 
not something that every 

836
00:38:45,560 --> 00:38:49,520
developer can be expected to 
know about and to be an expert. 

837
00:38:49,520 --> 00:38:53,440
And so we need people for that 
and that's dev OPS as at least 

838
00:38:53,440 --> 00:38:56,240
as far as I'm concerned, a lot 
of that is what we now call dev 

839
00:38:56,240 --> 00:38:58,600
OPS. 
And it makes a lot more sense to

840
00:38:58,600 --> 00:39:00,200
have those type of people on 
call. 

841
00:39:01,560 --> 00:39:03,960
And I don't need to also be 
experts at the system that they 

842
00:39:03,960 --> 00:39:06,920
are operating that they just 
need to know like the basics of 

843
00:39:06,920 --> 00:39:09,040
what is, what are the metrics 
that we need to watch in the 

844
00:39:09,040 --> 00:39:12,000
health checks and what should we
do if certain known issues 

845
00:39:12,000 --> 00:39:14,720
arise. 
And only as a like a third line,

846
00:39:15,640 --> 00:39:17,720
you go to a developer and you 
say, well, I think this is 

847
00:39:17,720 --> 00:39:19,400
actually something in the 
software that you need to fix. 

848
00:39:19,440 --> 00:39:22,360
Yeah, it's interesting because I
followed this training from 

849
00:39:22,360 --> 00:39:24,480
Gregor Hope. 
It was a couple weeks ago and he

850
00:39:24,480 --> 00:39:29,080
was in a company responsible for
a team of architects and they 

851
00:39:29,080 --> 00:39:32,680
had done something which needed 
to have kind of an on call duty 

852
00:39:32,680 --> 00:39:34,640
for and their OPS team didn't 
want to do it. 

853
00:39:34,880 --> 00:39:37,120
So then he was like, OK, then 
we'll we'll do it ourselves. 

854
00:39:37,480 --> 00:39:40,040
And he did not, He had enough 
political credit to be able to 

855
00:39:40,040 --> 00:39:42,240
do that in the 1st place. 
And then his team was like, 

856
00:39:42,240 --> 00:39:43,480
well, do we really want to do 
it? 

857
00:39:43,480 --> 00:39:46,520
And his mindset was we are 
responsible for kind of 

858
00:39:46,520 --> 00:39:49,080
architecting this thing and we 
also should have the confidence 

859
00:39:49,080 --> 00:39:50,360
that it should run Florida 
State. 

860
00:39:50,360 --> 00:39:52,640
No, that's true. 
Like build it Florida State 

861
00:39:52,880 --> 00:39:54,240
exactly you have easy on. 
Call. 

862
00:39:54,240 --> 00:39:56,840
No, that's why indeed why you 
should have the feedback loop. 

863
00:39:56,840 --> 00:39:58,520
And this is an even stronger 
feedback loop. 

864
00:39:58,520 --> 00:40:00,600
If you get called out of bed, of
course, then if you could just 

865
00:40:00,600 --> 00:40:03,160
see what's happening. 
But yeah, but that makes sense. 

866
00:40:03,160 --> 00:40:05,720
That is important, but it's also
true, I think that a lot of 

867
00:40:05,720 --> 00:40:09,800
things are not really about. 
It's indeed about what you 

868
00:40:09,800 --> 00:40:11,520
expect from an engineer from 
certain year. 

869
00:40:11,520 --> 00:40:13,800
If it's just about the software 
that they develop, that's a 

870
00:40:13,800 --> 00:40:16,720
different thing than. 
The entire system that you run 

871
00:40:16,720 --> 00:40:18,080
and maintain and you can do 
both. 

872
00:40:18,360 --> 00:40:20,520
Amazon does this famously, 
right? 

873
00:40:20,800 --> 00:40:23,920
You build it, you run it, but I 
don't think it's necessarily the

874
00:40:23,920 --> 00:40:26,800
best model for everyone. 
And that's not saying that it's 

875
00:40:27,400 --> 00:40:29,280
that you shouldn't do it. 
It's saying that I think for a 

876
00:40:29,280 --> 00:40:32,600
lot of typical more, let's say, 
enterprise use cases, that is 

877
00:40:32,600 --> 00:40:35,200
the business that I'm in. 
I think it still makes sense 

878
00:40:35,200 --> 00:40:37,400
indeed to separate some of these
responsibilities. 

879
00:40:37,520 --> 00:40:41,000
Yeah, sometimes also for like 
regulatory or security reasons, 

880
00:40:41,000 --> 00:40:42,560
right? 
Maybe you don't want your 

881
00:40:42,800 --> 00:40:46,400
developers to be able to see and
do everything that is possible 

882
00:40:46,760 --> 00:40:48,280
in a production environment, 
right? 

883
00:40:48,560 --> 00:40:50,600
I get that. 
Yeah. 

884
00:40:50,600 --> 00:40:51,800
And we've seen that a lot 
actually. 

885
00:40:51,800 --> 00:40:55,040
We have had customers also in 
financial industries dealing 

886
00:40:55,040 --> 00:40:59,480
with credit card payment gateway
for example, where they needed 

887
00:40:59,480 --> 00:41:03,440
to have very strict regulations 
around for ICE principal who can

888
00:41:03,440 --> 00:41:06,200
do what it needs to be audited. 
And then if you're going to say,

889
00:41:06,200 --> 00:41:08,200
well, every new developer on the
team, the first thing that we're

890
00:41:08,200 --> 00:41:10,560
going to do is deploy to 
production, right, That that can

891
00:41:10,560 --> 00:41:13,640
be a really nice practice. 
But it's yeah, in in this sort 

892
00:41:13,640 --> 00:41:16,800
of situation, it can be tricky. 
I feel like in, in whatever you 

893
00:41:16,800 --> 00:41:19,880
do, there's going to be risk. 
And then it's just how do we 

894
00:41:19,880 --> 00:41:21,000
mitigate that risk? 
Yeah. 

895
00:41:21,120 --> 00:41:24,440
Is it for a principle or is it 
something else where people are 

896
00:41:24,440 --> 00:41:27,360
still tracked but they still 
have that flexibility of going 

897
00:41:27,360 --> 00:41:29,520
to production? 
That is the conversation. 

898
00:41:29,520 --> 00:41:33,120
And this is also, I think very 
much why it's so important that 

899
00:41:33,120 --> 00:41:36,440
you that you know what you're 
doing, because then you can 

900
00:41:36,440 --> 00:41:40,000
properly estimate that risk. 
And I think it's a really good 

901
00:41:40,000 --> 00:41:42,080
point. 
I had AI did a keynote at Go to 

902
00:41:42,080 --> 00:41:46,640
myself a while ago where I said 
I think a lot of people 

903
00:41:46,720 --> 00:41:51,040
overvalue the return on 
investment that you get from 

904
00:41:51,160 --> 00:41:53,000
testing on non production 
environments. 

905
00:41:53,400 --> 00:41:56,320
Obviously you need to do tests, 
but a lot of people think that 

906
00:41:56,320 --> 00:41:58,880
OK, if we do this, if you do 
this in the right way, we will 

907
00:41:58,880 --> 00:42:01,640
never encounter some problem on 
production. 

908
00:42:01,960 --> 00:42:06,320
And if we do, then it will be 
very hard to fix because well, 

909
00:42:07,400 --> 00:42:10,360
once something reaches 
production, it's always 100 

910
00:42:10,360 --> 00:42:13,920
times or 1000 times harder to 
fix than if we find it during 

911
00:42:13,920 --> 00:42:16,720
development, for example. 
And in my experience, this is 

912
00:42:16,720 --> 00:42:21,720
not necessarily true at all. 
Actually, just yesterday I did 

913
00:42:22,040 --> 00:42:25,560
my final production deploy of 
this big integration platform 

914
00:42:25,560 --> 00:42:29,960
before my holiday starts, and I 
was checking if everything 

915
00:42:29,960 --> 00:42:30,760
worked. 
It's expected. 

916
00:42:30,760 --> 00:42:32,840
Now, I saw some unexpected 
errors there, and it turned out 

917
00:42:32,840 --> 00:42:34,720
that I actually introduced an 
error myself somewhere. 

918
00:42:36,320 --> 00:42:40,000
This was causing a problem in 
people during the day when they 

919
00:42:40,000 --> 00:42:43,640
would try to see the result of a
ticket. 

920
00:42:43,640 --> 00:42:47,520
Like what did they win? 
So there's no nothing breaks in 

921
00:42:47,520 --> 00:42:49,160
the sense that there's no data 
issue or anything. 

922
00:42:49,160 --> 00:42:51,720
It's just that one small piece 
of functionality is no longer 

923
00:42:51,720 --> 00:42:54,000
there. 
I think from the time that I 

924
00:42:54,000 --> 00:42:56,800
spotted the error in the 
production logs to getting a 

925
00:42:57,320 --> 00:43:01,680
production fix out with the fix 
of 20 minutes, yeah, tops 

926
00:43:01,840 --> 00:43:04,600
perfect. 
And if if you know that you can 

927
00:43:04,600 --> 00:43:08,640
do that, if you know that you 
have the experience, but also 

928
00:43:08,640 --> 00:43:12,360
the CICD capabilities and you 
have the access rights and 

929
00:43:12,360 --> 00:43:15,280
everything else in place that 
you can actually get these sort 

930
00:43:15,280 --> 00:43:19,600
of fixes out that quickly, then,
well, how much time would you 

931
00:43:19,640 --> 00:43:22,480
actually want to invest in 
making sure that something like 

932
00:43:22,480 --> 00:43:26,440
this can cannot happen by 
putting all sorts of guard rails

933
00:43:26,440 --> 00:43:28,040
and tests and everything in 
place? 

934
00:43:28,040 --> 00:43:29,560
Yeah. 
It's just you have to look at 

935
00:43:29,560 --> 00:43:31,440
the return on investment. 
And sometimes it's just not 

936
00:43:31,440 --> 00:43:33,840
worth it, No. 
It's interesting that like 

937
00:43:34,400 --> 00:43:37,960
speeding things up might make 
things more resilient, like on 

938
00:43:37,960 --> 00:43:40,400
the long term, which is a weird 
mindset, right? 

939
00:43:40,720 --> 00:43:43,320
If we deploy to production 
faster, then what about all 

940
00:43:43,320 --> 00:43:46,080
these risk kind of affordances 
that we have in place? 

941
00:43:46,080 --> 00:43:49,040
Like are those going to be kind 
of sub converter or others not 

942
00:43:49,040 --> 00:43:51,200
going to be there? 
But then when you're talking 

943
00:43:51,200 --> 00:43:53,400
about this feedback loop, it's, 
it's so tangible, right? 

944
00:43:53,480 --> 00:43:55,840
You see an issue, you can 
immediately fix it. 

945
00:43:56,520 --> 00:43:59,680
Sure, maybe if we deploy faster 
we create more issues, but we 

946
00:43:59,680 --> 00:44:02,320
fix it faster and those issues 
will still be there if we deploy

947
00:44:02,320 --> 00:44:03,200
less fast. 
Yeah. 

948
00:44:03,200 --> 00:44:06,280
And, and this is something that 
is also very hard to to explain 

949
00:44:06,280 --> 00:44:08,960
to both I think customers, but 
also regulators. 

950
00:44:08,960 --> 00:44:14,080
For example, within within those
lotteries, we had an audit and 

951
00:44:15,760 --> 00:44:17,120
this was actually a while ago 
already. 

952
00:44:17,120 --> 00:44:19,160
We have several audits. 
But one thing that they want is 

953
00:44:19,240 --> 00:44:23,200
whenever we deploy a new version
of a service, which is something

954
00:44:23,200 --> 00:44:25,000
that we we basically do all the 
time. 

955
00:44:26,600 --> 00:44:30,560
They required us whenever this 
service was involved with, for 

956
00:44:30,560 --> 00:44:34,560
example, the casino part of the 
of the lottery, that we would 

957
00:44:34,560 --> 00:44:38,280
have a hash or something of this
thing and that we would report 

958
00:44:38,280 --> 00:44:39,840
what version was running in 
production. 

959
00:44:40,840 --> 00:44:44,080
So we've done that and they 
didn't want it just as text, 

960
00:44:44,080 --> 00:44:46,760
they wanted screenshots. 
So that was one of our DevOps 

961
00:44:46,760 --> 00:44:49,600
engineers has actually automated
the process that whenever we go 

962
00:44:49,600 --> 00:44:53,080
to production now we're going to
send screenshots of all of the 

963
00:44:53,080 --> 00:44:55,720
stuff that is in our Docker 
registry and show that it 

964
00:44:55,720 --> 00:44:58,400
actually runs a reduction. 
But it means absolutely nothing.

965
00:44:58,760 --> 00:45:00,720
It it, it's, it's completely 
pointless. 

966
00:45:01,040 --> 00:45:03,680
But it's just because these 
companies are used not to 

967
00:45:04,080 --> 00:45:08,320
regulate custom builds, 
enterprise software that gets 

968
00:45:08,320 --> 00:45:10,320
deployed on a very frequent 
basis. 

969
00:45:10,600 --> 00:45:12,920
They are used to regulating 
products. 

970
00:45:13,400 --> 00:45:16,480
And these products are maybe 
going to have two major releases

971
00:45:16,480 --> 00:45:18,760
every year and three. 
Twice a year, that's. 

972
00:45:18,760 --> 00:45:20,600
Yeah. 
And we need to be absolutely 

973
00:45:20,600 --> 00:45:23,720
sure that the thing that they 
claim to have delivered is 

974
00:45:23,720 --> 00:45:25,600
running in production. 
So you need to be able to prove 

975
00:45:25,600 --> 00:45:27,480
that. 
But yeah, for us, it's, it's 

976
00:45:27,480 --> 00:45:30,560
just fewer overhead. 
And what we see with customers 

977
00:45:30,560 --> 00:45:34,640
as well that sometimes they are 
already very scared to to put 

978
00:45:35,400 --> 00:45:38,640
new versions of something in in 
production because, well, the 

979
00:45:38,640 --> 00:45:41,200
thing that we have now actually 
works and there's a lot of 

980
00:45:41,200 --> 00:45:43,200
people using it and who knows 
what happened. 

981
00:45:43,200 --> 00:45:46,800
But yeah, you need to really 
educate your customers on this, 

982
00:45:46,800 --> 00:45:50,400
that the longer you wait and the
longer you accumulate change, 

983
00:45:50,920 --> 00:45:53,880
higher actually the risk is 
going to be of course, well, if 

984
00:45:53,880 --> 00:45:56,400
you're doing it regularly, you 
become better at it because you 

985
00:45:56,400 --> 00:45:59,200
do it very often. 
The amount of changes that are 

986
00:45:59,200 --> 00:46:02,800
inside of everything will become
a lot smaller and people will 

987
00:46:02,800 --> 00:46:04,320
still remember what was actually
in there. 

988
00:46:04,600 --> 00:46:06,960
And I think the last 1 is really
important, right? 

989
00:46:06,960 --> 00:46:09,840
If I'm going to deploy something
and it it has changes from a 

990
00:46:09,840 --> 00:46:12,400
colleague who's not even on my 
team anymore that they made like

991
00:46:12,400 --> 00:46:14,480
6 months ago, and now it's 
finally reaches production, 

992
00:46:14,840 --> 00:46:16,520
something is wrong with that. 
No one has a clue. 

993
00:46:16,520 --> 00:46:17,960
No. 
So then we really have to dig. 

994
00:46:18,040 --> 00:46:20,120
Yeah, we have to dig. 
We have to reverse engineer what

995
00:46:20,120 --> 00:46:23,480
happened. 
Whereas if we're deploying every

996
00:46:23,480 --> 00:46:27,000
week, every day, and something 
is wrong, then Oh yeah, I still 

997
00:46:27,000 --> 00:46:29,720
remember what I worked on. 
Now it must be that thing and 

998
00:46:29,720 --> 00:46:32,720
then indeed my experience is 
that getting fixes out then is 

999
00:46:32,880 --> 00:46:36,160
is way way way quicker. 
I agree, yeah, it's interesting 

1000
00:46:36,160 --> 00:46:40,000
that with requirements like, OK,
we need to really have evidence 

1001
00:46:40,000 --> 00:46:42,360
of what we deploy. 
That's a requirement. 

1002
00:46:42,480 --> 00:46:45,560
And then sure, you can think, 
OK, maybe that's strange and I 

1003
00:46:45,560 --> 00:46:47,640
don't really agree with it. 
But changing the system can also

1004
00:46:47,640 --> 00:46:49,320
be hard and it requires time 
usually. 

1005
00:46:49,320 --> 00:46:52,840
And it's such an engineering 
mindset to then be like, but we 

1006
00:46:52,840 --> 00:46:55,200
really like fast deployments 
because of all these benefits, 

1007
00:46:55,200 --> 00:46:56,400
right? 
Quick changes. 

1008
00:46:56,400 --> 00:46:59,360
We know exactly what we deploy. 
We can kind of triangulate 

1009
00:46:59,360 --> 00:47:01,160
problems faster and get the 
fixes out faster. 

1010
00:47:01,160 --> 00:47:04,960
So we automate kind of this 
process of then giving you the 

1011
00:47:04,960 --> 00:47:06,760
evidence. 
And maybe that's not what the 

1012
00:47:06,760 --> 00:47:10,320
people want because they expect 
kind of, oh, maybe 2 screenshots

1013
00:47:10,320 --> 00:47:13,600
of like twice a year deployments
and then get overwhelmed. 

1014
00:47:13,600 --> 00:47:15,520
But yeah, that helps. 
Going to change the system then.

1015
00:47:15,640 --> 00:47:19,120
Yeah, that's really good. 
And fortunately, I think for me,

1016
00:47:19,840 --> 00:47:24,080
I don't have a very, a very 
large amount of experience in 

1017
00:47:24,080 --> 00:47:27,520
these regulatory environments. 
So this is the exception rather 

1018
00:47:27,520 --> 00:47:29,640
than the rule for me. 
What I've heard from a people, a

1019
00:47:29,640 --> 00:47:32,200
lot of people who do more work 
and finance, for example, today,

1020
00:47:32,200 --> 00:47:34,160
indeed they were, they're 
dealing with this all the time. 

1021
00:47:34,160 --> 00:47:36,480
And there have been some nice 
talks about it. 

1022
00:47:36,840 --> 00:47:39,200
Dave Farley, for example, is one
of those people. 

1023
00:47:40,080 --> 00:47:45,440
He he invented the continuous 
deployment term. 

1024
00:47:45,480 --> 00:47:50,000
I think I wrote the book on it 
together with Jess Humble, but 

1025
00:47:50,000 --> 00:47:54,000
Dave Farley has written also a 
lot about how can you actually 

1026
00:47:54,000 --> 00:48:00,360
work in a iterative, fast, often
deployable fashion in a 

1027
00:48:00,360 --> 00:48:02,560
regulatory settings. 
And it basically means you have 

1028
00:48:02,560 --> 00:48:06,240
to work with the regulators to 
to say, OK, we understand what 

1029
00:48:06,240 --> 00:48:08,280
you're asking now, but that's 
not the real thing that you're 

1030
00:48:08,280 --> 00:48:11,320
after. 
That's just your current way of 

1031
00:48:12,040 --> 00:48:14,720
getting the information that you
need for your ultimate goal. 

1032
00:48:14,720 --> 00:48:17,360
So what is your ultimate goal? 
And once we establish that, we 

1033
00:48:17,360 --> 00:48:20,120
can find out how we can actually
meet that goal in a different 

1034
00:48:20,120 --> 00:48:23,800
way and, and get it to work. 
But this is not, this is not my 

1035
00:48:23,800 --> 00:48:26,840
area of expertise because 
fortunately I haven't had to do 

1036
00:48:26,840 --> 00:48:28,920
this that often. 
But I think it's it is very 

1037
00:48:28,920 --> 00:48:32,920
interesting because, yeah, if 
you just say we cannot do this 

1038
00:48:32,920 --> 00:48:35,040
because of regulations. 
And it's. 

1039
00:48:35,040 --> 00:48:36,440
Not good enough? 
No, it's not good. 

1040
00:48:36,600 --> 00:48:38,400
You need that depth. 
Explain it to me. 

1041
00:48:38,560 --> 00:48:41,480
Especially with engineers, for 
me it's really hard to do 

1042
00:48:41,480 --> 00:48:43,480
something without understanding.
It's not good enough for your 

1043
00:48:43,480 --> 00:48:46,040
engineers, but in the end it's 
also not good enough for, well, 

1044
00:48:46,040 --> 00:48:47,480
your customers and your systems,
of course. 

1045
00:48:47,480 --> 00:48:50,120
Yeah, you need to be able to 
work in the way that you want to

1046
00:48:50,120 --> 00:48:52,280
work and still and meet these 
requirements. 

1047
00:48:52,440 --> 00:48:55,080
And it's possible, but it's 
it's, it's real work. 

1048
00:48:55,320 --> 00:48:57,400
Yeah, it really depends on the 
environment. 

1049
00:48:57,440 --> 00:48:59,880
I think especially for your 
career, if you want to 

1050
00:48:59,880 --> 00:49:02,520
accelerate, you need to be in 
environments where people have 

1051
00:49:02,520 --> 00:49:04,720
the patience and also the 
respect to educate each other 

1052
00:49:04,720 --> 00:49:07,880
with regards to OK, this is the 
knowledge and try and create 

1053
00:49:07,880 --> 00:49:10,360
that shared understanding. 
There needs to be enough 

1054
00:49:10,360 --> 00:49:13,160
interesting problems also for 
you to learn and grow and not 

1055
00:49:13,160 --> 00:49:15,960
just work on kind of surface 
level and not being able to see 

1056
00:49:15,960 --> 00:49:18,160
logs in production, for example,
not owe what you build. 

1057
00:49:18,960 --> 00:49:21,880
And I think that's really going 
to make or break your career 

1058
00:49:21,880 --> 00:49:23,360
acceleration. 
You can coast. 

1059
00:49:23,440 --> 00:49:25,280
Coasting is fine. 
Not everyone needs to kind of 

1060
00:49:25,520 --> 00:49:27,880
aim for the stars. 
With regards to growth, it 

1061
00:49:27,880 --> 00:49:30,120
depends on your environment, but
if you're in a really good 

1062
00:49:30,120 --> 00:49:31,840
environment, it can really help 
your growth. 

1063
00:49:32,480 --> 00:49:34,040
That's mainly it. 
Yeah, yeah. 

1064
00:49:34,040 --> 00:49:36,880
And I think it's also, you can 
tell very often when, when you 

1065
00:49:36,880 --> 00:49:40,000
have people that have that drive
and that it's, it's important 

1066
00:49:40,000 --> 00:49:43,520
also that they are able to do 
this because it, it becomes like

1067
00:49:43,520 --> 00:49:47,280
a self accelerating effect. 
If, if people see the results 

1068
00:49:47,280 --> 00:49:53,640
of, of their efforts and then 
it, it sort of just bootstraps 

1069
00:49:53,640 --> 00:49:55,560
itself from there. 
But you can see the same thing 

1070
00:49:55,560 --> 00:49:58,120
happening with people who indeed
are, they're, they're, they're 

1071
00:49:58,120 --> 00:50:00,000
young and they're enthusiastic 
and they want to learn things, 

1072
00:50:00,000 --> 00:50:01,440
they want to do things. 
And then they end up in the 

1073
00:50:01,440 --> 00:50:04,480
situation where, Oh yeah, this 
is not really possible. 

1074
00:50:04,480 --> 00:50:08,240
Or by the time that you're 
working on something now, it it 

1075
00:50:08,240 --> 00:50:10,800
won't be running in a production
environment for half a year. 

1076
00:50:11,640 --> 00:50:14,560
And then that maybe not even 
because someone changed their 

1077
00:50:14,560 --> 00:50:15,840
mind, right. 
You see this sometimes in 

1078
00:50:15,840 --> 00:50:18,040
product development companies 
where you can be working on 

1079
00:50:18,040 --> 00:50:20,960
stuff that never makes, makes it
into the light of day. 

1080
00:50:21,600 --> 00:50:23,680
Yeah, that's of course not very 
motivating. 

1081
00:50:23,680 --> 00:50:27,400
So, yeah, it's also important to
so that people actually stay 

1082
00:50:27,400 --> 00:50:30,960
motivated to, to continuously 
improve themselves to the work. 

1083
00:50:31,200 --> 00:50:33,680
That you don't get motivated by 
doing the work, you get 

1084
00:50:33,680 --> 00:50:35,600
motivated by seeing the results 
of doing the work. 

1085
00:50:35,960 --> 00:50:38,080
And if you don't see those 
results, then yeah, it's really 

1086
00:50:38,080 --> 00:50:41,320
hard to just keep going. 
Yeah, I mean, it makes me sad 

1087
00:50:41,320 --> 00:50:44,360
that people can get stuck in an 
organization like that and 

1088
00:50:44,360 --> 00:50:46,560
think, OK, this is it and this 
is it. 

1089
00:50:46,560 --> 00:50:48,400
And the same is on the other 
side and the same. 

1090
00:50:48,440 --> 00:50:51,120
I mentioned interviews before, 
like I always ask these 

1091
00:50:51,120 --> 00:50:53,080
questions to people from banks 
and insurance companies. 

1092
00:50:53,360 --> 00:50:55,880
I've had a couple of interviews 
also with people coming out of 

1093
00:50:55,880 --> 00:50:58,120
these sort of organizations 
where I told them at the end, 

1094
00:50:58,120 --> 00:51:00,080
well, you know, we're going to 
make you an offer. 

1095
00:51:00,080 --> 00:51:02,520
You can accept it and not. 
But whatever you do, please 

1096
00:51:02,520 --> 00:51:05,320
leave your current job because 
the way that you're explaining 

1097
00:51:05,320 --> 00:51:07,760
what you're doing, this is just 
not a good position to be in. 

1098
00:51:07,760 --> 00:51:11,320
And well, we can be a company 
that can do better for you 

1099
00:51:11,320 --> 00:51:13,720
hopefully. 
But there are many other 

1100
00:51:13,720 --> 00:51:15,400
opportunities that are better as
well. 

1101
00:51:15,720 --> 00:51:17,480
Because sometimes people just 
don't know, right? 

1102
00:51:17,480 --> 00:51:19,520
If if you're, if you're in your 
first job and this is what 

1103
00:51:19,520 --> 00:51:20,840
you're used to and this is what 
you do. 

1104
00:51:21,680 --> 00:51:23,920
You think that, yeah, this is 
just the way that things work 

1105
00:51:23,920 --> 00:51:26,680
or. 
But but then you'll learn by 

1106
00:51:26,680 --> 00:51:29,200
talking to other people, like 
what is actually possible and 

1107
00:51:29,680 --> 00:51:31,040
how could it also be. 
Yeah. 

1108
00:51:31,240 --> 00:51:32,960
Yeah. 
Sometimes changing jobs is the 

1109
00:51:33,280 --> 00:51:34,960
easiest way of making things 
better. 

1110
00:51:34,960 --> 00:51:36,800
Of course, yeah. 
That's why I really like when 

1111
00:51:36,800 --> 00:51:39,520
people come on like you on 
podcasts like these, to share 

1112
00:51:39,520 --> 00:51:40,480
their perspective. 
Yeah. 

1113
00:51:40,680 --> 00:51:43,360
Because otherwise it's just if 
no one shares their perspective,

1114
00:51:43,640 --> 00:51:46,080
you only know kind of what's 
within your organizational 

1115
00:51:46,080 --> 00:51:46,760
boundaries. 
Yeah. 

1116
00:51:46,960 --> 00:51:48,040
And that's true. 
Yeah. 

1117
00:51:48,440 --> 00:51:49,800
Thank you so much for coming on,
man. 

1118
00:51:49,840 --> 00:51:50,920
I really enjoyed this. 
Yeah. 

1119
00:51:51,040 --> 00:51:52,840
Good software engineering 
mastery. 

1120
00:51:52,840 --> 00:51:54,800
I feel like it's a long path. 
It's a hard path. 

1121
00:51:54,880 --> 00:51:57,720
There's continuous learning 
there as well, but once you have

1122
00:51:57,720 --> 00:52:00,360
really solid fundamentals, you 
can really excel and deliver. 

1123
00:52:00,640 --> 00:52:04,080
Yeah. 
And also, once you actually go 

1124
00:52:04,080 --> 00:52:08,360
beyond the basics, you start to 
learn the patterns and the the 

1125
00:52:08,360 --> 00:52:11,920
underlying abstractions, and 
then it actually becomes easier,

1126
00:52:12,280 --> 00:52:13,680
right? 
If I need to learn a new 

1127
00:52:13,680 --> 00:52:16,240
programming language, now I 
don't, it's a very different 

1128
00:52:16,240 --> 00:52:20,600
experience from someone who's 
just into computer engineering 

1129
00:52:20,600 --> 00:52:21,920
who needs to learn a language, 
right? 

1130
00:52:21,920 --> 00:52:23,280
I can just. 
Yeah, that's from there. 

1131
00:52:23,280 --> 00:52:24,840
That's from there. 
They probably have that you know

1132
00:52:24,840 --> 00:52:28,720
what to expect. 
So it's it gets better, it 

1133
00:52:28,720 --> 00:52:30,440
compromise. 
It's like, yeah. 

1134
00:52:30,440 --> 00:52:32,200
But it's also the message to 
people struggling. 

1135
00:52:32,200 --> 00:52:34,640
I think it gets better over. 
Time, yeah, and definitely you 

1136
00:52:34,640 --> 00:52:36,920
have to get through that hurdle 
if you're still here. 

1137
00:52:36,920 --> 00:52:39,000
Thank you so much for listening.
Let us know in the comments 

1138
00:52:39,000 --> 00:52:40,520
section what you've thought of 
this episode. 

1139
00:52:40,680 --> 00:52:43,080
Leave a like if you liked the 
episode and otherwise we'll see 

1140
00:52:43,080 --> 00:52:43,760
you on the next one.
