1
00:00:00,040 --> 00:00:02,320
What does it mean to be a 
software engineer today? 

2
00:00:02,400 --> 00:00:04,800
I think it's a very different 
landscape to what it was even 

3
00:00:04,800 --> 00:00:05,520
two years ago. 
You. 

4
00:00:05,720 --> 00:00:08,680
Can't even hire other people 
unless you can justify how AI 

5
00:00:08,680 --> 00:00:11,560
couldn't actually help you with 
that extra resource, right? 

6
00:00:11,800 --> 00:00:13,880
But what do we do about our 
junior engineers? 

7
00:00:13,880 --> 00:00:17,200
It's going to be harder to break
into the industry harder than it

8
00:00:17,200 --> 00:00:20,160
was say three years ago. 
I think we're trading off that 

9
00:00:20,400 --> 00:00:23,320
short term speed increase and 
what we perceive to be 

10
00:00:23,320 --> 00:00:26,120
productivity gains, which they 
are, but at what cost. 

11
00:00:26,400 --> 00:00:29,960
That speed really is very 
seductive and fun, but fragility

12
00:00:30,280 --> 00:00:32,360
and complexity is very 
expensive. 

13
00:00:32,520 --> 00:00:35,520
One of the main questions that 
I'm asking as part of my 

14
00:00:35,680 --> 00:00:38,440
research is how does the 
introduction of AI coding 

15
00:00:38,440 --> 00:00:43,320
assistance shift the perceived 
focus across various development

16
00:00:43,320 --> 00:00:46,760
tasks such as like designing and
writing, refactoring, testing, 

17
00:00:46,760 --> 00:00:49,600
debugging, reviewing? 
If we've just taken a technology

18
00:00:49,600 --> 00:00:52,520
that can speed up one of those 
phases by a lot, well, where's 

19
00:00:52,520 --> 00:00:54,200
the next bottleneck? 
We'll come up with the 

20
00:00:54,200 --> 00:00:57,400
requirements and then the other 
end as well, who will do the 

21
00:00:57,400 --> 00:01:01,120
review and testing and all that.
One might ask themselves, well, 

22
00:01:01,120 --> 00:01:03,480
where is that extra time going 
then because we're saving all 

23
00:01:03,480 --> 00:01:06,080
this time? 
Or are we just writing more code

24
00:01:06,080 --> 00:01:08,520
faster? 
I would suggest to start 

25
00:01:08,520 --> 00:01:12,800
thinking of these AI tools as 
not just mere tools, but as team

26
00:01:12,800 --> 00:01:15,160
members. 
I do wonder if we might head to 

27
00:01:15,160 --> 00:01:18,960
a place where we each have our 
own AI that knows us intimate. 

28
00:01:19,160 --> 00:01:22,560
What if it could also connect to
a model that is yours? 

29
00:01:22,560 --> 00:01:24,880
Is your personal one that knows 
the way that you think? 

30
00:01:41,760 --> 00:01:44,280
Hello everyone, welcome back to 
the new episode of the 

31
00:01:44,280 --> 00:01:47,320
Technician podcast. 
Today I have with me a repeat 

32
00:01:47,320 --> 00:01:50,400
guest, Annie Vella. 
So I think the previous episode 

33
00:01:50,400 --> 00:01:53,600
that we did is episode 30 like 4
years ago. 

34
00:01:53,720 --> 00:01:57,000
It's been quite a long while. 
The reason I reach out to Annie 

35
00:01:57,000 --> 00:02:00,240
is because I saw her quite 
active on social media, on 

36
00:02:00,240 --> 00:02:04,120
LinkedIn and also on her 
research, right, talking about 

37
00:02:04,120 --> 00:02:07,920
AI assisted development or AI in
general, right, generative AI in

38
00:02:07,920 --> 00:02:11,039
software engineering. 
So today I hope we have a good 

39
00:02:11,039 --> 00:02:14,520
discussion to talk about, you 
know, Dehype about AI, maybe 

40
00:02:14,520 --> 00:02:18,680
some fears that some people have
and try to maybe demystify and 

41
00:02:18,680 --> 00:02:21,920
give us some better guidance. 
So any welcome to the show. 

42
00:02:22,600 --> 00:02:25,320
Thank you, Henry. 
It's so good to be back after, 

43
00:02:25,320 --> 00:02:30,720
yeah, just over 4 years I think.
And boy, has a bit changed in 

44
00:02:30,720 --> 00:02:32,360
the world in that time, hasn't 
it? 

45
00:02:33,120 --> 00:02:36,680
Yeah. 
So any, I think we know about AI

46
00:02:36,680 --> 00:02:39,000
usage these days, right? 
Everyone is talking about it 

47
00:02:39,000 --> 00:02:42,080
over social media. 
There are new technologies even 

48
00:02:42,080 --> 00:02:46,040
being invented recently, right. 
And the term vibe coding is kind

49
00:02:46,040 --> 00:02:48,040
of like very, very popular these
days. 

50
00:02:48,400 --> 00:02:50,840
So maybe tell us a little bit 
more four years apart, right. 

51
00:02:50,840 --> 00:02:54,040
What do you see have changed, 
maybe in your day-to-day work 

52
00:02:54,040 --> 00:02:56,400
with software engineering, Or 
what do you see other people 

53
00:02:56,400 --> 00:03:00,240
doing in software engineering? 
Well, four years in a time when 

54
00:03:00,240 --> 00:03:03,920
things have changed as much. 
So personally I've changed roles

55
00:03:03,920 --> 00:03:06,960
since the last time we spoke. 
So I think when we spoke last 

56
00:03:06,960 --> 00:03:10,960
time I was about to start a 
senior engineering manager role 

57
00:03:11,400 --> 00:03:16,200
and since then I've actually 
moved into a on the staff plus 

58
00:03:16,200 --> 00:03:19,880
engineering career track. 
I'm a distinguished engineer and

59
00:03:19,880 --> 00:03:22,400
so my own role has changed in 
that time. 

60
00:03:22,400 --> 00:03:25,760
And so the things that I spend 
time doing have also changed. 

61
00:03:25,760 --> 00:03:30,440
But more importantly, I would 
say end of 2022 or November 

62
00:03:30,440 --> 00:03:33,360
2022, I think it was when 
ChatGPT was released. 

63
00:03:33,800 --> 00:03:36,600
I think that caught the world by
surprise. 

64
00:03:36,600 --> 00:03:41,840
And what's been so interesting 
is to see how quickly it's been 

65
00:03:41,840 --> 00:03:43,400
adopted. 
I was watching a video just 

66
00:03:43,400 --> 00:03:49,280
yesterday, Sam Altman said that 
there's 500 million active users

67
00:03:49,280 --> 00:03:53,320
using ChatGPT. 
That's just a huge number that 

68
00:03:53,400 --> 00:03:54,880
it's hard to wrap your head 
around, right? 

69
00:03:55,360 --> 00:03:57,960
But then starting to see where 
it's being applied. 

70
00:03:58,200 --> 00:04:01,240
Not just ChatGPT, but the 
underlying technology, LLMS, 

71
00:04:01,760 --> 00:04:04,440
obviously very, very useful in 
software engineering. 

72
00:04:04,440 --> 00:04:08,320
And hence, as you said, you 
know, vibe coding, all of these 

73
00:04:08,320 --> 00:04:10,280
sorts of terms are starting to 
come out. 

74
00:04:10,560 --> 00:04:13,880
And I was lucky enough to be in 
a position where I could 

75
00:04:13,880 --> 00:04:17,480
entertain the idea of going back
to university to do the masters 

76
00:04:17,480 --> 00:04:20,640
that I always told myself I 
would do when I graduated over 

77
00:04:20,640 --> 00:04:22,800
20 years ago. 
I thought, oh, I'll go back to 

78
00:04:22,800 --> 00:04:26,480
university one day and do that 
further study, but I had to find

79
00:04:26,480 --> 00:04:30,480
the thing that was going to pull
me in and, you know, encourage 

80
00:04:30,480 --> 00:04:33,720
me to spend my free time 
thinking about it. 

81
00:04:33,720 --> 00:04:39,160
So yeah, early 2024, I decided 
to do a masters of Engineering, 

82
00:04:39,400 --> 00:04:45,320
focusing on the impact of AI on 
software engineering because, I 

83
00:04:45,320 --> 00:04:48,200
mean, it just feels like the 
most natural topic for me to 

84
00:04:48,200 --> 00:04:50,400
focus on. 
I love software engineering so 

85
00:04:50,400 --> 00:04:52,800
much. 
I've done it since I was such a 

86
00:04:52,800 --> 00:04:54,640
young. 
I think we covered this probably

87
00:04:54,640 --> 00:04:57,040
when we spoke last time. 
But you know, since the age of 

88
00:04:57,040 --> 00:05:00,800
6, I have been fascinated at 
what you can accomplish by 

89
00:05:00,800 --> 00:05:02,680
instructing a computer to do 
something. 

90
00:05:03,160 --> 00:05:04,800
But there's always been 
limitations, right? 

91
00:05:04,800 --> 00:05:08,840
It can't think for itself. 
You have to be so specific in 

92
00:05:08,840 --> 00:05:11,400
your instructions. 
But this technology starts to 

93
00:05:11,400 --> 00:05:15,760
allow us to be a little more 
fuzzy with our instructions that

94
00:05:15,760 --> 00:05:19,800
non determinism that we didn't 
really have before or was very 

95
00:05:19,800 --> 00:05:22,760
hard to achieve. 
And so, yeah, how does that 

96
00:05:22,760 --> 00:05:25,880
impact the way that we write 
software, the type of software 

97
00:05:25,880 --> 00:05:28,040
that we build, but also how we 
build software? 

98
00:05:28,440 --> 00:05:31,000
And that's what I focused my 
part time masters on. 

99
00:05:31,000 --> 00:05:33,400
So I'm about halfway through. 
And that's why you will have 

100
00:05:33,400 --> 00:05:37,440
seen that I'm one of the reasons
I'm so active on social media 

101
00:05:37,440 --> 00:05:39,640
now about this is because I find
it fascinating. 

102
00:05:39,640 --> 00:05:43,400
I think a lot of people do, but 
particularly the impact on 

103
00:05:43,400 --> 00:05:46,000
software engineering and the 
software engineer themselves. 

104
00:05:46,000 --> 00:05:49,200
You know, what does it mean to 
be a software engineer today? 

105
00:05:49,680 --> 00:05:52,360
I think it's a very different 
landscape to what it was even 

106
00:05:52,360 --> 00:05:54,920
two years ago or four years ago 
when we spoke. 

107
00:05:55,320 --> 00:05:57,480
The sorts of skills that you 
need to build up, you know, 

108
00:05:57,480 --> 00:06:00,640
that's all changing. 
So, OK, I wish I had a crystal 

109
00:06:00,640 --> 00:06:03,280
ball. 
But as I do not, the best I can 

110
00:06:03,280 --> 00:06:06,760
do is try and research what's 
happening today so that we might

111
00:06:06,760 --> 00:06:10,600
project and predict what happens
tomorrow, and so we can prepare 

112
00:06:10,600 --> 00:06:14,160
ourselves for a brave new world.
Yeah, So I think it's really 

113
00:06:14,160 --> 00:06:17,080
interesting the, you know, you 
just saw a video, you know, the 

114
00:06:17,520 --> 00:06:19,480
active users using ChatGPT, 
right? 

115
00:06:19,480 --> 00:06:21,640
I guess these days it's not just
ChatGPT. 

116
00:06:21,640 --> 00:06:25,320
There are even more, right? 
You have like perplexity Gemini,

117
00:06:25,320 --> 00:06:28,680
you know Claude and I don't know
God, what, you know, like other 

118
00:06:29,080 --> 00:06:31,800
AI software. 
So I think also interestingly, 

119
00:06:31,840 --> 00:06:35,000
just a few days ago as well, 
there was a announcement by 

120
00:06:35,000 --> 00:06:38,960
Shopify CEO, right, Toby Lucas 
saying that everyone now is 

121
00:06:38,960 --> 00:06:41,760
expected to use AI, the term 
reflexive AI. 

122
00:06:41,760 --> 00:06:45,360
I'm not sure what that means, 
but basically saying that you 

123
00:06:45,360 --> 00:06:48,600
can't even hire other people 
unless and justify how AI 

124
00:06:48,600 --> 00:06:52,040
couldn't actually help you with 
that extra resource, right? 

125
00:06:52,280 --> 00:06:56,280
So I think that's a very, very 
new thing in my opinion, right? 

126
00:06:56,280 --> 00:06:59,600
So asking people to try to use 
AI as much as possible. 

127
00:06:59,960 --> 00:07:03,120
So I think in your paper you 
mentioned about this future of 

128
00:07:03,160 --> 00:07:05,680
AI driven software engineering 
or I think let's just focus on 

129
00:07:05,680 --> 00:07:08,680
this topic for today. 
What do you see changing? 

130
00:07:08,680 --> 00:07:11,840
You know, software development 
is still kind of like, you know,

131
00:07:11,840 --> 00:07:14,360
a large kind of a work body, 
right? 

132
00:07:14,360 --> 00:07:17,800
So that there's so many 
activities, people try to use it

133
00:07:17,800 --> 00:07:20,480
so much, you know, building 
applications, building programs 

134
00:07:20,800 --> 00:07:22,400
and things like that. 
But what do you see actually 

135
00:07:22,400 --> 00:07:24,920
changing in terms of software 
engineering in general? 

136
00:07:25,640 --> 00:07:28,640
Yeah. 
So that paper was an attempt to 

137
00:07:28,720 --> 00:07:32,680
look into the future and see 
what of all of the different 

138
00:07:32,680 --> 00:07:35,480
types of activities that are 
involved in the software 

139
00:07:35,480 --> 00:07:38,680
development life cycle, which of
those would be impacted and in 

140
00:07:38,680 --> 00:07:42,360
what ways. 
My own research for my masters 

141
00:07:42,360 --> 00:07:45,640
is focusing more on like the 
things that software engineers 

142
00:07:46,480 --> 00:07:48,760
do themselves today. 
And this is something that I've 

143
00:07:48,760 --> 00:07:51,680
been reflecting on so much as a 
part of all of this. 

144
00:07:52,320 --> 00:07:55,760
You know, when I went to 
university over 20 years ago, I 

145
00:07:55,760 --> 00:07:58,680
was taught the full software 
development life cycle. 

146
00:07:58,680 --> 00:08:02,080
You know, I, of course we learnt
how to code, but we also learnt 

147
00:08:02,080 --> 00:08:07,120
how to analyse the requirements,
you know, and discuss with the 

148
00:08:07,120 --> 00:08:09,600
customer what the problem they 
were trying to solve and 

149
00:08:09,600 --> 00:08:12,200
encourage them to not give us 
the solution, but instead just 

150
00:08:12,200 --> 00:08:16,360
really focus on the problem and 
let us as of the team who are 

151
00:08:16,440 --> 00:08:18,920
going to solve all their 
problems, come up with the right

