1
00:00:00,080 --> 00:00:02,760
Software engineering 
fundamentals, how to become a 

2
00:00:02,840 --> 00:00:05,640
great software engineer and what
to focus on. 

3
00:00:06,160 --> 00:00:07,800
That's exactly what we discussed
today. 

4
00:00:07,800 --> 00:00:11,760
Joining me today is Sonar Muk, 
Director of Technology over at 

5
00:00:11,760 --> 00:00:13,760
Picnic. 
And he's been involved in 

6
00:00:13,760 --> 00:00:16,760
setting up a training program 
specifically for people early in

7
00:00:16,760 --> 00:00:19,600
career to teach them how to 
become great engineers. 

8
00:00:20,040 --> 00:00:23,160
He touches on many pitfalls they
teach, some of which I've 

9
00:00:23,160 --> 00:00:26,160
actually fallen into myself. 
So enjoy. 

10
00:00:29,720 --> 00:00:33,600
One of the initiatives that give
me a lot of energy that we 

11
00:00:33,600 --> 00:00:37,760
started a few years ago is a 
path for people who are super 

12
00:00:37,760 --> 00:00:41,080
early career, who are maybe even
just graduated and bringing them

13
00:00:41,080 --> 00:00:44,440
into Picnic and giving them a 
place to grow very fast through 

14
00:00:44,440 --> 00:00:48,400
our tech Academy. 
So what's what What you saw 

15
00:00:48,400 --> 00:00:51,920
initially in Picnic when I 
joined is that we hired people 

16
00:00:51,920 --> 00:00:56,080
who were quite experienced, 
which is great because you are 

17
00:00:56,120 --> 00:00:58,360
allowing them to hit the ground 
running and to become very 

18
00:00:58,360 --> 00:01:02,240
productive very fast. 
But at the same time, as we all 

19
00:01:02,240 --> 00:01:04,760
know, it's super hard to keep 
hiring experienced talents, 

20
00:01:04,760 --> 00:01:06,520
especially if you want skill 
like we did. 

21
00:01:06,920 --> 00:01:11,760
So we also understood that this 
was not sustainable to, to, to 

22
00:01:11,760 --> 00:01:14,400
the level that we have now. 
So we needed to find a way to 

23
00:01:14,400 --> 00:01:17,440
also bring in people with less 
experience and no experience. 

24
00:01:18,800 --> 00:01:21,680
And as you're a start up moving 
into sort of the scale up phase,

25
00:01:22,680 --> 00:01:25,440
things are busy, right? 
So all teams are crazy busy with

26
00:01:25,480 --> 00:01:27,880
lots of new features and then 
all, all kinds of things that 

27
00:01:27,880 --> 00:01:32,000
need to happen there already. 
So just throwing someone in 

28
00:01:32,000 --> 00:01:35,640
there who doesn't have any 
experience at all doesn't set 

29
00:01:35,920 --> 00:01:38,360
either side up for success. 
So it's not not great for the 

30
00:01:38,360 --> 00:01:39,880
person joining, it's not great 
for the team. 

31
00:01:40,480 --> 00:01:46,320
So we, this was around 2122, we 
started thinking, OK, what do we

32
00:01:46,320 --> 00:01:48,680
need to put in place to be able 
to make this happen and to set 

33
00:01:48,800 --> 00:01:51,200
both sides. 
So the team receiving, let's say

34
00:01:51,200 --> 00:01:53,880
this junior joining, but also 
the person joining up for 

35
00:01:53,880 --> 00:01:55,640
success. 
And that's where the idea for 

36
00:01:55,640 --> 00:02:00,200
this sort of learning path came 
where we say, OK, basically what

37
00:02:00,200 --> 00:02:04,360
we want is someone still with 
ACS backgrounds, but maybe no 

38
00:02:04,360 --> 00:02:07,440
experience or very little 
experience and give them enough 

39
00:02:07,440 --> 00:02:13,480
support to to grow very quick 
quickly, to be able to already 

40
00:02:13,480 --> 00:02:15,760
contribute from the start. 
But at the same time have a lot 

41
00:02:15,760 --> 00:02:19,280
of support structure around that
to also get this growth. 

42
00:02:19,280 --> 00:02:22,040
And that's, that's sort of a 
initiative that I'm super 

43
00:02:22,040 --> 00:02:25,400
excited about. 
But now we've done five groups 

44
00:02:25,400 --> 00:02:28,560
of roughly 10 engineers that we 
hire in sort of batches. 

45
00:02:28,560 --> 00:02:32,520
And these are also groups that 
that feel very cohesive and go 

46
00:02:32,520 --> 00:02:36,080
through this program together. 
And where you can see that they 

47
00:02:36,560 --> 00:02:39,240
actually get an opportunity is 
pretty rare because as an 

48
00:02:39,240 --> 00:02:42,000
engineer, you will then join one
of our product teams. 

49
00:02:42,000 --> 00:02:45,080
So from the get go, you will be 
immersed, let's say, in the 

50
00:02:45,080 --> 00:02:48,160
whole context of team and, and, 
and doing actual work already. 

51
00:02:48,800 --> 00:02:51,120
But at the same time, we also 
offer a very structured path to 

52
00:02:51,120 --> 00:02:54,600
this group in terms of learning.
So there's a few courses that we

53
00:02:54,680 --> 00:02:56,320
developed and, and, and, and 
teach. 

54
00:02:57,120 --> 00:03:02,160
There's a mentor that we also 
couple to this person who's 

55
00:03:02,160 --> 00:03:04,880
available for yeah, one-on-one 
coaching. 

56
00:03:04,880 --> 00:03:07,320
And we also explicitly make time
for this, right? 

57
00:03:07,320 --> 00:03:10,320
So that we also don't put this 
as an additional burden on 

58
00:03:10,320 --> 00:03:14,520
someone, but really allow them 
to to take time for that and 

59
00:03:14,520 --> 00:03:17,400
also offer a lot of room for 
people to actually do a bit of 

60
00:03:17,880 --> 00:03:20,440
self development, self study, 
offer content for that. 

61
00:03:20,800 --> 00:03:23,640
So that's yeah, these people in 
the first few months that they 

62
00:03:23,640 --> 00:03:27,680
joined really also experienced 
the freedom to to actually work 

63
00:03:27,680 --> 00:03:31,560
on themselves rather than trying
to figure out how to implement 

64
00:03:31,560 --> 00:03:34,720
their tickets and how to 
actually get something out of 

65
00:03:34,720 --> 00:03:37,320
the door because there's they 
they might experience otherwise 

66
00:03:37,320 --> 00:03:40,440
so much pressure. 
So designing this program was 

67
00:03:41,080 --> 00:03:44,320
was something that was a bit of 
an experiment, right? 

68
00:03:44,320 --> 00:03:45,560
So for us, it was completely 
new. 

69
00:03:46,360 --> 00:03:49,480
But it turns out that this is 
very has been very effective, 

70
00:03:49,520 --> 00:03:52,480
has been very successful. 
So as I mentioned, we, we've now

71
00:03:52,720 --> 00:03:57,520
since 22 and done five or six of
these groups with lots of new 

72
00:03:57,520 --> 00:04:00,800
and and young fresh talents that
are coming into Picnic where we 

73
00:04:00,800 --> 00:04:05,880
also see that this is something 
that's also reinvigorate teams 

74
00:04:06,000 --> 00:04:09,680
in the sense that a new and 
fresh perspective without the 

75
00:04:09,680 --> 00:04:13,000
burden, let's say, of a lot of 
experience can also bring a lot 

76
00:04:13,000 --> 00:04:15,080
of new energy to a team. 
Yeah, yeah. 

77
00:04:15,080 --> 00:04:18,160
I mean, it's really funny. 
I've lately talked about this 

78
00:04:18,160 --> 00:04:20,920
concept and I've heard that 
Booking does it kind of in a 

79
00:04:20,920 --> 00:04:23,120
similar fashion, but they do 
have a full training programme 

80
00:04:23,120 --> 00:04:24,720
before you actually enter a 
team. 

81
00:04:25,160 --> 00:04:27,080
Lots of kind of hackathon 
concepts there. 

82
00:04:27,320 --> 00:04:30,480
I talked about it with Director 
of engineering from IKEA 

83
00:04:30,480 --> 00:04:32,520
specifically. 
I don't know the insurance and 

84
00:04:32,520 --> 00:04:36,200
outs there, but they also start 
with cohorts with 10's and 

85
00:04:36,200 --> 00:04:38,920
dozens of engineers and you 
specifically mentioned they 

86
00:04:38,920 --> 00:04:40,520
immediately jump in. 
In a product team. 

87
00:04:40,520 --> 00:04:43,160
They still have to have ACS 
background or a more technical 

88
00:04:43,160 --> 00:04:45,400
background. 
What do you look for with people

89
00:04:45,400 --> 00:04:47,840
that actually join this program 
with regards to what they 