152
00:08:18,920 --> 00:08:21,520
solutions for them. 
You know, right through to 

153
00:08:21,840 --> 00:08:25,360
modelling use cases, UML, you 
know, back then when we used to 

154
00:08:25,360 --> 00:08:28,680
do a lot more of that kind of 
stuff upfront on the design of 

155
00:08:28,680 --> 00:08:31,200
the software and then the build 
and thinking through all the 

156
00:08:31,360 --> 00:08:34,840
test scenarios and then 
obviously the deployment and the

157
00:08:34,840 --> 00:08:38,360
maintenance of it. 
And what I've noticed throughout

158
00:08:38,360 --> 00:08:43,039
the years is that probably due 
to the fact that there's such a 

159
00:08:43,039 --> 00:08:46,000
massive demand for software 
engineers, but not enough 

160
00:08:46,000 --> 00:08:50,120
supply, we have created 
specializations, you know, and, 

161
00:08:50,120 --> 00:08:55,960
and try to kind of reduce or 
narrow down what a software 

162
00:08:55,960 --> 00:08:59,160
engineer should focus on to the 
things that we perceive only 

163
00:08:59,160 --> 00:09:00,680
they can do with the skills that
they have. 

164
00:09:00,680 --> 00:09:02,040
And that is the writing of the 
code. 

165
00:09:02,480 --> 00:09:06,040
What I find really fascinating 
about this shift is if you you 

166
00:09:06,040 --> 00:09:11,160
read what people like the CEO of
GitHub have to say, you know, 

167
00:09:11,160 --> 00:09:14,200
they proudly announced that now 
with these tools, software 

168
00:09:14,200 --> 00:09:16,600
engineers will be able to do a 
lot more of that higher level 

169
00:09:16,600 --> 00:09:20,640
thinking, critical thinking, you
know, all the other tasks that 

170
00:09:20,640 --> 00:09:23,640
were always meant to be a part 
of software engineering. 

171
00:09:23,880 --> 00:09:26,440
But the truth of the matter is 
that many software engineers 

172
00:09:26,440 --> 00:09:29,160
have specialized on the coding 
aspect of it. 

173
00:09:29,640 --> 00:09:32,840
I used to work many years ago 
when I was in the Netherlands. 

174
00:09:33,000 --> 00:09:36,880
I worked with a team who were 
based in the UK and I remember 

175
00:09:37,320 --> 00:09:42,000
one of their engineers there was
just really, really smart, but 

176
00:09:42,000 --> 00:09:45,920
focused all of his energy and 
his skill building and becoming 

177
00:09:45,960 --> 00:09:49,400
like the best React developer. 
He knew React inside out. 

178
00:09:49,400 --> 00:09:54,320
That was his area of interest 
and his domain, you know, and we

179
00:09:54,320 --> 00:09:57,080
had frequent discussions because
I was trying to encourage him to

180
00:09:57,080 --> 00:09:59,600
think more about the product 
that he was building as well. 

181
00:09:59,600 --> 00:10:02,440
Like what is the problem you're 
trying to solve with this 

182
00:10:02,440 --> 00:10:04,360
technology that you've become 
very good at? 

183
00:10:04,960 --> 00:10:07,080
And he just didn't have much 
interest in understanding the 

184
00:10:07,080 --> 00:10:10,280
domain we were working in. 
You know, he felt his area of 

185
00:10:10,280 --> 00:10:12,560
expertise should be the 
technology and others could 

186
00:10:12,560 --> 00:10:16,120
think about the product. 
Well, I fear for people who have

187
00:10:16,560 --> 00:10:19,200
gone down that path because I 
think that the tools that we 

188
00:10:19,200 --> 00:10:22,280
have today and, and of course, 
it's only going to get better. 

189
00:10:22,840 --> 00:10:24,400
They're very good at writing the
code. 

190
00:10:24,600 --> 00:10:29,000
They can generate code way 
faster than any of us can hope 

191
00:10:29,000 --> 00:10:32,280
to ever type. 
So that shifts things, right? 

192
00:10:32,360 --> 00:10:35,760
But where does it shift it to? 
So one of the main questions 

193
00:10:35,760 --> 00:10:39,640
that I'm asking as part of my 
research is how does the 

194
00:10:39,640 --> 00:10:44,200
introduction of AI coding 
assistance shift the perceived 

195
00:10:44,200 --> 00:10:49,400
focus across various development
tasks such as like designing and

196
00:10:49,400 --> 00:10:52,160
writing, refactoring, testing, 
debugging, reviewing. 

197
00:10:52,600 --> 00:10:55,520
You know, like I have a 
hypothesis that developers may 

198
00:10:55,520 --> 00:10:58,320
spend less time writing code and
perhaps more time reviewing. 

199
00:10:58,920 --> 00:11:03,040
Well, so far the data is showing
that yes, developers feel that 

200
00:11:03,040 --> 00:11:06,240
they will spend or that they 
already are spending less time 

201
00:11:06,240 --> 00:11:09,280
writing code, this time 
refactoring code as well, and 

202
00:11:09,280 --> 00:11:11,520
this time testing because they 
can generate tests. 

203
00:11:11,520 --> 00:11:14,240
That all makes sense. 
But what we're not seeing is 

204
00:11:14,240 --> 00:11:17,880
really like an equal and 
opposite increase in the 

205
00:11:17,880 --> 00:11:20,240
reviewing. 
The time spent reviewing. 

206
00:11:20,680 --> 00:11:23,720
There is a slight increase 
there, but not equivalent, 

207
00:11:23,720 --> 00:11:26,200
right? 
So one might ask themselves, 

208
00:11:26,200 --> 00:11:28,560
well, where is that extra time 
going then because you know, 

209
00:11:28,560 --> 00:11:32,000
we're saving all this time or 
are we just writing more code 

210
00:11:32,000 --> 00:11:34,680
faster? 
And what does that mean into the

211
00:11:34,680 --> 00:11:36,680
future, right? 
What are the 2nd order or 

212
00:11:36,680 --> 00:11:39,320
lagging indicators that we 
should start looking for? 

213
00:11:39,840 --> 00:11:44,080
Well, thankfully we don't need 
to look too far because Dora and

214
00:11:44,080 --> 00:11:48,800
the Get Clear report, I came 
across that one a couple of 

215
00:11:48,800 --> 00:11:53,400
weeks ago and you know, they're 
analyzing the impacts of this 

216
00:11:53,520 --> 00:11:57,120
technological shift and we are 
already seeing some of those 

217
00:11:57,120 --> 00:11:59,680
second order or lagging 
indicators. 

218
00:12:00,200 --> 00:12:04,120
And it's not really a great 
picture to be honest, Henry. 

219
00:12:04,120 --> 00:12:07,960
It's like I think we're trading 
off that short term speed 

220
00:12:07,960 --> 00:12:11,440
increase and what we perceive to
be productivity gains, which 

221
00:12:11,440 --> 00:12:16,520
they are, but at what cost, you 
know, and I think that's going 

222
00:12:16,520 --> 00:12:19,840
to become quite interesting. 
So software developers right 

223
00:12:19,840 --> 00:12:21,960
now, they're generating code 
faster. 

224
00:12:21,960 --> 00:12:25,160
They're also feeling like some 
of the code that gets generated 

225
00:12:25,160 --> 00:12:27,160
isn't great. 
You know, sometimes it 

226
00:12:27,200 --> 00:12:30,680
hallucinates for all the tools 
that are available, some are 

227
00:12:30,680 --> 00:12:34,080
better than others, but you 
still need to be vigilant and 

228
00:12:34,320 --> 00:12:37,840
manually adjust and carefully 
verify that the code that it's 

229
00:12:37,840 --> 00:12:41,360
generated is doing what you hope
it is, which is where vibe 

230
00:12:41,360 --> 00:12:44,000
coding comes in and tells you 
actually, maybe you don't need 

231
00:12:44,000 --> 00:12:46,520
to worry too much about that. 
So that's another topic. 

232
00:12:47,040 --> 00:12:50,160
And another thing that's quite 
interesting that I'm seeing in 

233
00:12:50,160 --> 00:12:54,920
my research is software 
engineers are trading the more 

234
00:12:54,920 --> 00:12:58,920
traditional sort of search tools
for AI coding assistance. 

235
00:12:58,920 --> 00:13:01,560
So previously you would have 
gone to Stack Overflow, you 

236
00:13:01,560 --> 00:13:05,160
would have gone to Google, maybe
even opened up the documentation

237
00:13:05,640 --> 00:13:07,840
for a particular library or 
framework that you're working 

238
00:13:07,840 --> 00:13:10,040
with. 
That actually seems to be 

239
00:13:10,040 --> 00:13:12,840
shifting as well. 
So we can already see a decline 

240
00:13:13,160 --> 00:13:16,760
in the use of Stack Overflow. 
You know, it had its day and it 

241
00:13:16,760 --> 00:13:20,040
seems like now it's just easier 
to stay in the IDE. 

242
00:13:20,040 --> 00:13:23,520
Why would you pop out of it into
a browser if you can just ask 

243
00:13:23,840 --> 00:13:25,960
the AI coding assistant to help 
you with that? 

244
00:13:26,720 --> 00:13:30,960
So are we moving towards being 
more like orchestrators of AI 

245
00:13:30,960 --> 00:13:33,680
coding assistants, Like just 
being able to describe what it 

246
00:13:33,680 --> 00:13:36,600
is that you want or getting 
really good at prompting? 

247
00:13:37,000 --> 00:13:40,960
Is prompt engineering becoming a
new core competency, and does it

248
00:13:40,960 --> 00:13:46,160
potentially replace the ability 
to recall all of the syntax that

249
00:13:46,160 --> 00:13:49,360
we used to have to learn? 
So these are the big questions 

250
00:13:49,360 --> 00:13:52,800
I'm asking, and I'm, yeah, still
super fascinated about. 

251
00:13:52,840 --> 00:13:55,160
It's an evolving picture, 
absolutely. 

252
00:13:55,760 --> 00:13:57,520
Yeah. 
So as you were mentioning all 

253
00:13:57,520 --> 00:14:00,880
those, I kind of like reflect 
back to what my recent 

254
00:14:00,880 --> 00:14:03,080
experience as well. 
So I could definitely relate 

255
00:14:03,080 --> 00:14:05,480
with some of these things. 
These are changing especially 

256
00:14:05,480 --> 00:14:08,640
for me, right. 
So uniquely enough, right, I was

257
00:14:08,640 --> 00:14:11,800
also into management now back 
kind of like semi management, 

258
00:14:11,800 --> 00:14:14,360
semi hands on. 
So I think I could see that 

259
00:14:14,360 --> 00:14:16,800
so-called the dichotomy, you 
know, being a hands on developer

260
00:14:16,800 --> 00:14:20,800
and also as a manager, right? 
So trying to think of how we can

261
00:14:20,800 --> 00:14:24,480
use AI more effectively and 
being more productive and also 

262
00:14:24,480 --> 00:14:28,400
not forgetting about the second 
level or maybe third level order

263
00:14:28,400 --> 00:14:30,960
of thinking, right? 
So I think 1 aspect that you 

264
00:14:30,960 --> 00:14:33,440
mentioned very interesting is 
about the role of software 

265
00:14:33,440 --> 00:14:35,360
engineering. 
You know, traditionally we were 

266
00:14:35,360 --> 00:14:39,240
trained with so many different 
things like requirements and 

267
00:14:39,240 --> 00:14:42,120
things like that. 
But over the time as maybe like 

268
00:14:42,120 --> 00:14:45,440
what you mentioned, like so many
solver developers specializing 

269
00:14:45,440 --> 00:14:48,440
into different roles, some even 
specializing in different 

270
00:14:48,440 --> 00:14:50,760
technologies. 
Maybe it's a React, maybe it's a

271
00:14:50,760 --> 00:14:54,960
cloud thing, maybe it's DevOps, 
SRE, whatever that is, right? 

272
00:14:55,360 --> 00:14:59,680
And now it seems like these kind
of specialization is blurring a 

273
00:14:59,680 --> 00:15:02,520
little bit, I would say. 
So for example, if I'm not a if 

274
00:15:02,520 --> 00:15:05,200
I'm not a good front end 
engineer, but I do understand a 

275
00:15:05,200 --> 00:15:07,360
little bit about front end 
technology, right? 

276
00:15:07,520 --> 00:15:10,800
I could now come up with some 
kind of maybe decent good 

277
00:15:10,960 --> 00:15:14,920
looking UI and also 
complimenting myself with other 

278
00:15:14,920 --> 00:15:16,920
skills like back end engineer or
maybe cloud. 

279
00:15:17,160 --> 00:15:21,280
I can build much better 
application with more coverage 

280
00:15:21,280 --> 00:15:23,400
in terms of, you know, 
technology thing, right? 

281
00:15:23,720 --> 00:15:27,360
So do you, do you think these 
days software engineers have to 

282
00:15:27,360 --> 00:15:31,480
think of becoming a generalist 
more and more, especially now 

283
00:15:31,480 --> 00:15:35,000
that AI can help actually to 
maybe provide shortcuts, you 

284
00:15:35,000 --> 00:15:38,200
know, finding the answers 
quickly, but also upscaling 

285
00:15:38,200 --> 00:15:40,480
themselves in those skills? 
So what do you think about this?

286
00:15:41,120 --> 00:15:43,440
Yes, I very much agree with 
that. 

287
00:15:44,040 --> 00:15:49,640
And you know, I think as time 
goes on, different phases will 

288
00:15:49,640 --> 00:15:52,240
come and go. 
You know, maybe we had to go 

289
00:15:52,240 --> 00:15:56,160
through a phase where there were
so many new technologies coming 

290
00:15:56,160 --> 00:15:58,080
up. 
I lost count of the number of 

291
00:15:58,320 --> 00:16:01,760
front end frameworks that, you 
know, went through the hype 

292
00:16:02,040 --> 00:16:04,400
phase. 
You know, I think I stopped 

293
00:16:05,320 --> 00:16:07,960
playing around with and I say 
playing because I was never 

294
00:16:07,960 --> 00:16:10,440
officially a front end 
developer, but as a sort of full

295
00:16:10,440 --> 00:16:13,240
stack developer, I did have to 
work in front ends and I was 

296
00:16:13,240 --> 00:16:15,680
never very good at it. 
But I think the last time I did 

297
00:16:15,680 --> 00:16:18,120
anything decent in front end was
angular days. 

298
00:16:18,120 --> 00:16:21,240
And you imagine how far, like, 
how long ago that feels now. 

299
00:16:21,720 --> 00:16:25,360
But, yeah, we've gone through a 
phase where we've introduced so 

300
00:16:25,360 --> 00:16:28,880
many new frameworks and 
technologies, cloud and mobile 

301
00:16:28,880 --> 00:16:32,560
itself, you know, And people 
chose to specialize because 

302
00:16:32,680 --> 00:16:36,160
there was a demand for it. 
But now, as you say, like, these

303
00:16:36,160 --> 00:16:40,560
tools do in many ways 
democratize the access to 

304
00:16:41,160 --> 00:16:44,720
becoming a developer, somebody 
who can contribute to 

305
00:16:44,720 --> 00:16:47,520
development. 
In fact, I read something by 

306
00:16:47,600 --> 00:16:50,000
Andre Carpathy. 
I hope I'm saying his name 

307
00:16:50,000 --> 00:16:52,440
right. 
Apparently Twitter has articles 

308
00:16:52,440 --> 00:16:54,200
on it now. 
I, I didn't and it's not called 

309
00:16:54,200 --> 00:16:56,440
Twitter. 
It takes, but he wrote an X 

310
00:16:56,440 --> 00:17:01,040
article on the diffusion of this
technology, which previously 

311
00:17:01,080 --> 00:17:05,359
like big technological changes 
like this might have started in 

312
00:17:05,359 --> 00:17:10,440
government or big companies 1st 
and then trickled down to the 

313
00:17:10,440 --> 00:17:15,000
average individual at home. 
You know, but this technology 

314
00:17:15,000 --> 00:17:18,520
seems to have been released out 
to the general public 1st. 

315
00:17:18,520 --> 00:17:21,880
And although I'm sure that there
are, you know, more advanced 

316
00:17:21,880 --> 00:17:25,079
models that the companies are 
using internally and maybe even 

317
00:17:25,079 --> 00:17:28,200
the government, the perception 
is that it's out in the public 

318
00:17:28,200 --> 00:17:30,680
much earlier than it would 
normally have been with other 

319
00:17:30,680 --> 00:17:33,120
technologies. 
And that means that, you know, 

320
00:17:33,120 --> 00:17:36,360
the general public, you and I 
and everybody else can use these

321
00:17:36,360 --> 00:17:39,760
technologies to sort of 
supercharge themselves. 

322
00:17:39,760 --> 00:17:43,360
So as you say, like I too have 
found myself, I've had to write 

323
00:17:43,360 --> 00:17:47,400
a bunch of R scripts to analyse 
the data that I've collected as 

324
00:17:47,400 --> 00:17:50,000
part of my research. 
And I'm not an art developer, 

325
00:17:50,000 --> 00:17:54,040
but with the help of, I'm using 
Windsurf connecting to clawed 

326
00:17:54,040 --> 00:17:59,240
Sonnet 3.5, it's a huge help. 
It just shortcuts the amount of 

327
00:17:59,240 --> 00:18:02,320
time I would have had to spend. 
And now I feel like I could 

328
00:18:02,320 --> 00:18:05,760
probably write something in any 
language with just a little bit 

329
00:18:05,760 --> 00:18:08,000
of help. 
What I love about that, Henry, 

330
00:18:08,000 --> 00:18:11,680
is, you know, last time we 
spoke, I was right in the middle

331
00:18:11,680 --> 00:18:13,840
of trying to be the best 
engineering manager and 

332
00:18:13,840 --> 00:18:15,080
technical leader that I could 
be. 

333
00:18:15,080 --> 00:18:20,760
I really focused so much of my 
energy on how do I give other 

334
00:18:20,760 --> 00:18:26,520
engineers enough confidence to 
try things and fail sometimes, 

335
00:18:26,520 --> 00:18:29,320
but safely, you know, because 
you learn through your failures 

336
00:18:29,320 --> 00:18:32,480
and your mistakes, probably 
better lessons than you'll ever 

337
00:18:32,480 --> 00:18:35,560
learn any other way. 
How do you create an environment

338
00:18:35,560 --> 00:18:39,760
in which people lean into that 
and then are able to discover 

339
00:18:39,760 --> 00:18:44,000
for themselves some new path, 
some new way of some creative 

340
00:18:44,000 --> 00:18:47,760
way of solving a problem and be 
able to feel really proud about 

341
00:18:47,760 --> 00:18:49,960
that? 
And I think like we spend so 

342
00:18:49,960 --> 00:18:53,400
much time working, so much of 
our lives are spent at work, 

343
00:18:53,720 --> 00:18:57,680
that if you can take joy in your
work and be proud of the work 

344
00:18:57,680 --> 00:19:00,040
that you do, it makes a time fly
by. 

345
00:19:00,040 --> 00:19:03,160
And that's, I think part of my 
passion for software engineering

346
00:19:03,160 --> 00:19:04,840
is I've never really seen it as 
work. 

347
00:19:04,840 --> 00:19:06,560
It's always been an enjoyable 
thing for me. 

348
00:19:07,120 --> 00:19:10,800
So I wonder if these tools can 
help give perhaps the more 

349
00:19:10,800 --> 00:19:16,640
introverted, quieter members of 
our teams like a quiet assistant

350
00:19:16,640 --> 00:19:19,520
just sitting there privately on 
their computer. 

351
00:19:19,720 --> 00:19:24,000
You know, now, those who might 
previously have not had the 

352
00:19:24,000 --> 00:19:27,240
courage to put their hand up and
admit to the rest of their team 

353
00:19:27,680 --> 00:19:30,120
that they don't know how to do 
something, that they need a bit 

354
00:19:30,120 --> 00:19:32,280
of help. 
Because, you know, it's can be 

355
00:19:32,280 --> 00:19:35,360
hard to admit that, you know, 
not everybody has the courage to

356
00:19:35,360 --> 00:19:37,480
do that. 
And some, you know, over time 

357
00:19:37,480 --> 00:19:40,120
might find that courage, but 
some might never. 

358
00:19:40,640 --> 00:19:43,520
But this tool, if you can just 
chat with it about some idea 

359
00:19:43,520 --> 00:19:46,800
that you have before you get to 
the point of, OK, I think I 

360
00:19:46,800 --> 00:19:49,200
really need to ask for help, You
might be able to solve a lot 

361
00:19:49,200 --> 00:19:53,960
more of your own insecurities 
about trying some technical 

362
00:19:53,960 --> 00:19:56,600
solution for something. 
And I love the idea of that. 

363
00:19:56,600 --> 00:20:00,160
I think that can really help 
allow developers. 

364
00:20:00,320 --> 00:20:01,960
Yeah, more freedom in that 
sense. 

365
00:20:02,200 --> 00:20:05,240
And to that end, as you said, 
like now previously you thought 

366
00:20:05,240 --> 00:20:07,520
of yourself as not a very good 
front end developer, so you 

367
00:20:07,520 --> 00:20:09,960
probably never. 
Going to put your hand up to do 

368
00:20:09,960 --> 00:20:11,440
that piece of work or for that 
job. 

369
00:20:11,440 --> 00:20:15,040
Well, now you might actually 
really consider actually going 

370
00:20:15,040 --> 00:20:17,000
for that. 
And that's got to be a good 

371
00:20:17,000 --> 00:20:21,800
thing, you know, but beneath it,
it still needs to be backed by a

372
00:20:21,800 --> 00:20:24,840
deeper understanding of what it 
is that you're doing because you

373
00:20:24,840 --> 00:20:27,200
do need to think about how long 
is this going to last? 

374
00:20:27,200 --> 00:20:28,880
If it's just a prototype, then 
go for it. 

375
00:20:28,880 --> 00:20:31,440
You know, if it's just going to 
be thrown away and just proving 

376
00:20:31,440 --> 00:20:33,600
something. 
These tools are amazing and I 

377
00:20:33,600 --> 00:20:36,920
see that shine through and some 
of the open-ended answers that I

378
00:20:36,920 --> 00:20:40,680
got in my research. 
But if it's a production code 

379
00:20:40,680 --> 00:20:44,200
that needs to be maintained over
time, you still need to probably

380
00:20:44,520 --> 00:20:47,680
be a little careful about the 
complexity of the code, the 

381
00:20:47,680 --> 00:20:50,960
duplication that you're that you
might be stumbling into. 

382
00:20:51,480 --> 00:20:54,320
But that's maybe where we see 
introduction of new tools. 

383
00:20:54,320 --> 00:20:57,960
Well, you know, layering of 
agents that can help you 

384
00:20:57,960 --> 00:21:02,480
identify those mistakes as well.
Gosh, Pandora's box has been 

385
00:21:02,480 --> 00:21:05,520
opened. 
And, you know, who knows where 

386
00:21:06,040 --> 00:21:09,760
this evolution will take us, But
it's very interesting. 

387
00:21:10,600 --> 00:21:13,400
Yeah, myself, I'm afraid I 
couldn't keep up with so many 

388
00:21:13,400 --> 00:21:15,920
different changes, new 
technologies, new inventions, 

389
00:21:15,920 --> 00:21:19,240
new tools being popped up. 
And sometimes it's not just one 

390
00:21:19,240 --> 00:21:21,640
aspect of software engineering, 
it could be other things like 

391
00:21:21,640 --> 00:21:26,120
testing, generating UI, 
generating app, things like 

392
00:21:26,160 --> 00:21:28,240
bold, lovable and all that, 
right? 

393
00:21:28,640 --> 00:21:32,120
So I think definitely this is 
something that everyone at least

394
00:21:32,120 --> 00:21:34,200
needs to follow a little bit, I 
guess. 

395
00:21:34,240 --> 00:21:37,480
Otherwise you will be fallen 
behind like by a lot, right? 

396
00:21:37,520 --> 00:21:41,080
Especially from people who 
leverage these tools everyday. 

397
00:21:41,440 --> 00:21:44,200
I think you make a great points 
about, you know, people who are 

398
00:21:44,200 --> 00:21:47,640
maybe a little bit more 
introverted or shy or maybe some

399
00:21:47,640 --> 00:21:49,520
imposter syndrome as well, 
right? 

400
00:21:49,640 --> 00:21:52,560
They are scared, you know, 
asking questions with others. 

401
00:21:52,560 --> 00:21:56,200
So now I think everyone has some
kind of assistant, although you 

402
00:21:56,200 --> 00:21:59,160
still need to Fact Check, you 
still need to try to understand 

403
00:21:59,520 --> 00:22:02,040
why it suggests certain things 
that way, right? 

404
00:22:02,280 --> 00:22:05,360
So I think at least now we have 
some partners that we can just 

405
00:22:05,600 --> 00:22:09,880
ask, you know, the partners that
never get tired and always seem 

406
00:22:09,880 --> 00:22:13,400
to be resourceful, always trying
to help us the best they can. 

407
00:22:14,040 --> 00:22:15,880
Yeah. 
You mentioned the time spent for

408
00:22:15,880 --> 00:22:20,400
engineers now has becoming less 
about writing code because, you 

409
00:22:20,400 --> 00:22:23,560
know, writing code is not the 
bottleneck anymore that everyone

410
00:22:23,560 --> 00:22:27,320
seems to be able to churn out 
maybe features fast, right? 

411
00:22:27,720 --> 00:22:31,560
But all other aspects of 
software development maybe gets 

412
00:22:31,560 --> 00:22:33,120
impacted, right? 
So to speak, right. 

413
00:22:33,320 --> 00:22:35,920
So now if let's say you can 
write a lot of more features, 

414
00:22:35,920 --> 00:22:39,360
that means who will come up with
the requirements and then the 

415
00:22:39,440 --> 00:22:42,960
other end as well, who will do 
the review and testing and all 

416
00:22:42,960 --> 00:22:45,000
that. 
So do you see some kind of 

417
00:22:45,080 --> 00:22:47,680
problems that could happen 
because like what you mentioned 

418
00:22:47,680 --> 00:22:51,160
the Dora research base saying 
like there's an increased 

419
00:22:51,160 --> 00:22:53,080
productivity there is, right? 
Definitely. 

420
00:22:53,080 --> 00:22:56,840
But the impact of software 
delivery performance is actually

421
00:22:56,840 --> 00:22:59,440
going down. 
And maybe the Get Clear report 

422
00:22:59,440 --> 00:23:01,720
that you mentioned as well, 
mentioning that there are a lot 

423
00:23:01,720 --> 00:23:04,640
of churns in terms of code they 
are being produced from, meaning

424
00:23:04,640 --> 00:23:07,520
that you write this code today 
and you keep changing them over 

425
00:23:07,520 --> 00:23:09,400
time, right? 
And the churn is pretty high. 

426
00:23:09,600 --> 00:23:12,640
So what do you see the impact 
now if let's say code writing is

427
00:23:12,640 --> 00:23:15,680
not the bottleneck anymore? 
What would other aspects that we

428
00:23:15,680 --> 00:23:19,040
need to be concerned about? 
That's a really interesting 

429
00:23:19,040 --> 00:23:22,880
question. 
And honestly I think that's if I

430
00:23:22,880 --> 00:23:27,120
could work that out, my research
would be complete. 

431
00:23:27,760 --> 00:23:32,400
I think you're right to mention 
like software development life 

432
00:23:32,400 --> 00:23:36,160
cycle is a system, right? 
Over the years we have 

433
00:23:36,160 --> 00:23:40,360
identified different phases 
things work from sort of left to

434
00:23:40,360 --> 00:23:42,760
right. 
And then we decided maybe we 

435
00:23:42,760 --> 00:23:46,080
should have iterations in there 
because if Waterfall didn't work

436
00:23:46,080 --> 00:23:51,600
out super well for everyone, and
if we've just taken a technology

437
00:23:51,600 --> 00:23:55,320
that can speed up one of those 
phases by a lot, well, where's 

438
00:23:55,320 --> 00:23:58,040
the next bottleneck? 
Like now you don't have enough 

439
00:23:58,120 --> 00:24:01,120
requirements coming in or 
there's not enough UX work 

440
00:24:01,120 --> 00:24:03,920
happening up front. 
And so the developers are sort 

441
00:24:03,920 --> 00:24:06,960
of waiting around for where's my
next piece of work coming from 

442
00:24:06,960 --> 00:24:10,400
because I've done my bit. 
Now you, it's like every team's 

443
00:24:10,880 --> 00:24:13,400
dream, I suppose. 
You know, like, oh wow, how 

444
00:24:13,400 --> 00:24:16,760
developers have nothing to do. 
It's been a long time since I've

445
00:24:16,760 --> 00:24:19,480
heard anyone say that. 
And on the other end of the 

446
00:24:19,480 --> 00:24:22,480
scale, so you know, we're 
churning out code much faster. 

447
00:24:22,680 --> 00:24:26,040
Who's reviewing it all because 
if you've played around with 

448
00:24:26,040 --> 00:24:29,080
these tools from a code 
generation perspective, you will

449
00:24:29,080 --> 00:24:32,400
be aware of how much faster it 
can generate large pull 

450
00:24:32,400 --> 00:24:34,640
requests. 
And I think the Dora report 

451
00:24:34,640 --> 00:24:38,920
talks about that, right as they 
are wondering, they hypothesize 

452
00:24:39,160 --> 00:24:43,680
whether some of that delivery 
stability decrease that they've 

453
00:24:43,880 --> 00:24:50,000
started to see might be in part 
at least related to much larger 

454
00:24:50,000 --> 00:24:54,800
PRS that are being generated. 
And I've felt that myself, to be