90
00:04:47,840 --> 00:04:52,160
already bring to the table? 
So what I mostly look for is 

91
00:04:52,160 --> 00:04:55,240
people who are really eager to 
learn. 

92
00:04:55,240 --> 00:04:59,000
And that sounds very trite, but 
you see a big difference in in 

93
00:04:59,000 --> 00:05:02,440
people who are just looking for 
maybe like a stable environment.

94
00:05:02,440 --> 00:05:06,320
I just want to do my stuff as I 
think the world works in the 

95
00:05:06,320 --> 00:05:09,080
software engineering, etcetera. 
For just the people who already 

96
00:05:09,080 --> 00:05:12,400
have maybe done some side 
projects during the university 

97
00:05:12,720 --> 00:05:16,360
who are very well versed in some
of the technologies where they 

98
00:05:16,360 --> 00:05:18,480
also try to explore this 
themselves. 

99
00:05:19,400 --> 00:05:22,360
And during interviews, you can 
see sort of the difference in 

100
00:05:22,360 --> 00:05:23,640
energy level between those 
people. 

101
00:05:24,120 --> 00:05:26,720
And that is, that's really what 
we're looking for. 

102
00:05:26,720 --> 00:05:30,800
So people who are eager to 
actually not be content with the

103
00:05:30,800 --> 00:05:34,400
status quo and to actually 
embrace the fact that they still

104
00:05:34,400 --> 00:05:37,720
have a lot to learn, even though
they had five years of CS 

105
00:05:37,720 --> 00:05:40,800
studies here behind them. 
So that's, that's, that's, 

106
00:05:40,840 --> 00:05:43,000
that's sort of what we're 
looking for in these groups. 

107
00:05:43,480 --> 00:05:47,320
And I would say this goes in 
general for people working at 

108
00:05:47,320 --> 00:05:49,720
Picnic that we are looking for 
this also this entrepreneur 

109
00:05:49,880 --> 00:05:54,520
neural spirits. 
So if you're in the product 

110
00:05:54,520 --> 00:05:59,000
team, regardless of, of what 
level you're at, we, we want to 

111
00:05:59,600 --> 00:06:03,680
have people who look around and 
say, Hey, why are we doing it 

112
00:06:03,680 --> 00:06:06,600
this way? 
What can we improve and, and not

113
00:06:06,600 --> 00:06:10,560
just wait, let's say, for the 
business to come up with, with 

114
00:06:10,560 --> 00:06:14,040
new features, new things, 
because that is how ultimately 

115
00:06:14,040 --> 00:06:18,760
as tech company you grow. 
It's not just by executing on a 

116
00:06:18,760 --> 00:06:22,880
backlog, but it's also by being 
very proactive as a team and, 

117
00:06:22,880 --> 00:06:25,680
and looking around and, and 
seeing, hey, how can we improve 

118
00:06:25,680 --> 00:06:27,560
the world around us for our 
users. 

119
00:06:28,720 --> 00:06:31,960
I feel like being eager and like
hungry for knowledge. 

120
00:06:33,200 --> 00:06:35,920
I have had that and I still have
that on certain topics, 

121
00:06:35,920 --> 00:06:39,440
especially early in Korea was is
very big and now it's, I think 

122
00:06:39,440 --> 00:06:42,200
it's similar, but it's very much
focused towards more specific 

123
00:06:42,200 --> 00:06:44,760
subjects because in the 
beginning I had no clue what I 

124
00:06:44,760 --> 00:06:47,120
what I wanted to focus on. 
But I don't know if that's a 

125
00:06:47,120 --> 00:06:49,760
skill that's just something 
that's in you or something that 

126
00:06:49,760 --> 00:06:54,120
people have or you don't have. 
I do want it though, because 

127
00:06:54,120 --> 00:06:56,360
I've had conversations also in 
an interview setting and then 

128
00:06:56,360 --> 00:06:58,920
someone would be like, this is a
really good opportunity for me, 

129
00:06:59,400 --> 00:07:01,680
but they could not show what 
they've already done and why 

130
00:07:01,680 --> 00:07:04,440
it's a really good fit for them.
They hadn't started yet. 

131
00:07:04,440 --> 00:07:06,600
They wanted the job 1st and then
they would start the work. 

132
00:07:06,880 --> 00:07:09,360
And I like that you highlight 
that the people that are really 

133
00:07:09,360 --> 00:07:12,320
eager, nothing stops them from 
already starting, right? 

134
00:07:12,320 --> 00:07:14,040
They don't have to have a job to
do what they like. 

135
00:07:14,040 --> 00:07:14,960
Exactly. 
Yeah. 

136
00:07:15,360 --> 00:07:20,760
And, and it also shows in in the
way they, they, they can do 

137
00:07:20,760 --> 00:07:21,920
themselves during interviews, 
right. 

138
00:07:21,920 --> 00:07:24,600
So do they ask questions to you,
right, that are interested in 

139
00:07:24,600 --> 00:07:27,000
your company, in your team, in, 
in what's happening there? 

140
00:07:27,000 --> 00:07:32,120
And that that already shows that
a lot of people during interview

141
00:07:32,120 --> 00:07:34,080
feel that they are being 
interviewed. 

142
00:07:34,080 --> 00:07:37,160
Well, that's of course that 
makes sense, that makes sense. 

143
00:07:37,160 --> 00:07:39,640
But at the same time, it's also 
the reverse, right? 

144
00:07:39,640 --> 00:07:43,080
So, and that's not just for 
early career people, but for 

145
00:07:43,080 --> 00:07:44,800
anyone you're also interviewing 
company. 

146
00:07:45,440 --> 00:07:49,640
If you can already at that point
make very clear that you're 

147
00:07:50,520 --> 00:07:52,800
someone who's interested in in 
what's going on and and 

148
00:07:52,880 --> 00:07:55,480
interested in what's your role. 
And that will be that already 

149
00:07:55,480 --> 00:07:59,200
also shows to me that's that 
you're you're you're someone who

150
00:07:59,200 --> 00:08:01,400
can grow very quickly and then 
pick up new things. 

151
00:08:01,480 --> 00:08:04,080
Yeah. 
For the people that join, what 

152
00:08:04,080 --> 00:08:07,320
explicitly do they get taught 
during that process? 

153
00:08:07,640 --> 00:08:11,360
So in the first couple of months
of of this program, it runs 

154
00:08:11,360 --> 00:08:17,360
roughly 5 months, they will join
3, let's say, very hard skill 

155
00:08:17,360 --> 00:08:21,400
courses around Java development.
So the first one is really about

156
00:08:22,160 --> 00:08:26,040
what we view at Picnic as a good
way of doing Java development 

157
00:08:26,040 --> 00:08:28,200
scheme coding, how we use 
certain patterns, etcetera. 

158
00:08:28,960 --> 00:08:31,760
So really beyond, let's say the 
basics, but really how, how do 

159
00:08:31,760 --> 00:08:35,039
we do this in, in a product 
context, in a picking context 

160
00:08:35,039 --> 00:08:40,200
specifically. 
And then they do a deep dive 

161
00:08:40,200 --> 00:08:44,520
into Spring Framework. 
And they're also, it's not 

162
00:08:44,520 --> 00:08:48,080
really about learning which 
annotations to use or, or what, 

163
00:08:48,120 --> 00:08:51,400
what do the API looks like, 
because some of them have 

164
00:08:51,400 --> 00:08:53,080
already seen that. 
And otherwise they will pick 

165
00:08:53,080 --> 00:08:55,080
those up relatively easily in, 
in a product team. 

166
00:08:55,640 --> 00:08:57,880
But we also want people to 
really understand the 

167
00:08:57,880 --> 00:08:59,440
technology. 
So how does it work? 

168
00:08:59,440 --> 00:09:01,560
Why is it there? 
What is the reason that's that 

169
00:09:01,560 --> 00:09:03,760
we're using such a framework? 
What does it bring to the table?

170
00:09:05,000 --> 00:09:08,160
And we also very much encourage 
people to, to, to do this deep 

171
00:09:08,160 --> 00:09:11,680
dive and to take that time, 
because ultimately what we want 

172
00:09:11,680 --> 00:09:15,040
to prevent is that we have very 
smart and eager people joining 

173
00:09:15,040 --> 00:09:20,080
A-Team and then only learn by 
copying and doing what they see 

174
00:09:20,080 --> 00:09:23,040
around them. 
Because that will work to up to 

175
00:09:23,040 --> 00:09:25,680
a point, of course. 
And, and it might feel good in 

176
00:09:25,680 --> 00:09:28,000
the beginning because you're 
productive and then you're 

177
00:09:28,000 --> 00:09:30,080
delivering features and you're 
delivering code. 

178
00:09:31,520 --> 00:09:34,440
But it will not create the 
engineers that, that architects 

179
00:09:34,480 --> 00:09:37,880
are future systems that really 
deeply know what the technology 