455
00:24:54,800 --> 00:24:57,880
honest. 
That's actually I saw the other 

456
00:24:57,880 --> 00:25:00,800
day. 
Patrick, the plan, the godfather

457
00:25:00,800 --> 00:25:04,760
or grandfather, wife of dev OPS,
you know, fabulous man. 

458
00:25:04,960 --> 00:25:09,920
He commented on LinkedIn that I 
think he said it was windsurf or

459
00:25:09,920 --> 00:25:14,000
cursor have introduced this new 
feature where it makes a sound 

460
00:25:14,320 --> 00:25:18,440
when it's completed doing the 
task that you've given to it. 

461
00:25:18,920 --> 00:25:22,280
And I thought, oh, here we go. 
It's an important feature 

462
00:25:22,280 --> 00:25:25,560
because we are already getting 
used to asking it to do so much 

463
00:25:25,560 --> 00:25:28,520
more for us that it can actually
take a bit of time. 

464
00:25:28,720 --> 00:25:31,840
And I've found myself also sort 
of waiting there patiently 

465
00:25:31,840 --> 00:25:35,560
watching it, thinking, hurry up 
already, why are you taking so 

466
00:25:35,560 --> 00:25:37,600
long? 
Maybe I need to spin up another 

467
00:25:37,960 --> 00:25:41,160
instance of windsurf to get it 
to do more in parallel. 

468
00:25:41,160 --> 00:25:43,680
It's taking too long, so then 
you get distracted and you go 

469
00:25:43,680 --> 00:25:46,360
and do something else. 
You start reading e-mail or 

470
00:25:46,360 --> 00:25:49,440
answering a message. 
And so you don't know when to 

471
00:25:49,440 --> 00:25:51,040
come back unless it makes a 
little sound. 

472
00:25:51,280 --> 00:25:54,120
But that just goes to show that 
we're moving into this phase now

473
00:25:54,120 --> 00:25:56,560
where it's just generating so 
much code. 

474
00:25:57,000 --> 00:25:59,640
Are you really going to go and 
have a look at all of the code 

475
00:25:59,640 --> 00:26:01,560
it's generated? 
Like we say we should. 

476
00:26:01,600 --> 00:26:05,360
We say it's important, but it 
will just over time. 

477
00:26:05,880 --> 00:26:08,080
Vigilance. 
We're going to. 

478
00:26:08,560 --> 00:26:13,360
Yeah, vigilance decrement is a 
problem because, well, honestly,

479
00:26:13,360 --> 00:26:15,680
there's vigilance fatigue. 
You know that when you're 

480
00:26:15,680 --> 00:26:18,240
writing it, you're going at the 
pace of like you're thinking 

481
00:26:18,240 --> 00:26:20,680
about it, you're writing the 
code, you're looking at what 

482
00:26:20,680 --> 00:26:23,280
you've written, you're maybe 
writing a unit test and testing 

483
00:26:23,280 --> 00:26:25,520
that what you've written works 
the way it should. 

484
00:26:25,880 --> 00:26:28,080
And there's a sort of a natural 
pace to it. 

485
00:26:28,080 --> 00:26:31,480
But now, if you can generate so 
much more code, so much quicker,

486
00:26:32,040 --> 00:26:35,040
when do you go and check or that
you know what it's done? 

487
00:26:35,040 --> 00:26:39,400
And how does the person who now 
needs to review your code deal 

488
00:26:39,400 --> 00:26:43,080
with a much, much larger PR? 
So I think there will probably 

489
00:26:43,080 --> 00:26:46,680
be some new tooling that comes 
out that helps us with that, you

490
00:26:46,680 --> 00:26:50,760
know, that helps identify what 
maybe what the areas to focus 

491
00:26:50,880 --> 00:26:56,080
our review on might be. 
And I think this is possibly 

492
00:26:56,280 --> 00:26:58,320
part of the brave new world that
we're stepping into. 

493
00:26:58,320 --> 00:27:04,040
We don't yet know what tooling, 
what extra phases within the 

494
00:27:04,040 --> 00:27:07,480
software development life cycle 
may need to be introduced or 

495
00:27:07,480 --> 00:27:12,840
augmented, you know, to deal 
with the removal of a bottleneck

496
00:27:12,840 --> 00:27:18,800
that has existed for, I want to 
say about 50 years, you know, 50

497
00:27:18,800 --> 00:27:22,880
odd years that the software 
industry has been trying to find

498
00:27:22,880 --> 00:27:27,200
ways to reduce the time it takes
to build software by, you know, 

499
00:27:27,200 --> 00:27:30,520
little things like the libraries
and frameworks that we use today

500
00:27:30,520 --> 00:27:34,200
that abstract away as much of 
the heavy lifting or the 

501
00:27:34,200 --> 00:27:37,160
thinking that we previously 
would have had to have done. 

502
00:27:37,160 --> 00:27:40,120
Like we can't even think about 
what it must have been like to 

503
00:27:40,120 --> 00:27:43,360
do all of this on punch cards, 
you know, or, or even writing 

504
00:27:43,720 --> 00:27:46,680
assembly code directly, how much
slower that must have been, 

505
00:27:46,680 --> 00:27:48,560
right? 
So we take for granted what we 

506
00:27:48,560 --> 00:27:51,760
have today. 
And even today we feel like it 

507
00:27:51,760 --> 00:27:53,160
could be faster, it could be 
faster. 

508
00:27:53,160 --> 00:27:55,280
So we have a need for speed, 
right? 

509
00:27:55,280 --> 00:27:59,960
Like this speed is exciting, 
it's fun, but then we need to, 

510
00:28:00,040 --> 00:28:03,640
you know, move on to the next. 
OK, So if that's true now, then 

511
00:28:03,640 --> 00:28:05,120
what's the next thing to think 
about? 

512
00:28:05,120 --> 00:28:09,600
So I reckon developers will end 
up spending more time thinking 

513
00:28:09,600 --> 00:28:13,760
about how you verify that the 
work that you've, the code 

514
00:28:13,760 --> 00:28:15,760
that's been written does what 
it's supposed to do. 

515
00:28:15,760 --> 00:28:19,960
And I'm not talking about unit 
tests or even test automation, 

516
00:28:20,280 --> 00:28:23,680
they're a part of it. 
But we're starting to see, I 

517
00:28:23,680 --> 00:28:26,960
only learnt last week, this 
concept of product managers 

518
00:28:27,480 --> 00:28:33,360
building what they call evals. 
So apparently in 2025, evals are

519
00:28:33,400 --> 00:28:36,840
the new thing that product 
managers are starting to think 

520
00:28:36,840 --> 00:28:40,040
about to evaluate whether the 
product that they're building 

521
00:28:40,040 --> 00:28:44,840
that has AI embedded in it does 
what it's supposed to do safely 

522
00:28:44,840 --> 00:28:48,160
and, and all of that. 
And it's not quite the same as 

523
00:28:48,360 --> 00:28:51,960
the test automation that we've 
as coders we've traditionally 

524
00:28:52,240 --> 00:28:54,840
built and relied on, but it's 
broader than that. 

525
00:28:55,280 --> 00:28:58,000
And it's super interesting. 
Like already like that didn't 

526
00:28:58,000 --> 00:29:01,760
exist two years ago, you know, 
So I think new things like that 

527
00:29:01,760 --> 00:29:06,160
will come up and we'll have to 
find innovative ways to automate

528
00:29:06,160 --> 00:29:09,880
that and stitch it into our 
pipelines and anything and 

529
00:29:09,880 --> 00:29:14,080
everything around that. 
Yet even just figuring out when 

530
00:29:14,080 --> 00:29:19,320
to trust an AI coding assistant,
that in itself, that probably 

531
00:29:19,600 --> 00:29:21,760
requires a huge amount of 
research. 

532
00:29:22,000 --> 00:29:26,000
How do you know? 
Trust is a big topic and it's 

533
00:29:26,000 --> 00:29:28,800
not one that we typically talk 
about in software engineering. 

534
00:29:29,440 --> 00:29:32,360
I would say, I'm sure it might 
come up, but almost like as a 

535
00:29:32,360 --> 00:29:36,720
side effect of something else. 
But trust is kind of a very 

536
00:29:36,720 --> 00:29:39,480
heavy psychological thing. 
You know, you have the person 

537
00:29:39,960 --> 00:29:42,040
that trusts or, and the trustee,
I guess. 

538
00:29:42,040 --> 00:29:45,640
So you have to try and work out,
you know, when I say I trust a 

539
00:29:45,640 --> 00:29:50,440
tool, what's my belief in its 
ability, you know, and versus 

540
00:29:50,760 --> 00:29:54,400
the other side of the equation. 
So, so maybe we can find ways to

541
00:29:54,400 --> 00:29:57,920
systematize that trust so that 
it results in a better 

542
00:29:57,920 --> 00:30:03,560
calibrated trust so that we 
don't end up almost washing 

543
00:30:03,680 --> 00:30:06,760
ethics, you know, like ethic 
washing, where we think we've 

544
00:30:06,920 --> 00:30:10,520
trusted, it's trustworthy. 
But are we just overlooking 

545
00:30:10,520 --> 00:30:12,960
something deeper? 
There will be a whole bunch of 

546
00:30:12,960 --> 00:30:16,400
new jobs that arise out of all 
of this, like specialties, I 

547
00:30:16,400 --> 00:30:17,960
suppose. 
But for now, I think 

548
00:30:18,560 --> 00:30:23,160
generalizing your knowledge is 
to, to get through this near 

549
00:30:23,160 --> 00:30:26,280
term phase. 
I would say that becoming, 

550
00:30:26,520 --> 00:30:29,880
moving back towards being a bit 
more of a generalist, certainly 

551
00:30:29,880 --> 00:30:33,760
less specialising on the 
libraries or the syntax, because

552
00:30:33,760 --> 00:30:36,360
the bots can do that rather 
well, is a good idea. 

553
00:30:36,360 --> 00:30:40,000
And in future we might find new 
specialist roles that crop up. 

554
00:30:40,600 --> 00:30:43,400
The world's our oyster. 
I think we're creating these 

555
00:30:43,440 --> 00:30:47,080
paths, so I think that's an 
important aspect to consider. 

556
00:30:47,880 --> 00:30:50,240
Yeah. 
So I think the need for speed is

557
00:30:50,680 --> 00:30:52,320
in everyone's mind these days, 
right? 

558
00:30:52,320 --> 00:30:55,920
So they think with AI we can be 
more productive, we can work on 

559
00:30:55,920 --> 00:30:59,360
more, we can deliver faster. 
And I think the temptation is 

560
00:30:59,360 --> 00:31:01,440
there. 
So when I say like, I'm becoming

561
00:31:01,440 --> 00:31:03,720
much more hands on, right? 
I become a developer, right? 

562
00:31:03,920 --> 00:31:07,280
So supercharged with disability,
we would like to think that we 

563
00:31:07,280 --> 00:31:09,480
want to be faster as well. 
Like, you know, churning out 

564
00:31:09,840 --> 00:31:12,520
code sometimes even if the 
requirements is a little bit 

565
00:31:12,520 --> 00:31:15,720
vague, we can speed up just by 
taking our assumptions and 

566
00:31:15,720 --> 00:31:18,040
deliver things, at least get 
something done, right? 

567
00:31:18,320 --> 00:31:19,600
So I think the temptation is 
there. 

568
00:31:19,720 --> 00:31:21,520
And you mentioned about 
vigilance, right? 

569
00:31:21,520 --> 00:31:25,840
So every time when you write a 
code and you ask AI so many 

570
00:31:25,840 --> 00:31:29,280
times, right, I would assume 
that everyone will start to 

571
00:31:29,280 --> 00:31:33,320
build some kind of trust simply 
because it becomes like a close 

572
00:31:33,320 --> 00:31:36,160
friend of yours, right? 
And I remember back then when we

573
00:31:36,160 --> 00:31:38,880
Googled as well, right? 
Anything that is top ranked, 

574
00:31:38,880 --> 00:31:40,680
we'll just assume that it's 
true, right? 

575
00:31:40,680 --> 00:31:43,720
It's more accurate. 
So I think these days especially

576
00:31:43,720 --> 00:31:47,960
people will just easily trust AI
and especially with coding, it 

577
00:31:47,960 --> 00:31:50,760
becomes much more. 
The feedback loop is very short,

578
00:31:50,760 --> 00:31:52,120
right? 
When you ask question, it gives 

579
00:31:52,120 --> 00:31:55,160
back and then you continue and 
build features on top of that. 

580
00:31:55,800 --> 00:31:59,040
So I think you remind us a very 
good point about vigilance and 

581
00:31:59,040 --> 00:32:02,880
trust, right? 
So try not to assume everything 

582
00:32:02,880 --> 00:32:04,680
that AI gives us is actually 
true. 

583
00:32:05,040 --> 00:32:07,200
Which comes to the next 
discussion that I want to bring 

584
00:32:07,200 --> 00:32:09,200
up. 
It's about over reliance on AII 

585
00:32:09,200 --> 00:32:10,880
can actually feel it myself as 
well. 

586
00:32:11,600 --> 00:32:15,520
So every time I need to do 
something, be big or small, I 

587
00:32:15,520 --> 00:32:19,160
would need to ask AI, you know, 
some as a like giving me a fresh

588
00:32:19,160 --> 00:32:22,640
pair of perspectives or maybe 
even criticize, summarise and 

589
00:32:22,640 --> 00:32:25,080
all those things. 
So what do you think is the 

590
00:32:25,080 --> 00:32:27,240
danger of this over reliance on 
AI? 

591
00:32:28,160 --> 00:32:30,760
Well, that's a great question. 
It's one of the things I think 

592
00:32:30,760 --> 00:32:34,680
about a lot because like you, I 
also feel it in myself like it. 

593
00:32:35,040 --> 00:32:39,040
It's too appealing. 
You know, you've got this tool 

594
00:32:39,040 --> 00:32:43,920
that is never tired. 
It's always available as long as

595
00:32:43,920 --> 00:32:48,480
you, you know, pay for it or the
free one or and don't exhaust 

596
00:32:48,480 --> 00:32:52,280
your obtaining limits. 
But it's just so helpful to have

597
00:32:52,280 --> 00:32:55,000
this sort of second pair of eyes
there that's there as your 

598
00:32:55,000 --> 00:32:58,280
helper. 
But I'm a firm believer that we 

599
00:32:58,280 --> 00:33:01,400
learn through experience, hands 
on experience. 

600
00:33:01,400 --> 00:33:07,080
You know, you can read, watch 
all the YouTube videos about 

601
00:33:07,080 --> 00:33:10,720
something that you can find. 
But at the end of the day, if 

602
00:33:10,720 --> 00:33:15,000
you don't have a variety of 
experiences, and I think we 

603
00:33:15,000 --> 00:33:17,840
spoke about this four years ago,
I think I talked about the 

604
00:33:17,840 --> 00:33:21,800
Dreyfus model and how you go 
through from novice to expert 

605
00:33:22,120 --> 00:33:25,200
over 10 years apparently of 
skills acquisition. 

606
00:33:25,440 --> 00:33:29,560
And that skills acquisition is 
built through experience through

607
00:33:29,560 --> 00:33:34,240
10 years of experiencing a 
variety of at the different 

608
00:33:34,240 --> 00:33:36,760
angles of the same skill, right?
You can't just practice the 

609
00:33:36,760 --> 00:33:40,840
same, the same song on a guitar 
and become a, you know, the best

610
00:33:40,840 --> 00:33:44,920
guitar player in on the world. 
So from that perspective, if you

611
00:33:44,960 --> 00:33:49,760
are outsourcing or delegating a 
lot of what you do to this bot, 

612
00:33:49,760 --> 00:33:52,200
then you yourself are not 
experiencing it. 

613
00:33:52,200 --> 00:33:56,360
You're not experiencing the 
friction, the frustration, the 

614
00:33:56,360 --> 00:34:00,800
pain, the resolution that you 
come up with through your own 

615
00:34:00,800 --> 00:34:03,080
critical thinking. 
You're kind of offloading that 

616
00:34:03,560 --> 00:34:06,640
to something else. 
And what does that mean for our 

617
00:34:06,640 --> 00:34:11,880
ability to gain those skills? 
Now, I'm really not sure because

618
00:34:12,360 --> 00:34:15,800
research will tell you that 
deliberate practice is indeed 

619
00:34:15,800 --> 00:34:20,440
the best way to learn something.
Yes, simply reviewing something 

620
00:34:20,440 --> 00:34:23,360
else is you'll get a feel for 
it, but you're not going to have

621
00:34:23,360 --> 00:34:25,040
that confidence to go and do it 
yourself. 

622
00:34:25,719 --> 00:34:31,679
So I am quite sure that if we 
keep going down the path that 

623
00:34:31,679 --> 00:34:35,719
we're going, which I can't see 
us not, and we all become super 

624
00:34:35,719 --> 00:34:40,719
reliant on this, these new tools
that over time we'll all become 

625
00:34:40,719 --> 00:34:43,400
quite rusty at the thing that we
used to do by hand. 

626
00:34:43,679 --> 00:34:45,840
And we'll become very dependent 
on these tools. 

627
00:34:45,840 --> 00:34:49,000
And to some degree it's a bit 
like the calculator, you know, 

628
00:34:49,000 --> 00:34:54,239
like how many of us even, to sum
up a pretty simple, you know, 

629
00:34:54,239 --> 00:34:57,040
additional subtraction, we pull 
out the calculator just in case,

630
00:34:57,040 --> 00:35:01,640
you know, or GPS, right? 
It's quite funny, but my husband

631
00:35:01,640 --> 00:35:06,040
is not good with directions and 
fully relies on GPS. 

632
00:35:06,040 --> 00:35:08,960
Without GPS, he's just not 
confident about getting where he

633
00:35:08,960 --> 00:35:11,200
needs to go. 
There's plenty of other skills, 

634
00:35:11,200 --> 00:35:14,240
but directions and following 
them, you know, has to be the 

635
00:35:14,240 --> 00:35:16,320
GPS. 
And that's something that 

636
00:35:16,320 --> 00:35:19,080
previously you would have 
figured out himself, you know, 

637
00:35:19,080 --> 00:35:21,600
and he would have learnt the way
to a place and then never 

638
00:35:21,600 --> 00:35:23,360
forgotten it. 
But now he never needs to learn 

639
00:35:23,360 --> 00:35:26,480
it because the GPS will take him
there every time until his phone

640
00:35:26,480 --> 00:35:28,760
runs out of battery and then he 
just can't get there. 

641
00:35:28,880 --> 00:35:30,880
It's OK, I'm not going there 
today because I can't. 

642
00:35:32,160 --> 00:35:34,360
You solve the right. 
In that case, you would solve 

643
00:35:34,360 --> 00:35:37,520
the problem of putting giving 
your battery a bit more juice so

644
00:35:37,520 --> 00:35:39,840
that you can then use GPS to 
then get to the place that 

645
00:35:39,840 --> 00:35:43,040
you're going to, right? 
So I wonder if at some point 

646
00:35:43,040 --> 00:35:45,880
we're all going to become so 
dependent on these tools, not 

647
00:35:45,880 --> 00:35:49,120
just for coding, but for a lot 
of aspects of our lives that 

648
00:35:49,440 --> 00:35:51,680
we're going to have this like 
virtual assistant in our back 

649
00:35:51,680 --> 00:35:55,720
pocket that is just always on 
and ready to help us. 

650
00:35:56,320 --> 00:36:00,800
And I do wonder if we might head
to a place where we each have 

651
00:36:00,800 --> 00:36:04,920
our own AI that knows us 
intimately, you know, and that 

652
00:36:04,920 --> 00:36:09,200
we can kind of bring to work 
almost, you know, so we're 

653
00:36:09,200 --> 00:36:12,520
already seeing it to some degree
with the GitHub copilot. 

654
00:36:12,520 --> 00:36:15,560
Like it's allows you to connect 
to a number of different models,

655
00:36:15,920 --> 00:36:19,400
but what if it could also 
connect to a model that is 

656
00:36:19,560 --> 00:36:23,000
yours, is your personal one that
knows the way that you think, 

657
00:36:23,400 --> 00:36:27,280
your interests, you know, the 
way that you tend to think about

658
00:36:27,280 --> 00:36:33,320
things and is more tuned to you.
I suspect Open AI and Sam 

659
00:36:33,320 --> 00:36:36,120
Altman, they're going in that 
direction from what I heard in 

660
00:36:36,120 --> 00:36:37,640
the video that I watched 
yesterday. 

661
00:36:37,640 --> 00:36:40,880
Like he really sees a world in 
which everyone has their own 

662
00:36:40,880 --> 00:36:47,600
personalized ChatGPT in terms of
raw skills, maybe the skill that

663
00:36:47,600 --> 00:36:50,600
we'll learn really. 
And actually that's a good point

664
00:36:50,600 --> 00:36:54,400
because there's the World 
Economic Forum produced a report

665
00:36:54,400 --> 00:36:59,520
on the future of jobs. 
And in that it's like a 290 page

666
00:37:00,080 --> 00:37:02,760
PDF. 
So without getting an AI to 

667
00:37:02,760 --> 00:37:06,640
summarize it for me, I don't 
know if we're actually sit down 

668
00:37:06,640 --> 00:37:07,920
and read the whole thing into 
it. 

669
00:37:08,320 --> 00:37:11,080
I don't have enough time. 
But there's some really nice 

670
00:37:11,280 --> 00:37:15,000
visualizations and one in 
particular, they show the skills

671
00:37:15,000 --> 00:37:18,240
that are becoming more 
important, that are already 

672
00:37:18,240 --> 00:37:21,480
important and they project will 
become more important are things

673
00:37:21,480 --> 00:37:27,480
like resilience, agility, 
flexibility, you know, basically

674
00:37:27,480 --> 00:37:31,160
embracing change. 
These not skills that we really 

675
00:37:31,320 --> 00:37:34,200
learn as a subject at school or 
at university, you know, they're

676
00:37:34,200 --> 00:37:38,040
kind of just life skills that 
you build up as you mature. 

677
00:37:38,040 --> 00:37:42,720
So how, how do we teach people 
these things earlier on in their

678
00:37:42,720 --> 00:37:46,520
lives? 
How do we kind of leapfrog 

679
00:37:46,920 --> 00:37:51,520
experience and all of that that 
life gives you naturally and 

680
00:37:51,520 --> 00:37:54,800
sort of try and instill that 
type of thinking in the next 

681
00:37:54,800 --> 00:37:57,640
generation? 
There's some really big problems

682
00:37:57,640 --> 00:38:02,960
to solve, you know, to fully 
understand how we can leverage 

683
00:38:02,960 --> 00:38:07,640
these tools without giving away 
everything that, you know, as 

684
00:38:07,640 --> 00:38:11,640
humans, we've been used to doing
ourselves, which is what makes 

685
00:38:11,640 --> 00:38:14,600
this very exciting and scary at 
the same time. 

686
00:38:15,760 --> 00:38:18,040
Yeah. 
So I think, yeah, open AI is 

687
00:38:18,360 --> 00:38:21,080
releasing this thing called 
memories probably right in maybe

688
00:38:21,080 --> 00:38:24,400
in your ChatGPT. 
And also the trend seems to be 

689
00:38:24,400 --> 00:38:27,920
like the larger and the larger 
context that AI model is able to

690
00:38:27,920 --> 00:38:29,960
use, right? 
Yeah, I think maybe one day, 

691
00:38:29,960 --> 00:38:33,840
like what you said, we can have 
a personal clone of us maybe 

692
00:38:34,120 --> 00:38:37,240
that can think of feel just like
us feel is probably a bit too 

693
00:38:37,240 --> 00:38:39,280
far. 
But I guess the thinking, you 

694
00:38:39,280 --> 00:38:41,960
know, the kind of rationale, the
kind of styles that we use in 

695
00:38:41,960 --> 00:38:45,160
terms of our output, right? 
Bit writing code, it's something

696
00:38:45,160 --> 00:38:48,160
that AI can learn as well. 
So definitely it's something 

697
00:38:48,600 --> 00:38:50,920
maybe exciting but also scary at
the same time. 

698
00:38:51,320 --> 00:38:55,600
And you mentioned that we human 
would love to learn by doing, 

699
00:38:55,720 --> 00:38:57,640
you know, like the experiential 
aspect, right. 

700
00:38:57,920 --> 00:38:59,920
And I think also software 
engineering is like a 

701
00:38:59,920 --> 00:39:03,120
craftsmanship thing, right? 
You cannot just, you know, learn

702
00:39:03,120 --> 00:39:05,680
software by reading book type 
hello world and you know, you 

703
00:39:05,680 --> 00:39:08,040
become a software engineer. 
So there's so many different 

704
00:39:08,040 --> 00:39:11,000
aspects like design, you know, 
maybe non functional 

705
00:39:11,000 --> 00:39:14,240
requirements, maybe be it the 
deployment network, things like 

706
00:39:14,240 --> 00:39:16,560
that. 
So in your blocks, actually you 

707
00:39:16,560 --> 00:39:20,440
mentioned about this trend of 
software engineering or software

708
00:39:20,440 --> 00:39:24,280
engineer now has this kind of 
identity crisis this day, right?

709
00:39:24,280 --> 00:39:26,640
Like what you mentioned, right? 
So many things now is available 

710
00:39:26,640 --> 00:39:29,440
to us. 
Maybe our roles have become much

711
00:39:29,440 --> 00:39:32,520
more, I would say changing a 
lot, like demanding. 

712
00:39:32,520 --> 00:39:36,120
At the same time, everyone is 
scared of their job because the 

713
00:39:36,120 --> 00:39:38,720
news always say, OK, we can 
reduce the number of of 

714
00:39:38,720 --> 00:39:41,200
engineers. 
Junior engineers will not be 

715
00:39:41,200 --> 00:39:44,080
needed anymore. 
So tell us about this identity 

716
00:39:44,080 --> 00:39:46,000
crisis. 
I'm sure everyone is feeling it.

717
00:39:46,000 --> 00:39:48,960
I'm feeling it myself as well. 
What is your take about this 

718
00:39:48,960 --> 00:39:51,640
identity crisis? 
Well, it's funny you should 

719
00:39:51,640 --> 00:39:53,480
mention that particular blog 
post. 

720
00:39:53,480 --> 00:39:57,960
It's the the last one that I 
published and it's by far the 

721
00:39:57,960 --> 00:40:02,720
most popular blog post I have 
ever, ever written or even could

722
00:40:02,720 --> 00:40:04,640
have conceivably imagined 
writing. 

723
00:40:05,040 --> 00:40:08,760
Just so you know, to be 
completely transparent, I've had

724
00:40:08,760 --> 00:40:11,320
a blog in the past which went 
nowhere. 

725
00:40:11,320 --> 00:40:12,800
I was just yelling into the 
wind. 

726
00:40:12,800 --> 00:40:16,080
Nobody cared. 
And I started off a blog again a

727
00:40:16,320 --> 00:40:19,360
couple of years ago, maybe a 
year and a half ago, figured, Oh

728
00:40:19,360 --> 00:40:22,480
well, at least it'll get me 
writing. 

729
00:40:22,480 --> 00:40:24,480
You know, I have a lot of 
thoughts about things and I've 

730
00:40:25,040 --> 00:40:28,200
aside from. 
Filling my poor husband's ears 

731
00:40:28,240 --> 00:40:31,040
with all of my thoughts. 
I thought maybe I can just pour 

732
00:40:31,040 --> 00:40:32,800
it into my writing and put it 
in. 

733
00:40:33,160 --> 00:40:35,600
But for the most part, my blog 
doesn't get all that much 

734
00:40:35,600 --> 00:40:37,360
traffic. 
But this particular blog post 

735
00:40:37,360 --> 00:40:41,480
I've had, I think at the last 
count, 43,000 views of it in 

736
00:40:41,480 --> 00:40:44,840
less than a month. 
And yeah, I couldn't have 

737
00:40:44,840 --> 00:40:47,520
imagined such a response. 
And also people reaching out to 

738
00:40:47,520 --> 00:40:50,720
me about it as well. 
They're wanting to either thank 

739
00:40:50,720 --> 00:40:55,520
me for writing it because it 
resonated for them or, you know,

740
00:40:55,680 --> 00:40:59,760
sharing it with their own, their
own networks because it meant 

741
00:40:59,760 --> 00:41:01,880
something to them. 
And other people are commenting 

742
00:41:01,880 --> 00:41:03,960
on it. 
So it's clearly hit a nerve, 

743
00:41:04,200 --> 00:41:07,640
which is quite interesting. 
But what does that mean? 

744
00:41:08,720 --> 00:41:14,000
See, I wrote that from, it was a
very heartfelt blog post from my

745
00:41:14,000 --> 00:41:17,240
perspective because like I said,
I started coding when, well, 

746
00:41:17,240 --> 00:41:19,960
started coding. 
I started playing with code when

747
00:41:19,960 --> 00:41:22,800
I was six years old, and it was 
BASIC at the time, right? 

748
00:41:23,360 --> 00:41:28,360
But the feeling that I got when 
I saw my work turn into 

749
00:41:28,360 --> 00:41:32,960
something on the computer was 
probably, you know, it was 

750
00:41:32,960 --> 00:41:36,400
certainly at that age, the best 
feeling I'd ever had, you know, 

751
00:41:37,000 --> 00:41:40,120
to see this. 
It was a smiling bounce a :) 

752
00:41:40,120 --> 00:41:41,680
that bounced around the screen, 
a Sprite. 

753
00:41:42,160 --> 00:41:44,400
And it was just one of the 
examples in the BASIC manual 

754
00:41:44,400 --> 00:41:48,240
that came with the Commodore 64.
And ever since then, you know, 