180
00:09:37,880 --> 00:09:41,200
is about, that really 
understands why something is 

181
00:09:41,200 --> 00:09:46,440
there rather than just using it.
And, and, and that is in this in

182
00:09:46,440 --> 00:09:49,320
spring course might sound very 
basic and some of the parts are 

183
00:09:49,320 --> 00:09:51,480
basic, right? 
So some of it is new just to 

184
00:09:51,480 --> 00:09:54,640
these people, but it's also 
really much, very much about 

185
00:09:55,240 --> 00:09:58,320
what is what is under the hood 
and why is it there and why does

186
00:09:58,320 --> 00:10:03,560
it function the way it does. 
And then we within Picnic also 

187
00:10:03,560 --> 00:10:05,680
make use of reactive 
programming. 

188
00:10:06,040 --> 00:10:10,320
And obviously, if you use Spring
Framework, there's also the 

189
00:10:10,320 --> 00:10:15,640
whole reactive part of that, 
which in and of itself is quite 

190
00:10:15,720 --> 00:10:19,320
an challenging topic even for 
more experienced engineers to 

191
00:10:19,320 --> 00:10:21,080
pick up. 
So we also very much focus on 

192
00:10:21,080 --> 00:10:24,400
that topic. 
And then for the, for the first 

193
00:10:24,400 --> 00:10:27,480
two courses that I mentioned, we
also organise what we call 

194
00:10:27,480 --> 00:10:31,440
reflection sessions. 
So in a way, if you're in a 

195
00:10:31,440 --> 00:10:35,400
course, you have an instructor, 
you do some exercises, you get 

196
00:10:35,400 --> 00:10:38,600
some learnings and contents. 
It's still very theoretic. 

197
00:10:39,240 --> 00:10:43,120
So we asked every participant to
also bring this back to your 

198
00:10:43,120 --> 00:10:45,800
team and, and think about, Hey, 
how are we applying this in the 

199
00:10:45,800 --> 00:10:48,320
current team context? 
Do we see any improvements? 

200
00:10:49,600 --> 00:10:52,200
What, what have I learned and 
how this translates into the 

201
00:10:52,200 --> 00:10:53,800
practice? 
And then they bring this back to

202
00:10:53,800 --> 00:10:56,360
the group and present that, 
which also helps them in their 

203
00:10:56,360 --> 00:10:58,440
presentation skills. 
And then learn how to craft a 

204
00:10:58,440 --> 00:11:02,240
story, how to actually show 
people what you've been 

205
00:11:02,240 --> 00:11:03,800
analysing, what you've been 
doing. 

206
00:11:04,400 --> 00:11:07,360
And these reflection sessions 
are super helpful to actually 

207
00:11:08,120 --> 00:11:11,240
again, bridge the divide between
theory and practice. 

208
00:11:12,520 --> 00:11:15,160
So these are very hard skilled 
Java oriented trainings that 

209
00:11:15,160 --> 00:11:19,560
they have. 
We also offer them some training

210
00:11:19,720 --> 00:11:22,720
around, let's say, more 
peripheral components in our 

211
00:11:22,720 --> 00:11:26,000
architecture. 
So there's a course that focuses

212
00:11:26,000 --> 00:11:29,360
on our use of MongoDB, of 
Postgres, and all of the sort of

213
00:11:29,640 --> 00:11:32,680
infrastructural components that 
you will need to succeed as an 

214
00:11:32,680 --> 00:11:35,040
engineer. 
So Docker, Kubernetes, anything 

215
00:11:35,040 --> 00:11:37,320
around operating and running the
products. 

216
00:11:37,760 --> 00:11:39,760
So it's a very broad kind of 
program. 

217
00:11:40,920 --> 00:11:43,560
But again, because they're part 
of a product team, they can 

218
00:11:43,560 --> 00:11:46,560
immediately next day see how 
this works in their contexts, 

219
00:11:46,560 --> 00:11:49,800
how it supplies, how our release
is done, how does our production

220
00:11:49,800 --> 00:11:56,040
system look like. 
And then in that way, you not 

221
00:11:56,040 --> 00:11:59,000
only gain the knowledge and, and
gain your understanding for 

222
00:11:59,000 --> 00:12:01,240
technology, but can also 
immediately apply and, and learn

223
00:12:01,240 --> 00:12:05,520
it in your, in your day-to-day. 
And yeah, that's sort of the mix

224
00:12:05,600 --> 00:12:09,000
that we offer and that's works 
for us pretty well. 

225
00:12:09,320 --> 00:12:12,120
I can see that. 
I really like the kind of 

226
00:12:12,120 --> 00:12:14,520
practical part of joining a 
product team and seeing and 

227
00:12:14,520 --> 00:12:17,880
feeling kind of what it is to be
in there because you are, it 

228
00:12:17,880 --> 00:12:20,320
makes a lot of sense. 
And then more on the theoretical

229
00:12:20,320 --> 00:12:24,720
side, really focusing on hard 
skills, I and when you mentioned

230
00:12:24,880 --> 00:12:27,360
you can copy and kind of do what
other people do, that hit the 

231
00:12:27,360 --> 00:12:29,200
nail on the head because that's 
exactly how I started. 

232
00:12:29,600 --> 00:12:31,080
And it feels good. 
It feels productive. 

233
00:12:31,080 --> 00:12:33,320
You feel like, OK, I can, I can 
actually do this. 

234
00:12:33,840 --> 00:12:36,800
And it really hit hard when I 
started a project where there 

235
00:12:36,800 --> 00:12:38,880
was nothing. 
Because when there are 

236
00:12:38,880 --> 00:12:42,360
conventions, it's easy to follow
the conventions and you have to 

237
00:12:42,360 --> 00:12:44,240
experiment and you have to 
innovate a little bit. 

238
00:12:44,640 --> 00:12:47,120
But really good conventions are 
there for a reason. 

239
00:12:47,120 --> 00:12:49,240
It makes people productive and 
they know how to follow the 

240
00:12:49,240 --> 00:12:51,200
conventions. 
When you're building up 

241
00:12:51,200 --> 00:12:53,720
conventions and you have to 
build up a solid foundation for 

242
00:12:53,720 --> 00:12:56,960
other people to build on top of 
a future you, but also a future 

243
00:12:56,960 --> 00:13:00,120
people you don't even know yet 
and a future team, let alone a 

244
00:13:00,120 --> 00:13:02,880
scholar of teams, That for me is
very challenging. 

245
00:13:03,120 --> 00:13:06,320
No, I fully agree. 
And and that's also why you 

246
00:13:06,320 --> 00:13:09,040
point out this pitfall at the 
very beginning of this program 

247
00:13:09,040 --> 00:13:12,800
to everyone who joins. 
We tell them very clearly, yes, 

248
00:13:12,800 --> 00:13:17,040
you will have sort of the urge 
or the inkling to just dive in 

249
00:13:17,280 --> 00:13:19,920
and, and and do the work and, 
and be useful and, and make sure

250
00:13:19,920 --> 00:13:21,920
that your values as part of the 
team. 

251
00:13:22,440 --> 00:13:26,960
But we're offering this pretty 
unique opportunity to also take 

252
00:13:26,960 --> 00:13:30,760
a step back and in the first 
months, take this time to, to 

253
00:13:30,760 --> 00:13:34,840
learn and to grow. 
And that is something that it's,

254
00:13:34,840 --> 00:13:37,720
it's a tricky balance of course,
for people to make, but we do 

255
00:13:37,720 --> 00:13:39,480
expect them to actually invest 
the time. 

256
00:13:39,520 --> 00:13:41,960
And and that's also where this 
this mentorship plays a big 

257
00:13:41,960 --> 00:13:45,000
role, of course, because a more 
experienced engineer will 

258
00:13:45,000 --> 00:13:48,320
actually also hold up the mirror
and say, OK, but but do you 

259
00:13:48,320 --> 00:13:51,680
actually understand what you do 
and then also dive maybe deeper 

260
00:13:51,680 --> 00:13:53,720
in aspects that they don't 
understand and that they're 

261
00:13:53,720 --> 00:13:56,760
maybe not covered by the by the 
technique program itself? 

262
00:13:56,880 --> 00:13:57,920
Yeah. 
Yeah. 

263
00:13:57,920 --> 00:14:02,120
For me, with regards to depth, I
also wonder how deep should I go

264
00:14:02,120 --> 00:14:05,160
with regards to getting a solid 
understanding when we talk about

265
00:14:05,680 --> 00:14:08,120
programming or or software 
engineering fundamentals. 

266
00:14:08,680 --> 00:14:10,600
What would you say really fit in
there? 

267
00:14:10,600 --> 00:14:14,080
What have you seen engineers do 
that are exceptional in your 

268
00:14:14,080 --> 00:14:17,000
view? 
So if I look at the picnic 

269
00:14:17,000 --> 00:14:21,040
contexts, a lot of what we do is
Java and JVM based. 

270
00:14:21,760 --> 00:14:25,320
So what sets apart the really 
good engineers from let's say 

271
00:14:25,320 --> 00:14:29,000
mediocre engineers is also some 
knowledge of what actually 

272
00:14:29,000 --> 00:14:32,200
happens under the hood, right? 
So do you know what what the JVM

273
00:14:32,200 --> 00:14:34,400
does? 
Do you know how to understand 

274
00:14:35,360 --> 00:14:38,560
garbage collection and the 
effect it has, how how to tune 

275
00:14:38,560 --> 00:14:41,200
it, how to operate a Java based 
system? 

276
00:14:41,880 --> 00:14:46,480
So beyond coding, I would say 
apps for this podcast also 

277
00:14:46,480 --> 00:14:49,520
understanding the ecosystem that
you're in and, and at a very 

278
00:14:49,520 --> 00:14:52,920
core level understands how 
things like performance, 

279
00:14:52,920 --> 00:14:57,320
security and all of the non 
functionals, excuse me, all of 

280
00:14:57,320 --> 00:15:00,480
the non functionals are affected
by by what you do as an 

281
00:15:00,480 --> 00:15:03,120
engineer. 
And and that is certainly not 

282
00:15:03,120 --> 00:15:05,400
something that you learn 
overnight, right? 

283
00:15:05,400 --> 00:15:09,120
So you make mistakes, you see 
other people making mistakes, 

284
00:15:09,120 --> 00:15:11,720
you learn from that. 
And that is invaluable as an 

285
00:15:11,720 --> 00:15:14,040
engineer to have that that kind 
of knowledge and experience 

286
00:15:14,040 --> 00:15:17,040
under your belts. 
From engineers I talked to, some

287
00:15:17,040 --> 00:15:20,720
people have that urge to really 
want to understand what goes on 

288
00:15:20,720 --> 00:15:23,560
under the hood and they will 
themselves, I think self educate

289
00:15:23,560 --> 00:15:26,520
and that is a continuous cycle 
of new technology. 

290
00:15:26,520 --> 00:15:28,760
How does it actually work? 
And I set it up from ground up, 

291
00:15:28,920 --> 00:15:31,240
from first principles. 
And then you have other 

292
00:15:31,240 --> 00:15:34,240
engineers and I think I fall 
into that category more. 

293
00:15:34,240 --> 00:15:37,560
It's like I can use these things
and I kind of have an 

294
00:15:37,560 --> 00:15:39,400
understanding of how it works 
under the hood, but I want to be

295
00:15:39,400 --> 00:15:41,240
effective. 
I want to execute, I want to 

296
00:15:41,240 --> 00:15:44,040
deliver value to customers. 
I'm more, I feel like user 

297
00:15:44,040 --> 00:15:48,280
facing and then I have this 
decision and it's it's the last 

298
00:15:48,280 --> 00:15:50,040
few years, but also the coming 
few years. 

299
00:15:50,040 --> 00:15:52,920
If I want to become a better 
engineer, I do have to find this

300
00:15:52,920 --> 00:15:55,760
inkling and go deeper to certain
aspects because I feel like 

301
00:15:56,040 --> 00:15:59,280
that's what's withholding me 
from actually growing on an 

302
00:15:59,280 --> 00:16:02,440
engineering side. 
No, I think there's certainly a 

303
00:16:02,640 --> 00:16:06,240
tension between you as an 
engineer being a problem solver,

304
00:16:06,240 --> 00:16:08,280
right? 
You want to deliver value, you 

305
00:16:08,280 --> 00:16:11,520
want to be effective for just 
being a very curiosity driven 

306
00:16:11,600 --> 00:16:15,400
kind of, you know, person eager 
to learn what the technology 

307
00:16:15,400 --> 00:16:17,680
actually is all about and what 
it does and why it works the way

308
00:16:17,680 --> 00:16:19,920
it does. 
So for sure that that that is 

309
00:16:19,920 --> 00:16:23,320
something I recognise. 
It might also be related to your

310
00:16:23,320 --> 00:16:25,480
stage of your career, as you, as
you pointed out, right. 

311
00:16:25,480 --> 00:16:30,160
So especially when you get 
started, it is easy to fall into

312
00:16:30,160 --> 00:16:33,680
a trap of, of wanting to be too 
productive and, and just copying

313
00:16:33,680 --> 00:16:35,640
behaviour around you without 
really understanding. 

314
00:16:35,640 --> 00:16:40,080
And, and I can certainly see 
that once you have sort of gone 

315
00:16:40,080 --> 00:16:43,360
through the motions of learning 
and technology very deeply once 

316
00:16:43,360 --> 00:16:46,320
or twice, then picking up 
another technology and using 

317
00:16:46,320 --> 00:16:49,520
that in a very effective manner 
comes pretty naturally and 

318
00:16:49,520 --> 00:16:53,960
doesn't take the same kind of 
level of, of, of depth that you,

319
00:16:54,120 --> 00:16:55,520
that you would otherwise have to
invest. 

320
00:16:56,080 --> 00:17:01,160
So as you grow, you probably 
will focus more let's say on, on

321
00:17:01,160 --> 00:17:03,760
the usage of your of your tech 
and not so much on the, the 

322
00:17:03,760 --> 00:17:06,000
under the hood stuff. 
Yeah, yeah. 

323
00:17:06,000 --> 00:17:07,280
Makes sense. 
Yeah. 

324
00:17:07,280 --> 00:17:09,880
Any other foundations or 
fundamentals you want to 

325
00:17:09,880 --> 00:17:13,680
highlight that distinguishes 
great engineers from not so 

326
00:17:13,680 --> 00:17:18,839
great ones? 
If I look at what is happening 

327
00:17:18,839 --> 00:17:24,000
in, in, in picnic context again,
what what really strikes me is 

328
00:17:24,000 --> 00:17:30,320
that our our engineering culture
is relatively uniform in the 

329
00:17:30,320 --> 00:17:32,480
sense that we started only 10 
years ago. 

330
00:17:32,800 --> 00:17:37,400
We have a very strong developer 
platform that was developed from

331
00:17:37,400 --> 00:17:41,880
the get go. 
And there what I see in some 

332
00:17:41,880 --> 00:17:46,800
other companies and other 
contexts is that there's a lot 

333
00:17:46,800 --> 00:17:51,600
of people trying to adopt new 
technology just for the sake of 

334
00:17:51,600 --> 00:17:54,560
it. 
And that is something that I 

335
00:17:54,720 --> 00:17:56,920
feel that a good engineer 
doesn't do right. 

336
00:17:56,920 --> 00:18:00,440
So if you adopt new technology, 
if you find out about a new 

337
00:18:00,440 --> 00:18:05,360
technology, you need to 
understand whether it's actually

338
00:18:05,360 --> 00:18:09,280
an improvement of what you have.
Make very clear also why that is

339
00:18:09,280 --> 00:18:13,240
the case and not just jump on 
any, any band work. 

340
00:18:13,240 --> 00:18:16,680
And, and that's something that I
feel that very good engineers 

341
00:18:16,760 --> 00:18:19,800
are good at, right? 
So they there's this sites, I'm 

342
00:18:19,800 --> 00:18:22,200
not sure if you know it, the 
boring technology dot COP. 

343
00:18:22,840 --> 00:18:24,440
I don't know it, but that sounds
very funny. 

344
00:18:24,440 --> 00:18:28,600
Yeah, yeah. 
Which sort of advocates for use 

345
00:18:28,600 --> 00:18:33,200
what works, use what is proven 
use and then use it in a very 

346
00:18:33,560 --> 00:18:36,840
effective way as you mentioned 
that that is I think what what 

347
00:18:36,840 --> 00:18:40,600
good engineers do and the 
surrounding between OK, but what

348
00:18:40,600 --> 00:18:43,080
new technology is that 
interesting to jump onto 

349
00:18:43,120 --> 00:18:44,680
etcetera. 
And that is super hard, of 

350
00:18:44,680 --> 00:18:48,800
course, and also maybe a bit 
more of an art than than a 

351
00:18:48,800 --> 00:18:52,000
science sometimes. 
But it's precisely that's kind 

352
00:18:52,000 --> 00:18:57,520
of gut feeling, I would say 
that's that that knowledge and 

353
00:18:57,520 --> 00:19:00,600
that wisdom that you have as a 
as a, as a Craftsman, as an 

354
00:19:00,600 --> 00:19:04,480
engineer, that sets you apart 
from people who, yeah, who don't

355
00:19:04,480 --> 00:19:07,480
have that taste or who don't 
have that knowledge to, to make 

356
00:19:07,480 --> 00:19:10,320
a good decision. 
And then sometimes you end up in

357
00:19:10,320 --> 00:19:14,000
situations where there's 
companies that are much smaller 

358
00:19:14,000 --> 00:19:18,120
than than the company I work at 
that have like dozens of 