755
00:41:48,240 --> 00:41:51,320
I've really held onto that. 
The craft itself, the knowledge 

756
00:41:51,320 --> 00:41:55,200
that you've written some words 
that have turned into this cool 

757
00:41:55,200 --> 00:41:57,960
thing. 
It's like it's more than just 

758
00:41:57,960 --> 00:42:00,920
solving a puzzle, right? 
And there's a beauty behind it. 

759
00:42:01,440 --> 00:42:04,000
And I think a lot of software 
engineers feel that way about 

760
00:42:04,000 --> 00:42:06,280
their code. 
There's a reason that things 

761
00:42:06,280 --> 00:42:11,840
like lead code websites exist 
because we like to solve 

762
00:42:12,240 --> 00:42:16,440
existing problems in new and 
imaginative ways using a 

763
00:42:16,440 --> 00:42:19,640
slightly different technique 
that is that much faster, more 

764
00:42:19,640 --> 00:42:21,360
efficient or more memory 
efficient. 

765
00:42:21,360 --> 00:42:25,640
Or, you know, and we like to you
know, some of us might even, we 

766
00:42:25,640 --> 00:42:27,760
certainly feel some a level of 
pride. 

767
00:42:27,800 --> 00:42:30,440
We might boast about our, you 
know, being top of the 

768
00:42:30,440 --> 00:42:35,280
leaderboard on leet code. 
I wish like I've never been good

769
00:42:35,280 --> 00:42:37,240
enough to make it anywhere near 
that. 

770
00:42:37,480 --> 00:42:40,800
But, you know, a lot of software
engineers tie their at least 

771
00:42:40,800 --> 00:42:44,120
their professional identity into
their work and into the quality 

772
00:42:44,120 --> 00:42:45,440
of the code that they're 
producing. 

773
00:42:46,320 --> 00:42:52,040
And so if that is now kind of 
not the point because these 

774
00:42:52,040 --> 00:42:53,600
tools can generate the code for 
you. 

775
00:42:53,600 --> 00:42:57,400
So really the point becomes more
about solving the customer's 

776
00:42:57,400 --> 00:43:00,240
problem. 
But as we spoke about earlier, 

777
00:43:00,720 --> 00:43:03,760
over the last 10-15 years, you 
know, we've even had to 

778
00:43:03,760 --> 00:43:08,920
introduce new titles like 
product engineer to refer to a 

779
00:43:08,960 --> 00:43:12,320
software engineer who actually 
cares about the whole problem 

780
00:43:12,320 --> 00:43:14,640
that's being solved, the product
that's being built and the 

781
00:43:14,640 --> 00:43:17,920
customer at the end of the value
chain that, you know, actually 

782
00:43:18,120 --> 00:43:20,280
makes use of the solution that 
you're building. 

783
00:43:20,920 --> 00:43:25,680
Because somehow we've lost the 
sight of perhaps why we were 

784
00:43:25,680 --> 00:43:27,720
building that code. 
Because it just the act of 

785
00:43:27,720 --> 00:43:30,160
building the coding and using 
different libraries and 

786
00:43:30,160 --> 00:43:33,800
frameworks and new and 
interesting ways became, you 

787
00:43:33,800 --> 00:43:35,760
know, so interesting for so many
people. 

788
00:43:35,760 --> 00:43:41,760
So in that regard, how do we 
take that passion and apply it a

789
00:43:42,200 --> 00:43:45,920
little bit more broadly? 
Some people might still be able 

790
00:43:45,920 --> 00:43:51,200
to spend their energy and their 
passion building things at the 

791
00:43:51,200 --> 00:43:53,840
code level, but maybe even the 
type of things they build might 

792
00:43:53,840 --> 00:43:56,800
change, you know? 
So maybe if that's the area that

793
00:43:56,800 --> 00:43:59,960
really brings you the most joy, 
then maybe start looking at 

794
00:43:59,960 --> 00:44:03,360
things like Agent Development 
Kit and these new frameworks 

795
00:44:03,360 --> 00:44:06,800
that are coming up that allow 
you to build solutions that have

796
00:44:07,040 --> 00:44:10,000
AI embedded in them. 
You know, so there's, we're 

797
00:44:10,000 --> 00:44:13,760
still forging new paths around 
that like MCP great. 

798
00:44:13,760 --> 00:44:17,040
But you know, already we're 
finding some new vulnerabilities

799
00:44:17,040 --> 00:44:19,440
that might creep in. 
So, you know, get good at 

800
00:44:19,440 --> 00:44:22,120
building the tools that protect 
us from things like that. 

801
00:44:22,400 --> 00:44:28,040
There's going to have to be some
sort of AI version of SRE, you 

802
00:44:28,040 --> 00:44:31,320
know, so when you have AI 
embedded in your systems, then 

803
00:44:31,320 --> 00:44:35,000
how do you do observability and 
monitoring and resilience and 

804
00:44:35,000 --> 00:44:37,000
all of that? 
So, you know, there will be 

805
00:44:37,000 --> 00:44:40,480
things that are maybe closer to 
the what we would consider 

806
00:44:40,480 --> 00:44:45,320
coding today in future for these
new solutions we might build. 

807
00:44:45,800 --> 00:44:48,760
But for anybody who was already 
at a point in their career where

808
00:44:48,760 --> 00:44:51,160
they were thinking maybe it's 
time to consider a management 

809
00:44:51,160 --> 00:44:53,880
role because you know, I don't 
find coding the hard part 

810
00:44:53,880 --> 00:44:56,960
anymore. 
You know, maybe their start 

811
00:44:56,960 --> 00:45:00,480
thinking about how best to 
leverage these tools, how to 

812
00:45:00,480 --> 00:45:04,720
manage that calibrated trust and
automate some of that eval 

813
00:45:04,800 --> 00:45:10,480
verification. 
How do you layer the kind of a 

814
00:45:10,560 --> 00:45:16,720
distributed cognitive support 
where you end up with layers of 

815
00:45:16,840 --> 00:45:20,080
AI agents that check each 
other's homework? 

816
00:45:20,520 --> 00:45:23,680
You know, and I think we see 
that already in some tools and 

817
00:45:23,680 --> 00:45:27,880
that's likely, and Sam Altman 
said this in his talk that I 

818
00:45:28,040 --> 00:45:31,320
listened to yesterday as well. 
Like he's, we can see that the 

819
00:45:31,320 --> 00:45:35,360
current version of LLM's have 
already revolutionize software 

820
00:45:35,360 --> 00:45:38,640
engineering in particular and 
starting to revolutionize many 

821
00:45:38,640 --> 00:45:40,520
other things, but software 
engineering for sure. 

822
00:45:40,800 --> 00:45:43,560
The next thing he's very 
interested in is agentic AI. 

823
00:45:43,560 --> 00:45:47,400
And I completely agree. 
You know, so LLMS are kind of 

824
00:45:47,400 --> 00:45:51,120
like 1 component. 
That's fine and we're all using 

825
00:45:51,120 --> 00:45:54,760
them in our own different ways. 
But the power will come when you

826
00:45:55,240 --> 00:45:59,720
create a system that is made-up 
of many components, some of 

827
00:45:59,720 --> 00:46:04,600
which might be LLMS and then 
potentially controlled by an 

828
00:46:04,600 --> 00:46:06,760
orchestrator that is an LLM 
itself. 

829
00:46:06,760 --> 00:46:10,520
And that's where you get that 
kind of extreme non determinism 

830
00:46:10,520 --> 00:46:14,240
because you just give the system
a task and it figures out for 

831
00:46:14,240 --> 00:46:17,760
itself which agent it's going to
call, which tool it's going to 

832
00:46:17,760 --> 00:46:20,320
use. 
It may just not go down the path

833
00:46:20,320 --> 00:46:23,120
you expected at all. 
So those will be very 

834
00:46:23,120 --> 00:46:29,080
interesting systems to create, 
to test, to maintain, to reason 

835
00:46:29,080 --> 00:46:32,120
about, you know, so there will 
be work in that area. 

836
00:46:32,120 --> 00:46:36,240
But so that's, yeah, becoming 
slightly more generalist, 

837
00:46:36,720 --> 00:46:40,040
becomes really good at using 
these tools, building these 

838
00:46:40,040 --> 00:46:43,760
tools and also managing these 
tools, wrangling these tools. 

839
00:46:43,760 --> 00:46:46,360
Like how do you fix the system 
when it stops working? 

840
00:46:46,360 --> 00:46:50,600
How do you improve it? 
These will become some new 

841
00:46:50,600 --> 00:46:54,800
interesting jobs in the future. 
But what do we do about our 

842
00:46:54,800 --> 00:46:59,840
junior engineers like the me of,
you know, 20-30 years ago who 

843
00:46:59,840 --> 00:47:01,360
wanted to be a software 
engineer? 

844
00:47:02,080 --> 00:47:04,080
That's a tough one. 
It's going to be hard, I think, 

845
00:47:04,080 --> 00:47:08,080
for some to break into the 
industry harder than it was, 

846
00:47:08,080 --> 00:47:10,440
say, three years ago. 
Yeah. 

847
00:47:10,440 --> 00:47:14,200
So I think everyone is feeling 
this kind of identity crisis in 

848
00:47:14,200 --> 00:47:16,280
their role, right? 
Funny enough, probably it hits a

849
00:47:16,280 --> 00:47:19,000
lot of nurse simply because we 
are feeling it, especially for 

850
00:47:19,000 --> 00:47:22,200
people who are using it. 
But for those people who are not

851
00:47:22,200 --> 00:47:25,640
using it, maybe they don't know 
yet, but I think it's very, very

852
00:47:25,640 --> 00:47:28,360
concerning if they don't start 
picking up, you know, at least 

853
00:47:28,360 --> 00:47:30,640
understanding what these two is 
capable of, right. 

854
00:47:31,120 --> 00:47:34,720
And I think you mentioned about,
you know, juniors, I think the 

855
00:47:34,720 --> 00:47:37,440
other day I went into like a 
meet up, you know, small meet up

856
00:47:37,440 --> 00:47:40,960
within, you know, my area, some 
managers, some leaders even 

857
00:47:40,960 --> 00:47:45,600
saying that, oh, I've tried vibe
coding on certain aspect and it 

858
00:47:45,600 --> 00:47:47,880
seemed to be doing it's job. 
And it's cheap. 

859
00:47:48,000 --> 00:47:52,120
You just spend a few, you know, 
maybe 100 of bucks a month just 

860
00:47:52,120 --> 00:47:55,160
to use these tools. 
And compared to hiring a junior,

861
00:47:55,160 --> 00:47:58,640
maybe a fresh grad who just 
graduated, the economy seems 

862
00:47:58,640 --> 00:48:01,440
like very, very, you know, 
lopsided, right? 

863
00:48:01,440 --> 00:48:04,560
So it seems like leaders 
probably will start to think 

864
00:48:04,560 --> 00:48:06,800
more, OK, how can we leverage AI
more? 

865
00:48:06,800 --> 00:48:09,640
Just like what I mentioned about
a Shopify experience, right? 

866
00:48:10,120 --> 00:48:13,320
So I think for juniors out 
there, maybe looking back at 

867
00:48:13,320 --> 00:48:17,080
you, you know, maybe 30 years 
back, what would you say to 

868
00:48:17,080 --> 00:48:18,280
them? 
Is software engineering still a 

869
00:48:18,280 --> 00:48:21,240
good career for them? 
Because it just to breakthrough 

870
00:48:21,240 --> 00:48:24,440
and get a first job probably is 
a little bit tough and 

871
00:48:24,440 --> 00:48:27,400
especially now in the very 
difficult situations globally, 

872
00:48:27,400 --> 00:48:30,640
you know, with all this 
happening in the US and some 

873
00:48:30,640 --> 00:48:33,040
parts of the world. 
So is there anything that you 

874
00:48:33,040 --> 00:48:37,000
would want to say maybe to the 
younger junior engineers of US? 

875
00:48:37,800 --> 00:48:42,240
I reckon if it's a path that 
you, you know, I would encourage

876
00:48:42,240 --> 00:48:46,800
anyone to follow their dreams. 
Life is there to be lived. 

877
00:48:47,400 --> 00:48:50,160
Don't choose a career that you 
don't think you're going to 

878
00:48:50,160 --> 00:48:54,120
enjoy because you're going to 
spend a lot of your life doing 

879
00:48:54,120 --> 00:48:55,920
it. 
So make sure that whatever it is

880
00:48:55,920 --> 00:48:59,080
that you pick, you know that 
it's something that you enjoy 

881
00:48:59,080 --> 00:49:01,400
doing. 
And if software engineering is 

882
00:49:01,400 --> 00:49:05,480
the path that you had your mind 
set on, and by all means follow 

883
00:49:05,480 --> 00:49:11,240
your heart, but understand that,
say, talking to somebody who is 

884
00:49:11,240 --> 00:49:14,040
five years into their career, 
like you won't be able to follow

885
00:49:14,040 --> 00:49:16,400
in their same footsteps. 
I think it's just going to be 

886
00:49:16,400 --> 00:49:19,720
different. 
So I would encourage them to 

887
00:49:20,200 --> 00:49:24,520
simultaneously try and educate 
themselves on all of the 

888
00:49:24,520 --> 00:49:26,360
fundamentals. 
You know, I'm pretty sure that 

889
00:49:26,360 --> 00:49:29,960
universities are still teaching 
all of that, the basics around 

890
00:49:30,520 --> 00:49:35,400
SOLID principles and yeah, like 
naming conventions and 

891
00:49:35,600 --> 00:49:38,640
algorithms and sorting 
algorithms and all of that. 

892
00:49:39,480 --> 00:49:42,160
Familiarize yourself with that, 
but then get really good at 

893
00:49:42,160 --> 00:49:47,040
using these tools to generate 
code that reflects that 

894
00:49:47,040 --> 00:49:50,440
foundational learning. 
Because I think if you showed up

895
00:49:50,520 --> 00:49:53,120
to a job interview and you said,
sure, I'm a junior, I, you know,

896
00:49:53,120 --> 00:49:57,640
I haven't had much experience or
really any at writing code, but 

897
00:49:57,640 --> 00:50:02,560
I am a master at using all of 
these other tools, cursor and 

898
00:50:02,560 --> 00:50:04,640
lovable, and this tool's good 
for that. 

899
00:50:04,640 --> 00:50:06,880
And then I port it over here and
then I open it here. 

900
00:50:06,880 --> 00:50:09,560
And then I, you know, I look at 
it through this and I know it's 

901
00:50:09,560 --> 00:50:13,080
important to verify because 
these are the sorts of mistakes 

902
00:50:13,080 --> 00:50:15,640
it tends to make. 
And, you know, with all of that 

903
00:50:15,640 --> 00:50:18,800
knowledge, probably find 
yourself being quite in demand 

904
00:50:18,800 --> 00:50:20,760
actually. 
And, you know, maybe they're in 

905
00:50:20,760 --> 00:50:24,640
a perfect position to really 
adopt these new technologies at 