359
00:19:18,120 --> 00:19:23,760
different technology stacks 
because, well, people decided 

360
00:19:23,760 --> 00:19:26,760
that in some kind of context, it
was better to use Rust or to use

361
00:19:26,760 --> 00:19:29,280
Go or to. 
And then you end up with this 

362
00:19:29,960 --> 00:19:33,040
fantastic collection of 
technologies that nobody really 

363
00:19:33,040 --> 00:19:35,120
knows how to manage anymore, 
really know how to, how to 

364
00:19:35,120 --> 00:19:37,840
operate anymore, really knows 
how to, how to bring this 

365
00:19:37,840 --> 00:19:41,520
together. 
And yeah, that's, I think one of

366
00:19:41,520 --> 00:19:43,680
the hallmarks to come back to 
your question of a good engineer

367
00:19:43,680 --> 00:19:47,880
is to actually also limit this 
and, and, and, and stick to, 

368
00:19:48,760 --> 00:19:50,240
yeah, proven things and what 
works. 

369
00:19:50,480 --> 00:19:54,080
Yeah. 
Do you feel like that problem of

370
00:19:54,400 --> 00:19:57,400
newer technologies or also 
engineers just from marketing 

371
00:19:57,400 --> 00:20:00,600
sense getting bombarded with 
tooling is a problem that's more

372
00:20:00,600 --> 00:20:02,040
recent? 
Because I feel like now 

373
00:20:02,040 --> 00:20:03,080
everything is about Gen. 
AI. 

374
00:20:03,080 --> 00:20:05,440
It's like the number one buzz on
the Internet. 

375
00:20:05,440 --> 00:20:07,280
Obviously. 
Is obviously is Gen. 

376
00:20:07,280 --> 00:20:10,560
AI, but also not just from a OK,
how do you get Gen. 

377
00:20:10,560 --> 00:20:13,920
AI features if that's already a 
good idea into production, but 

378
00:20:13,920 --> 00:20:15,720
everything with regards to 
developer tooling. 

379
00:20:15,920 --> 00:20:18,320
It's a huge market. 
Lots of companies are trying to 

380
00:20:18,320 --> 00:20:21,960
solve this problem with regards 
to productivity and tooling, so 

381
00:20:21,960 --> 00:20:24,040
I feel like I am getting 
bombarded. 

382
00:20:25,240 --> 00:20:27,840
For sure and I mean there's, 
there's so many new things to 

383
00:20:27,840 --> 00:20:30,560
try out, right. 
So Cursor, Windsor, Windsurf, 

384
00:20:30,560 --> 00:20:35,280
all the, all these kind of tools
and, and they're sure it's good 

385
00:20:35,280 --> 00:20:38,840
to experiment, right. 
But at the same time, we also 

386
00:20:38,840 --> 00:20:43,600
need to be mindful that, yeah, 
we, we should do what works and 

387
00:20:43,600 --> 00:20:47,040
not so much we should, we should
not only focus on what seems 

388
00:20:47,040 --> 00:20:49,760
shiny and new and, and 
interesting in a sense. 

389
00:20:49,760 --> 00:20:53,080
Yeah, yeah. 
One of the things I I love, and 

390
00:20:53,080 --> 00:20:56,240
this is also what what gives me 
a lot of feeling our fulfilment 

391
00:20:56,240 --> 00:20:59,160
rather as an engineer is the 
feeling of also being productive

392
00:20:59,160 --> 00:21:03,640
in the way I am productive. 
So in everything from creating a

393
00:21:03,640 --> 00:21:06,360
pull request to tooling to 
figuring out my IDE and 

394
00:21:06,360 --> 00:21:09,240
everything on the terminal, I 
like to be very efficient and 

395
00:21:09,240 --> 00:21:11,520
effective in all of that. 
Everything hands on. 

396
00:21:12,240 --> 00:21:15,320
And especially now that there's 
a lot of change and a lot of 

397
00:21:15,320 --> 00:21:18,640
experimentation going into 
tooling, I'm more hesitant to 

398
00:21:18,680 --> 00:21:22,840
experiment and adopt because I 
am confident with the tool set 

399
00:21:22,840 --> 00:21:24,200
that I have. 
You have something that works 

400
00:21:24,200 --> 00:21:25,560
for you. 
Yeah, yeah, yeah. 

401
00:21:25,720 --> 00:21:29,760
But then when you have a 
platform of 350 engineers, if 

402
00:21:29,760 --> 00:21:32,360
there's something that can make 
them a few percentages more 

403
00:21:32,360 --> 00:21:35,800
effective or efficient, that's 
going to pay dividends for sure.

404
00:21:35,840 --> 00:21:37,440
Yeah. 
How do you choose or how do you 

405
00:21:37,440 --> 00:21:39,480
experiment with regards to 
things that help developer 

406
00:21:39,480 --> 00:21:42,320
productivity? 
So there's a, there's a few 

407
00:21:42,320 --> 00:21:45,320
things that we do there. 
On the one hand, as I mentioned,

408
00:21:45,320 --> 00:21:46,640
we have a developer platform 
team. 

409
00:21:47,440 --> 00:21:52,640
So in a sense, when and, and 
this can be a new tool or new, 

410
00:21:52,760 --> 00:21:56,040
new library or when, when 
something comes up where we feel

411
00:21:56,040 --> 00:22:00,200
that this is going to help all 
of our product teams, we can in 

412
00:22:00,200 --> 00:22:03,320
a very centralised manner, 
experiment with this in the 

413
00:22:03,320 --> 00:22:06,720
developer platform, make sure 
that it's working in the context

414
00:22:06,720 --> 00:22:09,560
of everything that we do and 
then roll this out in a 

415
00:22:09,560 --> 00:22:13,480
controlled manner. 
So let's say we have Java 25 

416
00:22:13,880 --> 00:22:15,840
coming up, for example, just 
released. 

417
00:22:16,880 --> 00:22:20,280
Rather than having every product
team figure out when to upgrade,

418
00:22:20,320 --> 00:22:23,360
how to upgrade, what, what the 
effect is on their tooling, 

419
00:22:23,360 --> 00:22:27,960
etcetera, we do this in a single
place at a single moment and 

420
00:22:27,960 --> 00:22:30,880
then help the rest of the teams 
be very productive with this new

421
00:22:30,880 --> 00:22:33,640
technology. 
So that's one example, but of 

422
00:22:33,640 --> 00:22:34,880
course it goes beyond tools, 
right? 

423
00:22:34,880 --> 00:22:37,600
So tech is not just about tools,
it's also about people, about 

424
00:22:37,600 --> 00:22:39,920
process. 
So if you look more 

425
00:22:39,920 --> 00:22:43,840
holistically, let's say they add
at our developer experience, 

426
00:22:45,120 --> 00:22:49,080
what we want to achieve there is
that we actually enable teams to

427
00:22:49,080 --> 00:22:53,800
continuously improve themselves 
and this doesn't start all by 

428
00:22:53,800 --> 00:22:57,680
itself magically. 
So I also mentioned in my scope,

429
00:22:57,680 --> 00:23:01,880
we also have some developer 
experience coaches that we that 

430
00:23:01,880 --> 00:23:03,840
we have and that we use 
throughout the company. 

431
00:23:04,680 --> 00:23:08,200
And these coaches really help 
teams to uncover their biggest 

432
00:23:08,200 --> 00:23:10,400
bottlenecks. 
So this can be through 

433
00:23:10,400 --> 00:23:14,360
workshops, but it can also be by
looking at some metrics and, and

434
00:23:14,360 --> 00:23:18,280
analysing that just really 
clearly helping teams to 

435
00:23:18,280 --> 00:23:21,800
identify, hey, what is the next 
step I can do to indeed get a 

436
00:23:21,800 --> 00:23:27,080
few percent more out of my 
process, Maybe have more stable 

437
00:23:27,080 --> 00:23:33,080
operations, Maybe look at the 
way we, we deliver to, to 

438
00:23:33,080 --> 00:23:34,720
production, How can we optimize 
that? 

439
00:23:35,640 --> 00:23:39,000
And that's something where we 
want to encourage teams to 

440
00:23:39,560 --> 00:23:43,040
ultimately get into the cycle 
themselves, but help them with, 

441
00:23:43,600 --> 00:23:48,560
with, with support from coaching
support on the metrics side. 

442
00:23:48,560 --> 00:23:52,720
So given the insights in what is
happening in the team and also 

443
00:23:52,720 --> 00:23:58,440
on the on the process side, help
them to understand that by maybe

444
00:23:58,680 --> 00:24:03,560
introducing a few more steps 
into their refinements or doing 

445
00:24:03,560 --> 00:24:06,480
something more on the retro 
sides that they can actually 

446
00:24:06,600 --> 00:24:09,040
increase the effectiveness of 
their team. 

447
00:24:09,040 --> 00:24:12,920
So that is something that's we 
we do with coaching, but also 

448
00:24:12,920 --> 00:24:15,560
with with processing tooling 
supports from this developer 

449
00:24:15,560 --> 00:24:19,240
experience initiative. 
Yeah, for me, it's funny that 

450
00:24:19,240 --> 00:24:21,560
you mentioned specifically 
developer experience because 

451
00:24:22,360 --> 00:24:24,240
when we're talking about hard 
skills and what makes a good 

452
00:24:24,240 --> 00:24:26,600
software engineer and 
understanding kind of the 

453
00:24:26,600 --> 00:24:30,480
foundation and things with 
regards to under the hood first 

454
00:24:30,480 --> 00:24:32,720
principles. 
I feel like everyone that helps 

455
00:24:32,720 --> 00:24:35,320
with regards to process, if 
that's a developer, experienced 

456
00:24:35,320 --> 00:24:38,480
person, a coach, a mentor, a 
facilitator, and also scrum 

457
00:24:38,480 --> 00:24:42,080
master, if they don't understand
everything under the hood with 

458
00:24:42,080 --> 00:24:44,560
regards to that process or the 
intricacies of working together 

459
00:24:44,560 --> 00:24:47,960
and collaborating more of the 
soft skill side, then it stays 

460
00:24:47,960 --> 00:24:51,280
surface level and surface level 
with the rest of process from is

461
00:24:51,280 --> 00:24:55,240
never good people and specific 
specifically engineers, they're 

462
00:24:55,240 --> 00:24:57,960
skeptical. 
I think by nature they might be 

463
00:24:57,960 --> 00:25:00,960
stubborn and if things don't 
work and are in the spiral of 

464
00:25:01,120 --> 00:25:04,000
continuously not working, they 
will get jaded with regards to 

465
00:25:04,000 --> 00:25:06,200
change and process change and 
anything there. 

466
00:25:06,640 --> 00:25:10,840
So especially this with the rest
of process and facilitation, I 

467
00:25:10,840 --> 00:25:12,400
feel like needs to be done very 
well. 

468
00:25:13,000 --> 00:25:15,520
Have you experimented with the 
rest of what works well for your

469
00:25:15,520 --> 00:25:17,520
context? 
Is it is it very data-driven or 

470
00:25:17,520 --> 00:25:22,280
is it more quality focused? 
It's a, it's a combination of 

471
00:25:22,280 --> 00:25:26,920
both. 
The people probably know about 

472
00:25:26,920 --> 00:25:29,760
the Dora metrics, right? 
So that is something that a lot 

473
00:25:29,760 --> 00:25:32,240
of companies use to actually 
look at, hey, what is happening 

474
00:25:32,240 --> 00:25:35,160
in team. 
So change failure rates, lead 

475
00:25:35,160 --> 00:25:36,760
time to change these kind of 
things. 

476
00:25:37,760 --> 00:25:40,760
But what most people don't know 
is that Dora also has a 

477
00:25:40,760 --> 00:25:45,040
capability framework and these 
capabilities, some of them do 

478
00:25:45,040 --> 00:25:47,680
also have metrics and are more 
quantitative, but some of them 

479
00:25:47,680 --> 00:25:51,480
are also very qualitative. 
And so they divide these Dora 

480
00:25:51,480 --> 00:25:53,520
capabilities into three major 
areas. 

481
00:25:54,480 --> 00:25:59,600
One of them is learning culture.
The other is fast flow and fast 

482
00:25:59,600 --> 00:26:02,680
feedback. 
And especially if you talk about

483
00:26:02,680 --> 00:26:05,920
fast flow, you talk about 
optimising your team processes. 

484
00:26:05,920 --> 00:26:08,600
There's certainly quite a few 
metrics that you can, can look 

485
00:26:08,600 --> 00:26:10,840
at your PR cycle times and 
things like that. 

486
00:26:11,320 --> 00:26:13,800
But if you talk about learning 
culture, this is very hard to 

487
00:26:13,800 --> 00:26:15,880
measure and, and as it should 
be, right? 

488
00:26:15,880 --> 00:26:17,320
So not everything is 
data-driven. 

489
00:26:17,320 --> 00:26:20,040
At the same time, we do want to 
enable. 

490
00:26:20,040 --> 00:26:23,480
There are also people to think 
about, Hey, what, what is, for 

491
00:26:23,480 --> 00:26:25,760
example, one of the capabilities
there documentation quality. 

492
00:26:26,360 --> 00:26:29,560
What do I do in my team? 
Is that something that is 

493
00:26:29,560 --> 00:26:33,200
effective or not? 
You don't find that out by by 

494
00:26:33,200 --> 00:26:35,560
looking at metrics, by talking 
to people and to really 

495
00:26:35,560 --> 00:26:39,160
understanding, hey, do we have 
enough here in place? 

496
00:26:39,240 --> 00:26:43,240
For example, onboarding, if you 
have a new team member, do they 

497
00:26:43,240 --> 00:26:47,280
have enough to go on by what you
have in your in your confluence 

498
00:26:47,280 --> 00:26:50,320
or in your developer portal? 
Or is it very much still in the 

499
00:26:50,320 --> 00:26:52,520
hands of people and, and, and 
hard for them to get out? 

500
00:26:53,280 --> 00:26:56,200
That is something that you that 
you can find out by by talking 

501
00:26:56,200 --> 00:27:00,840
to the team and, and, and 
helping out to set that up as a 

502
00:27:00,840 --> 00:27:01,920
second step. 
Yeah. 

503
00:27:02,480 --> 00:27:06,440
Yeah, I like that a lot. 
I feel like developer happiness 

504
00:27:06,600 --> 00:27:10,640
as a metric is something that is
very hard to do. 

505
00:27:10,920 --> 00:27:13,320
But when you're talking about a 
solid process for onboarding 

506
00:27:13,320 --> 00:27:16,120
people, having this feeling of 
understanding, and there's a 

507
00:27:16,120 --> 00:27:18,640
culture of learning and 
entrepreneurship and people are 

508
00:27:18,640 --> 00:27:21,880
all effective in what they do, I
can definitely see people being 

509
00:27:21,880 --> 00:27:24,760
happy within that team and 
within that organization 

510
00:27:24,760 --> 00:27:27,240
specifically. 
How do you accommodate for 

511
00:27:27,240 --> 00:27:29,400
developer happiness? 
Is it just by providing all of 

512
00:27:29,400 --> 00:27:32,680
this and then seeing what blooms
or how consciously are you 

513
00:27:32,680 --> 00:27:36,480
working towards that? 
That has everything to do with 

514
00:27:36,480 --> 00:27:38,440
with finding and removing these 
bottlenecks, right? 

515
00:27:38,440 --> 00:27:43,880
So nobody likes, likes A-Team 
where there's very clearly a 

516
00:27:43,880 --> 00:27:46,600
bottleneck in, in some part of 
the process or something part of

517
00:27:46,600 --> 00:27:48,920
the tooling. 
So we also run the developer 

518
00:27:48,920 --> 00:27:53,080
survey, for example, a few times
a year to, to uncover in a more 

519
00:27:53,400 --> 00:27:55,240
wide manner in these kind of 
things. 

520
00:27:56,000 --> 00:27:58,360
Our developer experienced 
coaches who work with teams also

521
00:27:58,360 --> 00:28:00,600
bring us back to, to our 
developer platform. 

522
00:28:00,640 --> 00:28:04,960
Hey, we noticed that for 
example, people have a hard time

523
00:28:04,960 --> 00:28:08,760
finding out where APR 
documentation for certain 

524
00:28:08,760 --> 00:28:12,160
services that that is a signal 
that we can pick up and that we 

525
00:28:12,160 --> 00:28:14,800
can that we can fix on the 
tooling side and then bring back

526
00:28:14,800 --> 00:28:18,440
again to the teams. 
So this this very much is about 

527
00:28:18,440 --> 00:28:21,920
identifying bottlenecks and 
taking them away step by step 

528
00:28:22,040 --> 00:28:23,720
and and also taking feedback 
seriously. 

529
00:28:24,840 --> 00:28:26,920
Yeah, I was going to. 
I was going to ask for me. 

530
00:28:27,000 --> 00:28:31,200
What I've seen is that gathering
feedback, some people are have a

531
00:28:31,200 --> 00:28:33,360
hard time doing that, but I 
think in essence, it's quite 

532
00:28:33,360 --> 00:28:35,000
simple, right? 
You can talk to people, you can 

533
00:28:35,000 --> 00:28:38,440
get surveys, you can do a team 
day and then have a brainstorm. 

534
00:28:38,760 --> 00:28:41,800
For me, the most important part,
the most crucial part is what 

535
00:28:41,800 --> 00:28:45,240
you do from that feedback, how 
you take it with you and how you

536
00:28:45,240 --> 00:28:48,000
implement it. 
Especially if this is in a in a 