906
00:50:24,640 --> 00:50:27,320
a time that they're coming in, 
you know, those further on in 

907
00:50:27,320 --> 00:50:29,520
their career. 
I have a feeling that in my 

908
00:50:29,520 --> 00:50:33,920
research, what I'm seeing is 
people who are well into their 

909
00:50:33,920 --> 00:50:37,280
career, they might not have been
writing that much code anymore 

910
00:50:37,280 --> 00:50:39,240
anyway. 
So to them, it's kind of like, 

911
00:50:39,240 --> 00:50:41,080
oh, yeah, it's nice. 
But, you know, I might just use 

912
00:50:41,080 --> 00:50:43,760
it to play around with a bit. 
So they almost feel like it's 

913
00:50:43,920 --> 00:50:47,840
not that big a deal. 
But the people kind of part way 

914
00:50:47,840 --> 00:50:50,560
through their career, like Mid 
Korea, I think they're 

915
00:50:50,560 --> 00:50:53,440
struggling with it, right? 
Because they're sort of, OK, So 

916
00:50:53,440 --> 00:50:55,800
do I now need to become really 
good at using this thing? 

917
00:50:55,800 --> 00:50:59,080
Like what I've known to be true 
over the last 10 years is now 

918
00:50:59,080 --> 00:51:01,240
changing? 
That's probably harder than 

919
00:51:01,240 --> 00:51:05,040
somebody who's entering the 
market at this point where, you 

920
00:51:05,040 --> 00:51:06,480
know, where the tools are 
already. 

921
00:51:06,760 --> 00:51:08,720
They've landed. 
They're here to stay. 

922
00:51:09,040 --> 00:51:10,280
They're only going to get 
better. 

923
00:51:10,760 --> 00:51:14,320
And the types of systems we're 
building are changing, how we 

924
00:51:14,320 --> 00:51:16,600
build them are changing. 
So it's done settling. 

925
00:51:16,760 --> 00:51:19,520
But they, you know, juniors 
probably have a unique 

926
00:51:19,520 --> 00:51:23,800
opportunity to help create the 
roles that they want, but 

927
00:51:23,800 --> 00:51:26,160
they're probably going to need 
to have a lot of imagination. 

928
00:51:26,400 --> 00:51:29,000
You know, I think that the 
moment, if you can imagine it, 

929
00:51:29,120 --> 00:51:32,800
you can create it. 
So imagination becomes a really 

930
00:51:32,800 --> 00:51:35,240
important skill. 
But again, we probably don't 

931
00:51:35,240 --> 00:51:36,840
teach it at school all that 
much. 

932
00:51:36,840 --> 00:51:39,720
I don't know, I, I never felt 
like I had much imagination, but

933
00:51:40,280 --> 00:51:43,400
these tools help you be a little
bit more, you know, imaginative 

934
00:51:43,400 --> 00:51:44,840
if you're struggling in that 
domain. 

935
00:51:45,360 --> 00:51:48,160
But yeah, imagination, 
creativity, you know, the 

936
00:51:48,160 --> 00:51:51,360
confidence to try it, use a tool
to help you have the confidence 

937
00:51:51,360 --> 00:51:54,320
to, you know, it's very circular
in a way like that. 

938
00:51:54,320 --> 00:51:58,880
So I wouldn't say all hope is 
lost for junior engineers, just 

939
00:51:58,880 --> 00:52:01,240
that the type of work they're 
going to be doing will be 

940
00:52:01,240 --> 00:52:03,120
different. 
So they probably won't have as 

941
00:52:03,120 --> 00:52:07,200
much guidance as perhaps the 
last 10-15 years worth of new 

942
00:52:07,200 --> 00:52:11,000
engineers have had. 
But yeah, as leaders, we need to

943
00:52:11,000 --> 00:52:14,480
be able to systematize what that
looks like as well, like 

944
00:52:14,480 --> 00:52:17,360
potentially change our career 
ladders and the sorts of skills 

945
00:52:17,360 --> 00:52:20,440
we expect people to build up and
how we measure their 

946
00:52:20,680 --> 00:52:23,120
performance. 
You know, maybe it becomes a 

947
00:52:23,520 --> 00:52:26,640
measurement of how well are you 
using these tools, which is 

948
00:52:27,240 --> 00:52:31,040
quite different to how well do 
you understand the SOLID 

949
00:52:31,040 --> 00:52:34,680
principles, you know? 
Yeah, we all have to adjust. 

950
00:52:35,600 --> 00:52:38,480
Yeah, very interesting that you 
mentioned about, you know, the 

951
00:52:38,480 --> 00:52:42,360
juniors now have the time to 
actually learn these tools, you 

952
00:52:42,360 --> 00:52:45,080
know, from the get go, right. 
So I was having another 

953
00:52:45,080 --> 00:52:46,720
conversation, another episode as
well. 

954
00:52:46,880 --> 00:52:49,760
We have a term about it like AI 
native, you know, AI native 

955
00:52:49,760 --> 00:52:52,280
developers just like, you know, 
social media aspect, right? 

956
00:52:52,280 --> 00:52:55,240
The youngsters these days are 
much more savvy than maybe I 

957
00:52:55,240 --> 00:52:57,840
would say me, you know, using 
social media. 

958
00:52:57,840 --> 00:53:01,040
They have even different 
interaction patterns and maybe 

959
00:53:01,040 --> 00:53:03,480
the way to leverage social 
media. 

960
00:53:03,800 --> 00:53:06,640
So some of us maybe it's 
generational thing, right? 

961
00:53:06,640 --> 00:53:10,200
Like we were not trained using 
that and now we have to adapt in

962
00:53:10,200 --> 00:53:12,400
the middle of what we used to 
believe. 

963
00:53:12,760 --> 00:53:15,400
And now adopting these new 
techniques, these new tools, 

964
00:53:15,720 --> 00:53:18,440
they seem a little bit icky for 
some of us there because, like, 

965
00:53:18,440 --> 00:53:19,880
what do you mean? 
I used to do this. 

966
00:53:19,880 --> 00:53:23,280
Now I have to change, you know, 
all my habits, all my techniques

967
00:53:23,280 --> 00:53:25,000
and all that. 
Yeah. 

968
00:53:25,280 --> 00:53:27,160
So I think juniors have this 
opportunity. 

969
00:53:27,160 --> 00:53:29,680
I would say that they can learn 
this tool natively, you know, 

970
00:53:29,680 --> 00:53:33,560
like the first thing that they 
can leverage on in their job. 

971
00:53:34,120 --> 00:53:37,320
So you mentioned about the 
aspects of management as well, 

972
00:53:37,320 --> 00:53:39,240
right. 
And management maybe needs to 

973
00:53:39,280 --> 00:53:42,280
tweak their, I don't know, 
performance appraisal, maybe 

974
00:53:42,280 --> 00:53:45,920
hiring, maybe giving tasks to, 
you know, their team. 

975
00:53:46,480 --> 00:53:49,560
What do you see will change a 
lot by for managers? 

976
00:53:49,560 --> 00:53:53,080
And what's the danger? 
And now that everyone is using 

977
00:53:53,080 --> 00:53:56,000
AI, right, as a manager, at the 
end of the day, you're kind of 

978
00:53:56,000 --> 00:53:58,520
like responsible for the 
delivery of your team, you know,

979
00:53:58,520 --> 00:54:01,240
the organization. 
What aspects do you think 

980
00:54:01,520 --> 00:54:03,720
management will need to consider
these days? 

981
00:54:04,680 --> 00:54:12,040
I think the most important 
aspect is not to focus on at 

982
00:54:12,040 --> 00:54:15,000
that speed, right? 
Like, as if that's all we care 

983
00:54:15,000 --> 00:54:19,640
about is are we moving faster, 
Then you'll probably find that 

984
00:54:19,640 --> 00:54:21,680
you have a big price to pay 
later on. 

985
00:54:21,680 --> 00:54:25,280
You know, like, it will hit you 
in the face at a later stage 

986
00:54:26,000 --> 00:54:30,800
when you're not prepared for it.
So really I would say leaders 

987
00:54:30,800 --> 00:54:34,120
today should be thinking about 
how to leverage these tools for 

988
00:54:34,400 --> 00:54:38,280
optimizing quality as much as 
possible, as counterintuitive as

989
00:54:38,280 --> 00:54:40,840
that feels, because the speed is
so seductive, right? 

990
00:54:41,600 --> 00:54:44,720
Use it to leverage the quality 
of the systems that you're 

991
00:54:44,720 --> 00:54:48,520
building because that will in 
turn create sustainable 

992
00:54:48,520 --> 00:54:50,560
productivity gains into the 
future, right? 

993
00:54:51,080 --> 00:54:55,120
That's probably somewhere where 
engineering managers need to 

994
00:54:55,120 --> 00:54:59,480
really reflect on how they 
perceive good performance, 

995
00:54:59,480 --> 00:55:01,920
right? 
How do you even measure building

996
00:55:02,000 --> 00:55:04,320
high quality systems? 
Well, we have some tools 

997
00:55:04,320 --> 00:55:07,240
available like Sonar cube can 
help you with, you know, it's 

998
00:55:07,440 --> 00:55:12,280
was that latest PR increasing or
decreasing Cyclomatic complexity

999
00:55:12,280 --> 00:55:15,160
or you know, code smells or 
things like that. 

1000
00:55:15,160 --> 00:55:18,840
But I would urge people to look 
at that angle of it more than 

1001
00:55:18,840 --> 00:55:22,320
ever because of the speed at 
which we can erode. 

1002
00:55:22,960 --> 00:55:26,000
Like how these reports that we 
see Dora and the get clear one 

1003
00:55:26,000 --> 00:55:29,480
are pretty clear indicators that
things are not moving in the 

1004
00:55:29,480 --> 00:55:32,240
right direction in that sense. 
And I don't know if we keep 

1005
00:55:32,240 --> 00:55:34,600
going down the path that we're 
going, we're probably just going

1006
00:55:34,600 --> 00:55:38,920
to create the next phase will be
a clean up phase where we pay 

1007
00:55:38,920 --> 00:55:43,480
the price of the speed gains 
that we all experimented with in

1008
00:55:43,480 --> 00:55:47,920
2024 or 2025, you know. 
But if we want to avoid doing 

1009
00:55:47,920 --> 00:55:51,920
that, then I think we can 
already maybe start to give a 

1010
00:55:51,920 --> 00:55:56,080
little bit more attention to the
quality aspect of things. 

1011
00:55:56,640 --> 00:56:01,360
And then through that, I suppose
is where you shift the needle on

1012
00:56:01,360 --> 00:56:05,080
what it is that you're expecting
your teams to really focus on. 

1013
00:56:05,560 --> 00:56:07,520
And it has to be adaptive as 
well, right? 

1014
00:56:07,520 --> 00:56:11,240
Because these tools are evolving
so much that maybe today the 

1015
00:56:11,240 --> 00:56:16,120
sort of code that it generates 
is hallucinates and qualities a 

1016
00:56:16,200 --> 00:56:20,120
bit random. 
But maybe in a year's time, a 

1017
00:56:20,120 --> 00:56:23,000
lot of that will be resolved. 
And actually what what we then 

1018
00:56:23,000 --> 00:56:27,280
need to focus on is how do these
LLMS reason about distributed 

1019
00:56:27,280 --> 00:56:28,560
systems? 
You know, because right now 

1020
00:56:28,560 --> 00:56:32,040
they're pretty good at staying 
within the one repository, you 

1021
00:56:32,040 --> 00:56:34,120
know, and they can reason about 
the logic and the workspace 

1022
00:56:34,120 --> 00:56:37,280
there, some more than others. 
But you know, most of our 

1023
00:56:37,280 --> 00:56:40,360
systems are far bigger than just
one repo these days, you know. 

1024
00:56:40,360 --> 00:56:43,240
So how do you reason about 
bigger systems? 

1025
00:56:43,240 --> 00:56:47,960
That's where your human software
engineer has an edge today. 

1026
00:56:47,960 --> 00:56:52,320
So being able to reason about 
systems like that and frame 

1027
00:56:52,320 --> 00:56:55,640
problems correctly, those are 
the sorts of skills that 

1028
00:56:56,200 --> 00:56:59,240
software engineers, you know, 
those who can do that well will 

1029
00:56:59,240 --> 00:57:02,400
be at an advantage. 
And therefore, maybe that's the 

1030
00:57:02,400 --> 00:57:05,840
type of the direction that 
engineering managers need to be 

1031
00:57:05,840 --> 00:57:09,280
meeting their teams towards. 
Because as you say, like every 

1032
00:57:09,280 --> 00:57:12,720
individual is still very much 
responsible for the code they 

1033
00:57:12,720 --> 00:57:15,120
commit. 
Irrespective of whether the bot 

1034
00:57:15,120 --> 00:57:18,600
wrote it or you wrote it or you 
kind of collaborated on it, at 

1035
00:57:18,600 --> 00:57:19,760
the end of the day, you're 
committing it. 

1036
00:57:19,760 --> 00:57:23,400
Your name is behind that, at 
least for now, till we have 

1037
00:57:23,400 --> 00:57:27,120
fully automated agents that are 
spinning off and writing code 

1038
00:57:27,120 --> 00:57:29,920
for us while we sleep. 
But for now, it's still your 

1039
00:57:29,920 --> 00:57:31,360
code, right? 
Which means it's your 

1040
00:57:31,360 --> 00:57:33,320
responsibility. 
And then it's your manager's 

1041
00:57:33,320 --> 00:57:36,800
responsibility. 
And so, yeah, work back from OK,

1042
00:57:36,800 --> 00:57:38,840
if that's still my 
responsibility, what needs to be

1043
00:57:38,840 --> 00:57:42,200
true for me to be proud of that 
work and for it to be good 

1044
00:57:42,200 --> 00:57:46,000
quality and focus on the skills 
that would help people move in 

1045
00:57:46,000 --> 00:57:48,720
that direction. 
So I think a very good reminder 

1046
00:57:48,720 --> 00:57:51,720
you just said, right, as 
tempting as it is, right, don't 

1047
00:57:51,880 --> 00:57:54,680
focus solely on speed and 
productivity, right, Because 

1048
00:57:54,680 --> 00:57:57,600
everyone seems to be still 
focusing a lot of these aspects,

1049
00:57:57,600 --> 00:57:59,400
right? 
Productivity gain, you know, 

1050
00:57:59,480 --> 00:58:02,760
less the number of people, speed
off delivery and things like 

1051
00:58:02,760 --> 00:58:04,360
that. 
So I think there will be time 

1052
00:58:04,360 --> 00:58:06,840
probably where this becomes 
unsustainable, right? 

1053
00:58:07,200 --> 00:58:09,720
Maybe your software becomes 
unmaintainable. 

1054
00:58:09,720 --> 00:58:13,040
Nobody can reason about simply 
because nobody has that 

1055
00:58:13,040 --> 00:58:17,080
cognitive load to actually 
understand what AI is suggesting