537
00:28:48,000 --> 00:28:49,720
cycled manner. 
If feedback doesn't get 

538
00:28:49,720 --> 00:28:52,040
implemented, then people will 
question why they give feedback 

539
00:28:52,040 --> 00:28:53,960
at all. 
Exactly nothing is worse than 

540
00:28:53,960 --> 00:28:56,920
being asked to fill out another 
survey where you don't know what

541
00:28:56,920 --> 00:28:59,040
what's going to happen with the 
results where it will end up. 

542
00:28:59,840 --> 00:29:03,720
So part of of the responsibility
of my domain is to bring clarity

543
00:29:03,720 --> 00:29:05,760
to that, right. 
So not just gathering the data, 

544
00:29:05,760 --> 00:29:10,000
but also showing, hey, these are
some of the things that are are 

545
00:29:10,160 --> 00:29:13,640
across the tech team, a big 
topic, major theme and that is 

546
00:29:13,640 --> 00:29:15,880
also what we're going to focus 
on them in next quarter, for 

547
00:29:15,880 --> 00:29:17,640
example. 
So to really communicate that, 

548
00:29:18,680 --> 00:29:22,040
it's also super important to get
people on board for. 

549
00:29:22,240 --> 00:29:23,720
Sure. 
Yeah, I love that. 

550
00:29:24,520 --> 00:29:27,680
Back to software engineering 
fundamentals we covered going 

551
00:29:27,680 --> 00:29:29,680
under the hood, really 
understanding things from our 

552
00:29:29,680 --> 00:29:31,280
first principles way of 
thinking. 

553
00:29:31,760 --> 00:29:34,480
Also figuring out what tooling 
is effective and not just 

554
00:29:34,480 --> 00:29:37,960
jumping on something that's new 
from a bandwagon perspective or 

555
00:29:37,960 --> 00:29:41,160
from a marketing perspective. 
What else is there with the rest

556
00:29:41,160 --> 00:29:47,120
of building solid fundamentals? 
The other thing that I very much

557
00:29:47,120 --> 00:29:48,920
encourage people who've gone 
through this tech Academy 

558
00:29:48,920 --> 00:29:51,800
program to focus on after 
they've had these, these more, 

559
00:29:51,800 --> 00:29:56,360
let's say, technological 
fundamentals on the belt is to 

560
00:29:56,360 --> 00:30:00,400
really understand the context 
that you're in and to be able to

561
00:30:00,400 --> 00:30:02,520
be an effective product 
engineer, right? 

562
00:30:02,520 --> 00:30:06,680
So in the end, code is a tool. 
We're here to solve problems. 

563
00:30:07,920 --> 00:30:12,240
Are you able to independently 
look at a problem, break it 

564
00:30:12,240 --> 00:30:16,120
down, make sure that there's a 
sort of a design around this 

565
00:30:16,120 --> 00:30:18,800
that is validated. 
So the whole process of, of 

566
00:30:18,800 --> 00:30:24,360
bringing an idea into into a 
code base that is also very 

567
00:30:24,360 --> 00:30:26,000
important. 
And, and a lot of this is taken 

568
00:30:26,000 --> 00:30:27,440
away when you just start out, 
right? 

569
00:30:27,440 --> 00:30:30,160
So there's more senior people 
who look at this and they will 

570
00:30:30,160 --> 00:30:32,720
create tickets for you and then 
maybe write design documents, 

571
00:30:32,720 --> 00:30:35,440
etcetera. 
But making this step from from 

572
00:30:35,440 --> 00:30:38,840
coding to actually thinking like
an actual problem solver to 

573
00:30:38,840 --> 00:30:43,240
really end to end be able to to 
look at something and and 

574
00:30:43,400 --> 00:30:47,000
realise it. 
I think that is that is not a 

575
00:30:47,000 --> 00:30:51,000
major step that you need to make
in your in your development as a

576
00:30:51,200 --> 00:30:54,440
yeah, as a software engineer. 
Yeah, product engineer, I feel 

577
00:30:54,440 --> 00:30:57,240
like it's a term that's more and
more now out on the market, 

578
00:30:57,240 --> 00:31:00,000
especially with tooling where 
you have to think a little bit 

579
00:31:00,000 --> 00:31:02,160
less about the technical side. 
You have some magic and it 

580
00:31:02,160 --> 00:31:04,680
generates stuff. 
Product engineers is what I've 

581
00:31:04,680 --> 00:31:09,120
seen grow as a role. 
Specifically, is that what for 

582
00:31:09,120 --> 00:31:10,920
you? 
Is a product engineer someone 

583
00:31:10,920 --> 00:31:14,640
that can think end to end with 
regards to problem solving also 

584
00:31:14,640 --> 00:31:16,240
from business sense? 
Exactly. 

585
00:31:16,360 --> 00:31:20,680
And I would also add to that, 
see the long term impacts of the

586
00:31:20,680 --> 00:31:22,200
things that you're coming up 
with, right. 

587
00:31:23,400 --> 00:31:29,080
It's easy to hack something in, 
but it's very hard to design A 

588
00:31:29,080 --> 00:31:32,040
feature in a way that's future 
proof, but that's also operable,

589
00:31:32,040 --> 00:31:33,720
right. 
So it doesn't cause instability.

590
00:31:34,000 --> 00:31:38,360
All these kind of things that 
are not obvious when you look at

591
00:31:38,720 --> 00:31:42,440
at the user story, let's say 
that's, that's also for me what 

592
00:31:42,440 --> 00:31:44,800
a product engineer entails. 
Yeah, yeah. 

593
00:31:44,800 --> 00:31:47,440
Gotcha. 
Where do soft skills play into 

594
00:31:47,440 --> 00:31:49,720
this part? 
You mentioned the curriculum, it

595
00:31:49,720 --> 00:31:52,800
has a soft skills part, but for 
example, if I draw a comparison 

596
00:31:52,800 --> 00:31:55,800
to booking, their training was 
very much tailored towards the 

597
00:31:55,800 --> 00:31:58,920
more soft skills side, which I 
thought was was interesting. 

598
00:31:59,200 --> 00:32:03,240
I like that you focus on 1st 
principles and fundamentals and 

599
00:32:03,240 --> 00:32:05,800
also you specifically look 
towards people that have already

600
00:32:05,800 --> 00:32:08,120
done something with the arts 
side projects or actually have a

601
00:32:08,120 --> 00:32:10,640
degree, CS degree that come on 
board. 

602
00:32:11,040 --> 00:32:14,600
I think that is also what allows
you to focus on very, very early

603
00:32:14,600 --> 00:32:18,200
in career, 0 to one year of 
experience instead of what we or

604
00:32:18,200 --> 00:32:21,120
what I've seen where people look
into kind of two to three years.

605
00:32:21,120 --> 00:32:24,080
So you can still kind of steer, 
but where do soft skills play a 

606
00:32:24,080 --> 00:32:25,600
part in this from your 
perspective? 

607
00:32:26,520 --> 00:32:30,320
So soft skills obviously very 
important as an engineer and the

608
00:32:30,320 --> 00:32:34,080
more you grow as an engineer, 
the more you are also exposed to

609
00:32:34,080 --> 00:32:38,080
other stakeholders, talking to 
to people who may not have the 

610
00:32:38,080 --> 00:32:41,680
same background as you, as it is
also part of what we what we 

611
00:32:41,680 --> 00:32:46,480
offer. 
We at the same time also don't 

612
00:32:46,480 --> 00:32:49,240
want to make too hard of a 
distinction between soft skills 

613
00:32:49,240 --> 00:32:52,040
and hard skills. 
In the end, even if you're in, 

614
00:32:52,120 --> 00:32:55,040
in a course learning about Java,
you're still interacting with 

615
00:32:55,040 --> 00:32:56,880
each other there and 
understanding each other and 

616
00:32:56,880 --> 00:32:59,440
trying to see, hey, why are we 
doing this? 

617
00:32:59,440 --> 00:33:02,320
And then we, we do encourage 
these kind of configurations, 

618
00:33:02,320 --> 00:33:05,240
not just in the soft skills 
trading, but also on the hard 

619
00:33:05,240 --> 00:33:09,320
skills side and also encourage 
people to ask question hard 

620
00:33:09,320 --> 00:33:12,040
questions, right? 
So we're doing this. 

621
00:33:13,240 --> 00:33:16,240
What does this, what does this 
mean in in my team context? 

622
00:33:16,240 --> 00:33:18,120
What does this mean for my 
future? 

623
00:33:18,640 --> 00:33:21,480
These are all conversations that
are related to the technology, 

624
00:33:21,720 --> 00:33:24,360
but maybe in themselves not very
technological. 

625
00:33:24,360 --> 00:33:28,480
So yes, we do offer specific 
training also on the soft skills

626
00:33:28,480 --> 00:33:31,760
side, but I'm, I'm a bit 
hesitant in making this super 

627
00:33:31,760 --> 00:33:35,120
hard separation. 
And again, also the the whole 

628
00:33:35,120 --> 00:33:37,840
mentoring aspect, for example, 
this disconnection between 

629
00:33:37,840 --> 00:33:41,960
people taking time together to 
to talk about not just 

630
00:33:41,960 --> 00:33:45,320
technology, but also what does 
it mean to to have a career as a

631
00:33:45,320 --> 00:33:48,240
software developer? 
What's, what are some of the 

632
00:33:48,240 --> 00:33:50,040
future directions that you can 
grow into? 

633
00:33:50,160 --> 00:33:54,040
All these kind of conversations 
are also very important to, to 

634
00:33:54,040 --> 00:33:57,160
open up and to also have, have a
meaningful connection in the 

635
00:33:57,160 --> 00:33:58,120
workplace. 
Yeah. 

636
00:33:58,840 --> 00:34:02,240
I'm very curious to hear your 
perspective on self study 

637
00:34:02,280 --> 00:34:04,480
because I've seen in the comment
section and I know people 

638
00:34:04,480 --> 00:34:08,199
listening, they might not have a
career yet as a software 

639
00:34:08,199 --> 00:34:09,600
engineer. 
They might be doing something 

640
00:34:09,600 --> 00:34:11,639
else. 
So they might be in education, 

641
00:34:11,639 --> 00:34:13,600
but especially people that don't
come from a traditional 

642
00:34:13,600 --> 00:34:15,960
background. 
I saw a comment lately and that 

643
00:34:15,960 --> 00:34:17,840
was like I'm a taxi driver now 
but I'm learning web 

644
00:34:17,840 --> 00:34:20,159
development. 
What would your advice for your 

645
00:34:20,159 --> 00:34:22,920
kind of from a road map 
perspective, what would be the 

646
00:34:22,920 --> 00:34:25,960
start and how does that progress
into them actually getting that 

647
00:34:26,080 --> 00:34:30,000
role? 
Obviously it really depends on 

648
00:34:30,000 --> 00:34:32,040
sort of the, the area of tech 
that you want to get into. 

649
00:34:32,040 --> 00:34:36,480
But in general, I would say 
whatever you do, start building 

650
00:34:36,480 --> 00:34:40,040
stuff from the start. 
So nowadays, of course with 

651
00:34:40,040 --> 00:34:43,080
chat, GPD and all kinds of other
tools, it becomes even easier. 

652
00:34:44,040 --> 00:34:47,520
But the trap that a lot of 
people fall into is that they 

653
00:34:47,520 --> 00:34:51,880
watched like 30 hours of YouTube
tutorials and think they, they 

654
00:34:51,880 --> 00:34:55,840
made, made a, made a good step, 
but haven't opened an, I haven't

655
00:34:55,840 --> 00:34:58,960
opened an IDE or didn't write or
try anything at all. 

656
00:34:59,400 --> 00:35:02,120
I think that is in the end, 
trial and error. 

657
00:35:02,120 --> 00:35:04,280
Just just make sure that you, 
you build stuff. 

658
00:35:05,040 --> 00:35:06,760
That is the most important part.
I would say. 

659
00:35:08,120 --> 00:35:11,840
Obviously there is need for 
people to also engage with, with

660
00:35:11,840 --> 00:35:14,640
content, right? 
So I'm, I'm myself also, I'm an 

661
00:35:14,640 --> 00:35:15,920
author of Pluralside, for 
example. 

662
00:35:15,920 --> 00:35:18,720
So I'm, I'm quite close to this 
and I get a lot of messages from

663
00:35:18,720 --> 00:35:22,920
people who, who are on such a 
platform that, that get a lot of

664
00:35:22,920 --> 00:35:26,240
benefits out of this. 
But you only learn if you also 

665
00:35:26,240 --> 00:35:28,120
start doing. 
I love that. 

666
00:35:28,560 --> 00:35:32,160
What is your perspective on AI 
tooling in this building frame? 

667
00:35:32,160 --> 00:35:34,840
Because if you're looking 
towards end goals, if my end 

668
00:35:34,840 --> 00:35:37,400
goal is to build a product or an
e-commerce website, I can, I can

669
00:35:37,400 --> 00:35:40,640
generate a lot of that stuff, 
but would I then learn how to 

670
00:35:40,640 --> 00:35:43,080
actually do that? 
No, I would achieve my goal in a

671
00:35:43,080 --> 00:35:45,800
different manner. 
Would people from your 

672
00:35:45,800 --> 00:35:47,560
perspective that Start learning 
now? 

673
00:35:47,560 --> 00:35:50,640
Should they leverage AI tooling 
or how can they use it to learn 

674
00:35:50,640 --> 00:35:53,040
effectively? 
That's a great question. 

675
00:35:53,040 --> 00:35:58,360
And we're still finding that as 
I think, yeah, so, so my take is

676
00:36:00,200 --> 00:36:04,280
yes, you can use it to to set up
a lot of things for you. 

677
00:36:04,480 --> 00:36:09,280
I would more use it as a tool 
for validation rather than 

678
00:36:09,280 --> 00:36:11,440
something for for you to 
generate things. 

679
00:36:11,440 --> 00:36:15,520
Right. 
So if you are not able to 

680
00:36:15,560 --> 00:36:18,680
actually explain what comes out 
of this model and, and if you 

681
00:36:18,680 --> 00:36:22,200
are not able to understand why 
the code is there, then you will

682
00:36:22,200 --> 00:36:25,520
have a very rough problem also 
maintaining that and extending 

683
00:36:25,520 --> 00:36:27,360
that. 
And of course then you can say, 

684
00:36:27,360 --> 00:36:30,600
OK, well then I have some 
agents, AI agents do that for 

685
00:36:30,600 --> 00:36:33,160
me. 
But ultimately there, there's, 

686
00:36:33,280 --> 00:36:35,480
there will be a gap of 
understanding where the model 

687
00:36:35,480 --> 00:36:38,360
trips up and, and you are not 
able to get it, catch it. 

688
00:36:39,560 --> 00:36:44,600
So use, use AI models to 
validate your understanding, try

689
00:36:44,600 --> 00:36:48,360
to generate maybe a few things 
and see, do I actually 

690
00:36:48,440 --> 00:36:51,200
understand what's happening here
and not ask the model right that

691
00:36:51,200 --> 00:36:55,640
that's great. 
But don't focus on on getting a 

692
00:36:55,640 --> 00:36:58,240
polished product out of it and 
then getting sort of the, the, 

693
00:36:59,320 --> 00:37:03,880
the, yeah, the products there. 
In the end, it's it's really a 

694
00:37:03,880 --> 00:37:07,160
tool that you can use, 
especially if you're like taxi 

695
00:37:07,160 --> 00:37:09,280
driver who's who's going to 
learn coding. 

696
00:37:09,680 --> 00:37:12,320
It's a tool that you can use to,
to build your knowledge. 

697
00:37:12,800 --> 00:37:15,520
You can also use very much to 
cheat, of course, and to just 

698
00:37:15,520 --> 00:37:18,000
sidestep all of this hard work 
of, of trying to understand 

699
00:37:18,000 --> 00:37:20,480
this. 
But I don't think that will in 

700
00:37:20,480 --> 00:37:22,840
the long run help you. 
Yeah, in the end, it's a lot 

701
00:37:22,840 --> 00:37:24,240
about discipline. 
Indeed. 

702
00:37:24,400 --> 00:37:26,720
Yeah, I feel like I've 
experimented with Cloud code and

703
00:37:26,720 --> 00:37:29,560
it has a learning mode, so I can
generate whatever you're trying 

704
00:37:29,560 --> 00:37:31,320
to do from a prompt perspective 
and it'll stop. 

705
00:37:31,320 --> 00:37:33,320
And I'll say you have to do this
part. 

706
00:37:33,600 --> 00:37:35,560
That was great. 
And I haven't, I haven't done it

707
00:37:35,560 --> 00:37:38,160
a lot, but the fact that it's 
there and they're experimenting 

708
00:37:38,160 --> 00:37:41,520
with not just generating but 
also facilitating learning, I 

709
00:37:41,520 --> 00:37:43,280
think that's fantastic. 
I didn't know that, and that 

710
00:37:43,280 --> 00:37:46,120
that sounds like indeed exactly 
something that you would want to

711
00:37:46,120 --> 00:37:48,760
do at at the point. 
So then fill in the blank, let's

712
00:37:48,760 --> 00:37:50,760
say, or take the next step 
yourself. 

713
00:37:50,920 --> 00:37:53,600
Yeah, yeah, absolutely. 
Thank you so much for coming on.

714
00:37:53,600 --> 00:37:55,920
I've I've had a real blast. 
Thank you, President. 

715
00:37:56,000 --> 00:37:57,000
Cool. 
We'll round it off here. 

716
00:37:57,000 --> 00:37:59,200
Thank you so much for listening.
We'll see you on the next one.