1056
00:58:17,080 --> 00:58:19,480
to your code, especially if 
nobody's reviewing it properly, 

1057
00:58:19,480 --> 00:58:21,040
right? 
So I think there will come a 

1058
00:58:21,040 --> 00:58:24,800
time that probably, you know, 
your software is unmaintainable,

1059
00:58:24,800 --> 00:58:26,360
right? 
And maybe you can try to 

1060
00:58:26,360 --> 00:58:29,280
leverage AI more, but I don't 
know where it will go to, right?

1061
00:58:29,600 --> 00:58:32,640
And putting in guard rails like 
what you mentioned, I think this

1062
00:58:32,640 --> 00:58:35,960
is also important, right? 
Because when you turn out code, 

1063
00:58:36,440 --> 00:58:37,840
you need to have the guard 
rails, right? 

1064
00:58:37,840 --> 00:58:40,960
Be it, you know, the design, you
know, cyclomatic complexity, 

1065
00:58:40,960 --> 00:58:43,960
security issues as well, right? 
Especially if you are not 

1066
00:58:43,960 --> 00:58:47,280
knowledgeable about it and you 
adopt, you know, insecure code. 

1067
00:58:47,440 --> 00:58:50,120
Probably it's also one thing 
that we need to think about. 

1068
00:58:50,560 --> 00:58:53,600
And I think another thing that I
would say for managers out 

1069
00:58:53,600 --> 00:58:56,720
there, leaders, right, try to be
hands on leveraging this tool, 

1070
00:58:56,720 --> 00:58:59,120
right? 
Because especially for people 

1071
00:58:59,120 --> 00:59:03,640
like me, you know, we are in the
40s sometimes, you know, we are 

1072
00:59:03,640 --> 00:59:06,760
into management a lot, right? 
And we forget our hands on 

1073
00:59:06,760 --> 00:59:09,280
experience. 
So at least adapting, trying to 

1074
00:59:09,280 --> 00:59:13,680
learn what these two is capable 
of that kind of gives you the 

1075
00:59:13,680 --> 00:59:15,760
first effect is like, you know 
what these two is capable of. 

1076
00:59:15,760 --> 00:59:18,960
But the other aspect is like, 
how can you think about the 

1077
00:59:18,960 --> 00:59:22,880
impact of using these tools? 
You know, what are the effect to

1078
00:59:22,880 --> 00:59:26,480
your maybe your team, maybe to 
your process, right? 

1079
00:59:26,800 --> 00:59:29,720
And I think the most important 
thing as well now becomes like 

1080
00:59:29,720 --> 00:59:31,840
first principle thinking and 
systems thinking. 

1081
00:59:31,840 --> 00:59:34,160
I think you also mentioned it in
your block, right? 

1082
00:59:34,600 --> 00:59:37,480
So I think manager will have a 
tougher job, I would say, 

1083
00:59:37,800 --> 00:59:41,240
especially trying to keep up 
with the AI changes and putting 

1084
00:59:41,240 --> 00:59:45,280
guardrails and make sure that 
the team is as productive as 

1085
00:59:45,280 --> 00:59:47,720
they can be. 
So we have talked a lot about 

1086
00:59:47,720 --> 00:59:50,240
all these aspects. 
Is there any, maybe one thing 

1087
00:59:50,240 --> 00:59:53,640
that you think you would still 
want to convey for people who 

1088
00:59:53,640 --> 00:59:58,280
listen to this conversation? 
I think I would, yes. 

1089
00:59:58,280 --> 01:00:01,560
I would say that you know you're
not alone if you are. 

1090
01:00:01,840 --> 01:00:04,040
If you're listening to this and 
you've been wondering what's 

1091
01:00:04,040 --> 01:00:08,000
going to happen to your own job 
or whether you you have a path 

1092
01:00:08,000 --> 01:00:11,120
forward from wherever you are 
today, you're certainly not 

1093
01:00:11,120 --> 01:00:12,960
alone. 
There's many, many of us. 

1094
01:00:12,960 --> 01:00:16,440
There's something like 
27,000,000 developers around the

1095
01:00:16,440 --> 01:00:17,960
world. 
So there's a lot of software 

1096
01:00:17,960 --> 01:00:20,880
engineers who are in one way, 
shape or form currently 

1097
01:00:20,880 --> 01:00:22,720
wondering what's going to 
happen. 

1098
01:00:23,560 --> 01:00:26,480
Be curious to learn to use these
tools, right? 

1099
01:00:26,480 --> 01:00:33,120
Like, get good at them and 
imagine, use your imagination to

1100
01:00:33,120 --> 01:00:36,880
work out how you'd like to see 
it go and see if you can make it

1101
01:00:36,880 --> 01:00:37,800
happen that way. 
Right. 

1102
01:00:37,800 --> 01:00:40,880
But play. 
It doesn't all need to be doom 

1103
01:00:40,880 --> 01:00:42,480
and gloom. 
There's a lot of excitement 

1104
01:00:42,480 --> 01:00:45,680
around. 
But yeah, just know that you're 

1105
01:00:45,680 --> 01:00:49,440
not alone. 
I think is probably a good myth.

1106
01:00:50,440 --> 01:00:53,600
Yeah, that's a good thing. 
So Annie, it's been a pleasant 

1107
01:00:53,600 --> 01:00:55,840
conversation. 
So I have one last question for 

1108
01:00:55,840 --> 01:00:57,640
you. 
I asked this last time as well. 

1109
01:00:57,640 --> 01:01:00,320
So what I call the tree 
technical leadership wisdom. 

1110
01:01:00,800 --> 01:01:03,040
So just think like an advice 
that you want to give to the 

1111
01:01:03,040 --> 01:01:05,440
listeners. 
Maybe is there anything 

1112
01:01:05,440 --> 01:01:08,240
different for this episode? 
Maybe can you share with us? 

1113
01:01:09,160 --> 01:01:13,360
Yeah, so I reflected a bit on 
this and it's funny to think 

1114
01:01:13,360 --> 01:01:16,600
back four years ago, but time 
has changed. 

1115
01:01:16,800 --> 01:01:19,000
Well a lot has changed in the 
time in between. 

1116
01:01:19,000 --> 01:01:23,800
And so I think this time my 
advice would be or the take lead

1117
01:01:23,800 --> 01:01:27,200
wisdom would be more around AI 
is what we've just spoken about.

1118
01:01:27,200 --> 01:01:31,080
So the first point would be for 
our software engineering 

1119
01:01:31,080 --> 01:01:34,880
community to really embrace the 
full role. 

1120
01:01:34,880 --> 01:01:38,000
Again. 
You know, there was a time when 

1121
01:01:38,240 --> 01:01:43,320
you specialized on the code, as 
we spoke about before on the 

1122
01:01:43,320 --> 01:01:46,320
syntax on all of that minor, 
minor detail. 

1123
01:01:46,760 --> 01:01:49,440
Keep that in your back pocket, 
but start looking for 

1124
01:01:49,440 --> 01:01:54,240
opportunities to expand your 
horizons and you know, have 

1125
01:01:54,240 --> 01:01:59,120
opportunities to experience and 
practice requirements gathering,

1126
01:01:59,440 --> 01:02:02,760
you know, software design. 
Think about that systems 

1127
01:02:02,760 --> 01:02:06,240
thinking that higher level 
thinking that we keep being told

1128
01:02:06,240 --> 01:02:08,760
is, you know, where we will now 
go and spend more of our time. 

1129
01:02:08,760 --> 01:02:12,040
We'll start looking for 
opportunities to use that skill 

1130
01:02:12,080 --> 01:02:14,160
because it's the muscle that you
have to build up. 

1131
01:02:14,560 --> 01:02:17,800
So I think it's important for 
everyone to start looking for 

1132
01:02:17,800 --> 01:02:20,680
those opportunities. 
So basically move back towards 

1133
01:02:20,800 --> 01:02:24,320
more generalist than specialist 
for the time being. 

1134
01:02:24,840 --> 01:02:28,800
And #2 is repeating what we have
spoken about a fair bit. 

1135
01:02:28,800 --> 01:02:32,520
But that speed really is very 
seductive and fun. 

1136
01:02:33,120 --> 01:02:37,560
But fragility and complexity is 
very expensive. 

1137
01:02:37,960 --> 01:02:42,440
And it may not be obvious 
immediately, but we are starting

1138
01:02:42,440 --> 01:02:46,760
to see signs of that. 
So temper your enthusiasm for 

1139
01:02:46,760 --> 01:02:50,840
that huge productivity gain that
you're reading about in social 

1140
01:02:50,840 --> 01:02:55,120
media and in academic papers. 
It's there to be gained, but 

1141
01:02:55,720 --> 01:03:00,160
it's a trade off between that 
and the potential cost of trying

1142
01:03:00,160 --> 01:03:01,840
to maintain this software later 
on. 

1143
01:03:01,840 --> 01:03:05,360
So find your balance. 
It'll be different for everyone.

1144
01:03:05,360 --> 01:03:09,400
At a startup you might be able 
to take more risks, but in more 

1145
01:03:10,200 --> 01:03:15,040
institutionalized large code 
bases, you have to take that 

1146
01:03:15,040 --> 01:03:20,440
into account a lot I would say. 
And the third one is an 

1147
01:03:20,440 --> 01:03:23,760
interesting one, and there might
be opinions around this, but I 

1148
01:03:23,760 --> 01:03:27,880
would suggest to start thinking 
of these AI tools as not just 

1149
01:03:27,880 --> 01:03:33,120
mere tools, but as team members.
I feel like that's the way that 

1150
01:03:33,120 --> 01:03:35,280
it's going. 
You know, we are already seeing 

1151
01:03:35,280 --> 01:03:40,200
people talking about human AI 
teams and what that means. 

1152
01:03:40,200 --> 01:03:43,560
You know, there's research out 
there about some papers say that

1153
01:03:43,880 --> 01:03:49,320
a human plus an AI can be more 
productive or perform better 

1154
01:03:49,400 --> 01:03:52,720
than two humans together, and 
others find the opposite. 

1155
01:03:52,720 --> 01:03:55,960
So it's an evolving landscape at
the moment. 

1156
01:03:56,440 --> 01:04:00,320
But if you think about it, the 
way that you interact with these

1157
01:04:00,320 --> 01:04:04,840
tools is more similar to how you
would interact with a team 

1158
01:04:04,840 --> 01:04:06,960
member perhaps. 
You know, some people describe 

1159
01:04:06,960 --> 01:04:11,280
them as it's like working with a
very eager junior engineer who 

1160
01:04:11,280 --> 01:04:13,760
might make a lot of mistakes but
is eager to please. 

1161
01:04:13,760 --> 01:04:16,440
You know, others actually 
describe it as having like a 

1162
01:04:16,440 --> 01:04:20,280
principal engineer on demand. 
And it all depends on the 

1163
01:04:20,280 --> 01:04:24,240
perspective of the person in the
equation, right? 

1164
01:04:24,680 --> 01:04:29,600
But for both software engineers 
and software engineering leaders

1165
01:04:29,960 --> 01:04:34,040
alike, there may well come a 
time when your team will be 

1166
01:04:34,040 --> 01:04:38,120
made-up of some humans and some 
AI. 

1167
01:04:38,800 --> 01:04:41,400
Start thinking about how that 
changes things for you. 

1168
01:04:41,400 --> 01:04:44,040
If you're not treating it just 
like a tool, but instead you're 

1169
01:04:44,040 --> 01:04:47,760
actually treating it a bit more 
like a team member, then how 

1170
01:04:47,760 --> 01:04:50,720
does that collaboration work? 
What roles would they fill and 

1171
01:04:50,720 --> 01:04:52,360
how do you manage their 
performance? 

1172
01:04:52,360 --> 01:04:55,720
You know, and maybe maybe 
there's some rubrics around that

1173
01:04:55,720 --> 01:04:57,280
that we need to start thinking 
about. 

1174
01:04:57,920 --> 01:05:00,160
So that's sort of the futuristic
thinking. 

1175
01:05:00,960 --> 01:05:04,960
Food for thought. 
A very interesting wisdom. 

1176
01:05:04,960 --> 01:05:07,440
So I would say maybe it's like a
tech leadership wisdom in the 

1177
01:05:07,440 --> 01:05:10,520
age of AI. 
So I think I like the last one 

1178
01:05:10,520 --> 01:05:14,400
that you mentioned. 
We have to now think that AI is 

1179
01:05:14,480 --> 01:05:17,880
part of the team, right? 
So it's a members of the team 

1180
01:05:18,160 --> 01:05:22,040
because if everyone is using it 
right and they kind of like take

1181
01:05:22,240 --> 01:05:25,720
a lot of part in the delivery 
aspect of the team, so they 

1182
01:05:25,720 --> 01:05:27,280
should be treated as a member as
well. 

1183
01:05:27,520 --> 01:05:29,680
So I think that's a very 
intriguing thoughts for people 

1184
01:05:29,680 --> 01:05:33,480
to think about South, for people
who would love to maybe continue

1185
01:05:33,480 --> 01:05:36,520
this discussion, asking you more
questions, follow you online, is

1186
01:05:36,520 --> 01:05:38,480
that the best place for them to 
reach out? 

1187
01:05:39,080 --> 01:05:42,920
Sure, probably LinkedIn is the 
one that I seem to gravitate 

1188
01:05:43,040 --> 01:05:47,240
towards the most, but I'm also 
on Blue Sky these days and I'm 

1189
01:05:47,520 --> 01:05:51,360
probably less active on X. 
But yeah, those other two or 

1190
01:05:51,640 --> 01:05:54,600
just through my website, you 
should be able to track me down 

1191
01:05:54,600 --> 01:05:57,600
to any of those others. 
Annie valor.com, that's my blog.

1192
01:05:58,760 --> 01:06:01,680
Right, so I would say for people
who are intrigued by the 

1193
01:06:01,680 --> 01:06:04,480
software identity thing, read 
Annie's blog post as well. 

1194
01:06:04,480 --> 01:06:07,800
I think it's a very good food 
for thought, especially in this 

1195
01:06:07,840 --> 01:06:10,680
era where everyone seems to be 
concerned about their role. 

1196
01:06:11,160 --> 01:06:13,080
So thank you so much again Annie
for your time. 

1197
01:06:13,080 --> 01:06:16,960
So yeah, thank you and wish you 
good luck with all the research 

1198
01:06:16,960 --> 01:06:20,360
for this AI related stuff. 
Thank you so much, Henry. 

1199
01:06:20,360 --> 01:06:23,120
And maybe let's not leave it 
four years until we speak again,

1200
01:06:23,120 --> 01:06:26,280
but thank you very much for the 
opportunity to be a repeat guest

1201
01:06:26,280 --> 01:06:29,880
on your podcast. 
And yeah, I guess we'll catch 

1202
01:06:29,880 --> 01:06:32,040
you around. 
Yeah, looking forward for that. 

1203
01:06:32,600 --> 01:06:33,040
Thank you.
