1
00:00:00,040 --> 00:00:03,520
Hey, I'm Kimberly with Elixir 
mentor Jacob recently added 

2
00:00:03,520 --> 00:00:06,840
recruitment services to help 
companies hire pre vetted Elixir

3
00:00:06,840 --> 00:00:09,840
devs. 
I help with company outreach, so

4
00:00:09,840 --> 00:00:13,120
if you're hiring, I may be 
reaching out, or you can connect

5
00:00:13,120 --> 00:00:15,320
with us anytime at 
elixirmentor.com. 

6
00:00:16,840 --> 00:00:19,440
Secure your Elixir apps with 
paraxial IO. 

7
00:00:19,600 --> 00:00:22,640
From code analysis and bot 
defense to dependency checks, 

8
00:00:22,640 --> 00:00:25,920
they've got you covered. 
Elixir first design with GitHub 

9
00:00:25,920 --> 00:00:28,320
integration. 
Elevate your security at 

10
00:00:28,320 --> 00:00:38,440
paraxial dot IO testing. 
What's up? 

11
00:00:38,440 --> 00:00:41,320
I'm Jacob Blitzo, your Elixir 
mentor and welcome to another 

12
00:00:41,320 --> 00:00:44,000
exciting episode of the Elixir 
Mentor podcast. 

13
00:00:44,000 --> 00:00:46,320
This is where we discuss 
everything related to Elixir, 

14
00:00:46,320 --> 00:00:48,440
from interviews with 
enthusiasts, pioneers in the 

15
00:00:48,440 --> 00:00:52,280
community to innovative projects
and libraries shaping Elixir's 

16
00:00:52,280 --> 00:00:55,960
future. 
Today I'm joined by Luca, CTO at

17
00:00:55,960 --> 00:01:01,520
Siebel, a Milano fintech for 
Italian SMEs. 

18
00:01:01,520 --> 00:01:03,600
And I'm sure we'll, I'll have 
lots of questions because I 

19
00:01:03,600 --> 00:01:05,319
don't know if I even know what 
that is. 

20
00:01:05,600 --> 00:01:10,480
And Luke is also an Elixir open 
source contributor with I 

21
00:01:10,480 --> 00:01:13,480
believe quite a few libraries of
your own out there too, right? 

22
00:01:14,960 --> 00:01:16,800
Yeah, something small, nothing 
major. 

23
00:01:16,800 --> 00:01:18,240
Again. 
OK, nice. 

24
00:01:18,240 --> 00:01:20,680
Well, it's good to meet you. 
It's good to have you on. 

25
00:01:21,240 --> 00:01:24,680
So thanks for joining me today. 
Thanks for having me. 

26
00:01:25,280 --> 00:01:28,520
It's a pleasure. 
I usually like to throw these or

27
00:01:28,520 --> 00:01:33,280
kick this off with kind of like 
telling us your back story, like

28
00:01:33,280 --> 00:01:37,840
how did you get into software 
development and what led you to 

29
00:01:37,840 --> 00:01:41,960
find an Elixir? 
Sure. 

30
00:01:41,960 --> 00:01:46,360
So, well, OK, that's going a big
way back. 

31
00:01:47,040 --> 00:01:50,840
I was really young in Milano, I 
guess attending high school and 

32
00:01:50,840 --> 00:01:52,440
I started playing with 
computers. 

33
00:01:52,600 --> 00:01:57,040
That was my, I've always been 
interested somehow in, in 

34
00:01:57,040 --> 00:02:01,320
computers and not really 
programming at the start since 

35
00:02:02,280 --> 00:02:08,120
it was the early 90s and I was, 
it was the stuff of the Internet

36
00:02:08,560 --> 00:02:12,600
and that was what brought me 
into everything because it was 

37
00:02:12,600 --> 00:02:15,640
the, the new big thing. 
It wasn't big at all. 

38
00:02:16,360 --> 00:02:21,920
So this is pre Google, pre 
everything we know, we know 

39
00:02:21,920 --> 00:02:26,480
today. 
It was really, I guess, limited 

40
00:02:26,480 --> 00:02:30,560
you, you could say in many ways,
but also really interesting 

41
00:02:30,560 --> 00:02:34,920
because there were early 
adopters, pioneers, people just 

42
00:02:34,920 --> 00:02:38,800
trying to figure out what what 
to do what, how to use the new, 

43
00:02:39,000 --> 00:02:42,040
the new medium. 
And I was really, really, really

44
00:02:42,040 --> 00:02:47,440
fascinated by, by that, by how 
you could piece all the things 

45
00:02:47,440 --> 00:02:50,880
together and, and communicate 
with some, someone on the other 

46
00:02:50,880 --> 00:02:53,440
side of the world and exchange, 
exchange information. 

47
00:02:54,280 --> 00:02:59,040
That was, I guess, deeply, 
deeply fascinating for me. 

48
00:02:59,920 --> 00:03:05,920
And so I, so I started working 
for a small ISP way back 20 

49
00:03:05,920 --> 00:03:11,360
years ago. 
And really it was interesting 

50
00:03:11,360 --> 00:03:13,960
because you could see all the 
stack, everything you needed to 

51
00:03:13,960 --> 00:03:18,560
go from your computer to, to the
Internet, how you could connect 

52
00:03:18,560 --> 00:03:21,360
people to the Internet. 
We, we resolved connectivity. 

53
00:03:21,360 --> 00:03:28,000
So it was ADSL at the time, OK. 
So the SL connections for for 

54
00:03:28,000 --> 00:03:32,600
businesses mostly and we 
operated our own infrastructure.

55
00:03:32,600 --> 00:03:43,400
So routers, BGPDNS, routing and 
e-mail and Austin, these were 

56
00:03:43,400 --> 00:03:46,040
the main things that we were we 
were selling at the time. 

57
00:03:46,840 --> 00:03:49,080
It was an amazing experience 
because you could see 

58
00:03:49,120 --> 00:03:51,480
everything. 
So in, in a couple of recs, you 

59
00:03:51,480 --> 00:03:55,840
know, in a small color color 
centre in, in Milano, we had all

60
00:03:55,840 --> 00:04:00,840
the, the infrastructure that you
need to operate an autonomous 

61
00:04:00,840 --> 00:04:05,520
system, which is some what you 
need to, to, to connect the 

62
00:04:05,520 --> 00:04:08,520
Internet starting from scratch, 
basically, right. 

63
00:04:09,440 --> 00:04:12,520
And that was really interesting.
So I didn't start in 

64
00:04:12,520 --> 00:04:14,520
programming. 
I started in infrastructure, in 

65
00:04:14,520 --> 00:04:19,240
networking, in systems 
engineering, before 

66
00:04:19,880 --> 00:04:23,200
infrastructure is good, before 
virtual machines, before. 

67
00:04:23,640 --> 00:04:27,200
So when you had to operate 
servers and install servers, 

68
00:04:27,280 --> 00:04:33,040
racks, replace batteries or, you
know, power units that failed, 

69
00:04:33,280 --> 00:04:36,240
you needed to do maintenance, 
install the operating system, 

70
00:04:36,240 --> 00:04:38,960
all all this kind of stuff. 
I feel like that's a good way to

71
00:04:38,960 --> 00:04:41,120
start. 
That's like all the hard stuff 

72
00:04:41,120 --> 00:04:44,280
and you got it out of the way 
and you. 

73
00:04:44,280 --> 00:04:47,520
Yeah, you. 
Know, I mean in a way, I guess 

74
00:04:47,520 --> 00:04:52,440
I, I saw something that people 
today take for granted. 

75
00:04:53,280 --> 00:05:00,200
So you today you just, you know,
buy UPS or use Kubernetes or 

76
00:05:00,600 --> 00:05:04,640
something else, mostly services 
and you are provided with a lot 

77
00:05:04,640 --> 00:05:08,760
of infrastructure when you need 
to start from, from the iron is 

78
00:05:08,760 --> 00:05:10,920
completely different in many 
ways. 

79
00:05:12,040 --> 00:05:14,600
Yeah. 
So yeah, I, I guess I developed 

80
00:05:14,600 --> 00:05:18,840
an appreciation for for this 
kind of stuff and and it's 

81
00:05:18,840 --> 00:05:21,400
useful. 
It's useful to know yeah to to 

82
00:05:21,400 --> 00:05:26,080
know how things work. 
And I learned a lot, especially 

83
00:05:26,080 --> 00:05:29,800
about networking and protocols. 
And that that's something that I

84
00:05:29,800 --> 00:05:33,840
still find interesting and, and,
and fascinating. 

85
00:05:34,680 --> 00:05:38,800
And, and from there I moved on, 
mostly because I think I'm. 

86
00:05:39,320 --> 00:05:41,600
Very curious person. 
So I, I like to explore. 

87
00:05:41,600 --> 00:05:46,000
I, I wanted to be able to build 
the things that I, that I was 

88
00:05:46,000 --> 00:05:50,840
operating or I was using. 
And so I moved into, into 

89
00:05:50,840 --> 00:05:56,200
software development. 
So I did at first native mobile 

90
00:05:56,200 --> 00:06:03,280
for on iOS. 
It was 2010 I guess, when the 

91
00:06:03,760 --> 00:06:05,600
iPhone 4 came out. 
OK. 

92
00:06:07,720 --> 00:06:10,880
And that there was a big market 
for, for making mobile 

93
00:06:10,880 --> 00:06:13,400
applications. 
And so I started from there 

94
00:06:15,480 --> 00:06:18,960
working in a consultancy where I
had the opportunity to work on 

95
00:06:18,960 --> 00:06:23,920
big applications. 
So banking apps, the, the 

96
00:06:23,920 --> 00:06:26,840
biggest one we did was an app 
for training Italia, which is 

97
00:06:26,840 --> 00:06:31,040
the, the train company in Italy 
to, to buy tickets. 

98
00:06:31,120 --> 00:06:35,640
So it was also apps that were 
used by by a fair number of of 

99
00:06:35,640 --> 00:06:40,920
people. 
And yeah, my I guess that my my 

100
00:06:40,920 --> 00:06:46,200
background in C and because iOS 
at first was developed in 

101
00:06:46,320 --> 00:06:49,240
objective CI. 
Remember that. 

102
00:06:50,040 --> 00:06:53,400
Yeah, strange mix between small 
talk and and. 

103
00:06:54,680 --> 00:06:58,560
CI struggled, so you and I kind 
of have a similar path. 

104
00:06:58,880 --> 00:07:02,320
I first started as an iOS 
developer as well, but it was 

105
00:07:02,320 --> 00:07:05,840
like right on the brink of when 
Swift was getting introduced. 

106
00:07:06,720 --> 00:07:09,440
So that was. 
But Objective C was so hard for 

107
00:07:09,440 --> 00:07:13,120
me, I don't know why. 
I just, I struggled with it and 

108
00:07:13,120 --> 00:07:17,240
then when Swift came out it like
everything clicked and that's 

109
00:07:17,240 --> 00:07:20,000
when I started becoming a real 
software developer. 

110
00:07:22,880 --> 00:07:25,760
Yeah, yeah, I can see that 
because yeah, it was a bit 

111
00:07:25,760 --> 00:07:29,760
strange. 
I mean Objective C is as some it

112
00:07:29,760 --> 00:07:32,760
just increases I guess. 
And also the the first versions 

113
00:07:32,760 --> 00:07:35,240
you didn't have memory 
management, so you needed to do 

114
00:07:35,480 --> 00:07:37,400
manual reference counting this 
kind of stuff. 

115
00:07:37,400 --> 00:07:42,160
It was, yeah, not always the the
easiest thing if you are used to

116
00:07:42,800 --> 00:07:45,520
to memory management and to 
garbage collection, this kind of

117
00:07:45,520 --> 00:07:48,560
stuff. 
That's why I love elixir. 

118
00:07:52,680 --> 00:07:54,560
Makes our life so easy, doesn't 
it? 

119
00:07:58,760 --> 00:08:01,440
And yeah, sure. 
So yeah, I did a few years of 

120
00:08:01,440 --> 00:08:06,280
that. 
I enjoyed it and for for the 

121
00:08:06,280 --> 00:08:09,880
same reason so that I wanted to 
do to have different experiences

122
00:08:09,880 --> 00:08:13,280
and and do different stuff. 
I got into front end development

123
00:08:13,280 --> 00:08:17,160
and then in back end development
and I worked for a few more 

124
00:08:17,160 --> 00:08:20,480
startups. 
I also worked for one of the 

125
00:08:20,480 --> 00:08:26,320
biggest, the three big tech 
companies in Italy doing mobile 

126
00:08:26,320 --> 00:08:32,200
phone services and I worked 
there and that's really when I 

127
00:08:32,200 --> 00:08:35,159
came in contact with, with 
Elixir. 

128
00:08:35,159 --> 00:08:38,919
So I, I started being, being 
interested in it first as my 

129
00:08:40,000 --> 00:08:45,840
personal interest and then I, I 
also somehow brought it in my 

130
00:08:45,840 --> 00:08:50,520
work and used it to, to some 
extent to, to build what we were

131
00:08:50,520 --> 00:08:54,480
building. 
But really the like the, the 

132
00:08:54,480 --> 00:08:57,880
start of it was my interest and 
the fascination. 

133
00:08:58,480 --> 00:09:01,840
I, I never used the functional 
programming language before 

134
00:09:01,840 --> 00:09:05,600
Elixir. 
And somehow for me it clicked. 

135
00:09:06,440 --> 00:09:09,240
It clicked immediately. 
So I, I, I had the impression, I

136
00:09:09,240 --> 00:09:12,880
said I, I, I don't know why. 
Why didn't I know about this 

137
00:09:12,880 --> 00:09:15,560
before? 
I know that's what I said. 

138
00:09:15,560 --> 00:09:19,680
I struggled with object oriented
programming and like JavaScript 

139
00:09:19,680 --> 00:09:22,600
for like 8 years before I 
discovered Elixir. 

140
00:09:24,000 --> 00:09:25,960
Yeah, yeah, I, I get, I get the 
sentiment. 

141
00:09:25,960 --> 00:09:29,440
Me, me, me too. 
Is I don't know, it almost felt 

142
00:09:29,440 --> 00:09:33,800
like something that needed to 
exist. 

143
00:09:33,920 --> 00:09:36,960
And, and I, I, I found it. 
I saw it before my eyes. 

144
00:09:36,960 --> 00:09:38,760
And I said, OK, pattern matching
words. 

145
00:09:38,760 --> 00:09:42,720
I mean, all this makes sense. 
No mutable state, no 

146
00:09:44,080 --> 00:09:49,920
complicated. 
Well, like the way I always say,

147
00:09:49,920 --> 00:09:52,160
and I probably annoy everyone 
that's listening 'cause I say 

148
00:09:52,160 --> 00:09:54,960
this every episode. 
But like, I feel like your 

149
00:09:54,960 --> 00:10:00,000
engineering mind works like an 
immutable language, like you 

150
00:10:00,000 --> 00:10:03,520
transform things and you can 
like watch it go through, you 

151
00:10:03,520 --> 00:10:06,480
know, each function that gets 
passed to and you, you get 

152
00:10:06,480 --> 00:10:09,760
exactly what you expect from it,
you know, And then with object 

153
00:10:09,760 --> 00:10:13,200
oriented, you can have basically
you can alter state from 

154
00:10:13,200 --> 00:10:17,440
multiple places and it just adds
just a lot of confusion and 

155
00:10:17,440 --> 00:10:21,560
potential bugs, you know? 
Yeah, exactly. 

156
00:10:21,640 --> 00:10:27,880
I think it removes a whole lot 
of complexity that somehow it 

157
00:10:28,120 --> 00:10:31,640
condenses everything in a simple
model that it's really easy to 

158
00:10:31,640 --> 00:10:33,680
reason about and to debug and to
follow. 

159
00:10:33,880 --> 00:10:36,680
Yeah, and I feel like someone 
that's an engineer, you break 

160
00:10:36,680 --> 00:10:40,040
things down into steps. 
So it's like already fitting 

161
00:10:40,040 --> 00:10:42,520
into the natural way that you 
solve a problem. 

162
00:10:42,920 --> 00:10:45,840
Like, OK, now we have to do this
to it, then this, then this. 

163
00:10:45,960 --> 00:10:48,640
And you know, you just step 
through things. 

164
00:10:49,600 --> 00:10:52,840
Yeah, yeah, that, that's, that's
what I think too. 

165
00:10:52,840 --> 00:10:55,000
Yeah. 
It's really straightforward once

166
00:10:55,000 --> 00:10:59,520
you get the, the model, the way 
you, you split things into 

167
00:10:59,520 --> 00:11:01,480
functions and you have the 
ability. 

168
00:11:01,480 --> 00:11:05,800
And so a lot, a lot of of 
things, a lot of problems that 

169
00:11:05,800 --> 00:11:09,000
you normally have in, in other 
models in in object oriented 

170
00:11:09,000 --> 00:11:13,360
programming just disappear. 
And you, at least for me, it's. 

171
00:11:13,600 --> 00:11:15,480
It allows me to focus on on the 
problem. 

172
00:11:16,000 --> 00:11:16,800
I. 
Agree. 

173
00:11:16,800 --> 00:11:19,560
I think that that's what gives. 
And your tools just work, and 

174
00:11:19,560 --> 00:11:23,320
they're there for you. 
Yeah, yeah, exactly, exactly. 

175
00:11:23,320 --> 00:11:27,200
I I I don't have the feeling 
that I'm somehow fighting the 

176
00:11:27,320 --> 00:11:29,560
the tool I'm using right too 
much. 

177
00:11:30,600 --> 00:11:32,560
And JavaScript, you're fighting 
the tool. 

178
00:11:34,240 --> 00:11:37,240
Yeah, and I, I don't know, I 
don't have a lot of experience 

179
00:11:37,240 --> 00:11:39,560
with JavaScript. 
I never liked it a lot. 

180
00:11:39,720 --> 00:11:44,800
It was really confusing for me. 
It it it does everything and and

181
00:11:44,800 --> 00:11:47,520
nothing. 
It does everything but nothing. 

182
00:11:47,520 --> 00:11:53,520
Well, that's what. 
So did you kind of you went from

183
00:11:53,520 --> 00:11:57,200
kind of an iOS developer 
straight into a back end with 

184
00:11:57,200 --> 00:12:01,760
Elixir then and then that kind 
of became your main language or 

185
00:12:01,760 --> 00:12:06,120
was there? 
I used a number of things. 

186
00:12:06,200 --> 00:12:10,080
Over the years, so I at the 
beginning, when I was a System 

187
00:12:10,080 --> 00:12:14,960
Administrator, I was working 
with C with per with some PHP 

188
00:12:17,120 --> 00:12:19,880
and but I didn't really enjoy it
much. 

189
00:12:21,320 --> 00:12:24,680
Then I moved into Objective C, 
which was was kind of familiar 

190
00:12:25,520 --> 00:12:29,240
and it was interesting before 
because it was a really, at the 

191
00:12:29,240 --> 00:12:32,000
time, IUS was really a rich 
platform. 

192
00:12:32,000 --> 00:12:34,440
So you, you had a lot of stuff 
around you. 

193
00:12:34,440 --> 00:12:38,440
It was really interesting to, to
be able to work with, with 

194
00:12:38,440 --> 00:12:41,480
hardware, with maps, with a lot 
of new technology that was 

195
00:12:41,480 --> 00:12:44,880
coming out at the time. 
And I enjoyed the the language 

196
00:12:44,880 --> 00:12:50,640
too. 
I did a bit of Python for the 

197
00:12:50,640 --> 00:12:56,280
back end stuff, also for said 
projects and then yeah, then I 

198
00:12:56,280 --> 00:12:58,680
moved to to Elixir. 
OK, nice. 

199
00:12:59,000 --> 00:13:03,760
Yeah, I was, I went through kind
of a gauntlet of languages, but 

200
00:13:03,760 --> 00:13:06,960
I've, I, I enjoy Python, but 
I've never used it more than 

201
00:13:06,960 --> 00:13:09,120
just like writing a few small 
scripts. 

202
00:13:09,120 --> 00:13:12,320
So I don't actually know what it
feels like to be in a a large 

203
00:13:12,320 --> 00:13:16,120
code base, but I've always found
Python fun. 

204
00:13:18,480 --> 00:13:21,840
Yeah, to. 
To some extent, I guess I don't 

205
00:13:21,840 --> 00:13:23,560
know. 
It's never really also never 

206
00:13:23,560 --> 00:13:26,840
really clicked for me. 
It was a strange mix of 

207
00:13:27,000 --> 00:13:29,840
different things. 
So you you had OP and you have 

208
00:13:30,560 --> 00:13:35,520
some some extent of functional 
programming, but. 

209
00:13:35,520 --> 00:13:38,880
Also a lot of ways. 
To to shoot yourself in the in 

210
00:13:38,880 --> 00:13:42,760
the foot and. 
I I've done some like small 

211
00:13:42,760 --> 00:13:46,320
embedded projects with it. 
I need to make time to play 

212
00:13:46,320 --> 00:13:51,280
around with nerves and get back 
into doing some IoT things, but 

213
00:13:51,880 --> 00:13:56,480
that's been on my list for 
months now and I still haven't 

214
00:13:56,600 --> 00:13:59,480
done anything. 
But one of those days I want to 

215
00:13:59,480 --> 00:14:01,320
play with nerves. 
So that'll be cool. 

216
00:14:02,520 --> 00:14:05,640
So let's talk about C Bill a 
little bit. 

217
00:14:07,840 --> 00:14:11,880
What is it and what what like, 
what are you changing in like 

218
00:14:11,880 --> 00:14:14,280
the fintech world? 
If you could give me like a 

219
00:14:14,280 --> 00:14:17,640
quick elevator pitch of what 
what problem you're solving. 

220
00:14:19,640 --> 00:14:23,640
OK. 
So civil is a cash flow 

221
00:14:23,640 --> 00:14:26,720
management system for for small 
and medium businesses. 

222
00:14:26,720 --> 00:14:32,960
So the what we started from four
years ago is really simple if 

223
00:14:32,960 --> 00:14:36,560
you think how Italy works. 
And so I'm going to give you a 

224
00:14:36,560 --> 00:14:40,040
little bit of background, 
otherwise you won't be able to 

225
00:14:40,040 --> 00:14:42,840
follow. 
So in Italy, small and medium 

226
00:14:42,840 --> 00:14:47,360
businesses are the vast majority
of businesses that you have. 

227
00:14:47,360 --> 00:14:53,920
So more than 95% of businesses 
are this kind of business and 

228
00:14:54,880 --> 00:15:00,240
some are really small. 
So like people having a really 

229
00:15:00,240 --> 00:15:03,080
small company, maybe they're 
working, I don't know, they are 

230
00:15:03,080 --> 00:15:07,320
plumbers or electricians or 
these these kind of people up to

231
00:15:07,320 --> 00:15:11,920
companies that make 12345 
million EUR a year. 

232
00:15:13,080 --> 00:15:16,920
These are small and medium 
businesses, and historically 

233
00:15:17,080 --> 00:15:21,160
they are underserved. 
Wait one second, I think we 

234
00:15:21,160 --> 00:15:25,400
might have lost too. 
So, so let me let me try and 

235
00:15:25,400 --> 00:15:31,200
start from from scratch. 
So as I was saying, we've built 

236
00:15:31,200 --> 00:15:35,160
the service for small and medium
businesses, 12 small and medium 

237
00:15:35,160 --> 00:15:37,920
businesses control their their 
cash flow. 

238
00:15:39,880 --> 00:15:44,040
So to be able to to manage the 
finances and, and the business. 

239
00:15:44,560 --> 00:15:48,120
And what what we started from 
was building something that 

240
00:15:48,120 --> 00:15:49,720
would connect their bank 
accounts. 

241
00:15:50,640 --> 00:15:56,360
So we like our users do an 
authentication flow in with 

242
00:15:56,360 --> 00:16:00,200
their bank inside our app. 
At the end of this flow, we are 

243
00:16:00,200 --> 00:16:06,920
able to import their bank 
accounts, the more much and 

244
00:16:06,920 --> 00:16:10,680
those all the transactions these
are bank accounts and this is 

245
00:16:11,400 --> 00:16:14,920
due to something we have in 
Europe which is open banking, 

246
00:16:15,560 --> 00:16:22,680
which is the ability to. 
So this is a law from from the 

247
00:16:22,680 --> 00:16:28,560
European Union from a few years 
ago and it mandated that all 

248
00:16:28,560 --> 00:16:35,560
banks provide us as via APIAPIS 
to to the information on all the

249
00:16:35,680 --> 00:16:38,640
bank accounts, citizens and 
companies in the in the European

250
00:16:38,680 --> 00:16:40,360
Union. 
So we can do this. 

251
00:16:41,240 --> 00:16:45,880
And for this we import and keep 
updated all the information from

252
00:16:46,360 --> 00:16:49,480
the business bank accounts. 
So we know how much money you 

253
00:16:49,480 --> 00:16:51,880
have and we know the transaction
you have and we keep them 

254
00:16:51,880 --> 00:16:57,120
updated regularly. 
And we do the same thing with 

255
00:16:57,120 --> 00:17:00,520
invoicing because in Italy we 
have something that is quite 

256
00:17:01,000 --> 00:17:05,400
surprising and advanced. 
But we have initially operated 

257
00:17:05,640 --> 00:17:09,280
electronic invoicing system 
which allows you to access 

258
00:17:09,280 --> 00:17:11,200
electronic invoices and do the 
same thing. 

259
00:17:11,200 --> 00:17:16,319
So we are able to import all the
invoices that you have both that

260
00:17:16,319 --> 00:17:19,160
you issue and that you received 
from from other businesses and 

261
00:17:19,160 --> 00:17:21,920
and show you this information in
the application. 

262
00:17:21,920 --> 00:17:26,319
And so based on this, we built a
way to categorize all this 

263
00:17:26,319 --> 00:17:29,680
information. 
And then we built analytics 

264
00:17:29,960 --> 00:17:33,320
mostly. 
So tools telling you where you 

265
00:17:33,320 --> 00:17:38,360
spend money, where you gain 
money, how much money you have, 

266
00:17:38,360 --> 00:17:41,680
and also some kind of simulation
of how much money you will have 

267
00:17:42,440 --> 00:17:45,920
based on invoices that you 
receive, based on invoices that 

268
00:17:45,920 --> 00:17:49,000
you issue and those on 
simulations that you can run. 

269
00:17:49,000 --> 00:17:52,960
So if you know that you will 
receive some amount of money, 

270
00:17:52,960 --> 00:17:57,160
you can, you can inserted in, in
the, in the application. 

271
00:17:57,160 --> 00:18:00,280
And then we will somehow 
simulate the cash flow for the, 

272
00:18:00,280 --> 00:18:06,160
for the future, for your future.
And that's it. 

273
00:18:06,160 --> 00:18:09,400
That's what we we started from. 
And then from there, we started 

274
00:18:09,400 --> 00:18:15,920
to build a lot of other stuff 
because the goal, the end goal 

275
00:18:15,960 --> 00:18:21,920
for for CIBIL is to build one 
tool that allows you to manage 

276
00:18:21,920 --> 00:18:26,200
your company both from the 
financial perspective and from 

277
00:18:26,200 --> 00:18:30,280
the administrative perspective. 
So one single tool to do all 

278
00:18:30,280 --> 00:18:32,400
this. 
So over the course of four 

279
00:18:32,400 --> 00:18:36,440
years, we added a lot of 
features like for example, 

280
00:18:36,440 --> 00:18:38,880
invoicing. 
So you are able to manage all 

281
00:18:38,880 --> 00:18:41,920
the invoicing needs or other 
documents, for example, for 

282
00:18:41,920 --> 00:18:48,240
shipping or other stuff that 
companies normally need to do to

283
00:18:48,520 --> 00:18:51,800
documents they need to produce. 
You can pay your bills from from

284
00:18:51,800 --> 00:18:56,440
the application. 
So you can pay also using open 

285
00:18:56,440 --> 00:19:00,360
banking and other means. 
You can manage your payments 

286
00:19:00,480 --> 00:19:03,600
schedule. 
So you can know who needs to pay

287
00:19:03,600 --> 00:19:07,120
you, who you need to pay when 
and organize all this. 

288
00:19:09,920 --> 00:19:13,000
Mostly this yeah. 
And and a lot of different 

289
00:19:13,000 --> 00:19:16,400
little features that allow you 
to to to manage your business 

290
00:19:16,400 --> 00:19:17,600
completely. 
This is it. 

291
00:19:18,280 --> 00:19:20,040
OK, awesome. 
Very cool. 

292
00:19:20,320 --> 00:19:25,080
I'm curious, did you, did you 
start when you started building 

293
00:19:25,080 --> 00:19:29,920
C Bill, did you start with 
Elixir as your back end or did 

294
00:19:29,920 --> 00:19:37,200
you did you change over to that?
So, yeah, Greenfield does not 

295
00:19:37,200 --> 00:19:41,680
exist in a way because, yeah. 
So I, I joined the company, we 

296
00:19:41,680 --> 00:19:46,760
were five people, but there was 
an existing MVP which was built 

297
00:19:47,400 --> 00:19:53,440
to do fundraising and to 
validate the idea with, with 

298
00:19:53,440 --> 00:19:59,000
some, some early adopters. 
And this early MVP was was 

299
00:19:59,040 --> 00:20:02,680
written in. 
Part in TypeScript, part in 

300
00:20:02,680 --> 00:20:05,480
Python, and it was built 
externally. 

301
00:20:06,400 --> 00:20:09,680
So I joined the company when 
some some initial funding 

302
00:20:09,680 --> 00:20:13,680
arrived and we were able to 
start internalizing development 

303
00:20:13,680 --> 00:20:17,440
and build the real thing. 
And so, yeah, from that point 

304
00:20:17,440 --> 00:20:21,480
on, what we did was mostly 
rebuild the MVP, which was 

305
00:20:21,480 --> 00:20:27,080
really small in in Elixir and 
then grow it from there. 

306
00:20:27,560 --> 00:20:28,440
Yeah. 
Nice. 

307
00:20:28,720 --> 00:20:31,720
Now did you already know Elixir 
was the choice? 

308
00:20:31,720 --> 00:20:33,480
Was that what you wanted to go 
with? 

309
00:20:33,480 --> 00:20:37,320
Because one, I mean, I think 
it's a perfect fit and I think 

310
00:20:37,760 --> 00:20:42,560
finance and fintech are perfect,
perfect like use cases for it. 

311
00:20:43,360 --> 00:20:45,160
But I'm kind of curious what 
your thought process. 

312
00:20:45,160 --> 00:20:52,680
Was, well, it's not like linear,
you know, So actually what I 

313
00:20:52,680 --> 00:20:55,960
did, what I, what I started from
was something that wasn't 

314
00:20:55,960 --> 00:21:01,680
working in the MVP and that I 
thought Elixir was a great fit 

315
00:21:01,680 --> 00:21:06,120
for. 
So as I said, we synchronize a 

316
00:21:06,120 --> 00:21:10,120
lot of data. 
So imagine that if you have a 

317
00:21:10,120 --> 00:21:14,040
business in Italy, you normally 
have between two and three bank 

318
00:21:14,040 --> 00:21:19,400
accounts and you, and then you 
also have all the invoicing that

319
00:21:19,400 --> 00:21:21,680
you do through the through the 
national invoicing system. 

320
00:21:22,200 --> 00:21:25,280
And we connect the stuff for 
you. 

321
00:21:25,280 --> 00:21:26,840
And then we keep it 
synchronised. 

322
00:21:27,280 --> 00:21:29,880
So we keep it updated a number 
of times per day. 

323
00:21:30,920 --> 00:21:34,480
So maybe 6-7 times a day we 
synchronise all the banking data

324
00:21:34,480 --> 00:21:37,360
for all our customers. 
Once a day we synchronise all 

325
00:21:37,360 --> 00:21:40,880
the invoicing data for our 
customers and the regional MVP. 

326
00:21:41,960 --> 00:21:45,280
This was the critical part 
because it wasn't really 

327
00:21:45,840 --> 00:21:49,320
working. 
Also at a small scale, it had a 

328
00:21:49,320 --> 00:21:52,240
lot of problems. 
It was very difficult to to 

329
00:21:52,240 --> 00:21:55,800
operate, so the first thing that
we built was this 

330
00:21:55,800 --> 00:22:00,240
synchronization engine. 
I'm curious, are you using Oban 

331
00:22:00,240 --> 00:22:02,280
for that or did you roll out 
your own solution? 

332
00:22:03,640 --> 00:22:06,000
No, not Oban. 
OK. 

333
00:22:06,400 --> 00:22:08,320
We're using Broadway. 
OK. 

334
00:22:08,360 --> 00:22:10,000
Yeah. 
So you got a Broadway pipeline 

335
00:22:10,000 --> 00:22:13,880
coming in? 
Yeah, we kind of multiple 

336
00:22:14,200 --> 00:22:19,560
Broadway pipelines. 
And so, yeah, we that's the the,

337
00:22:19,560 --> 00:22:22,000
the basis of it. 
And then on top of that, of 

338
00:22:22,000 --> 00:22:25,320
course, we have a lot, we have a
lot of logic that that needs to 

339
00:22:25,320 --> 00:22:28,760
run to, to synchronize all this 
data, all this stuff. 

340
00:22:30,400 --> 00:22:33,280
And that was the first thing 
that we will build in Excel. 

341
00:22:33,840 --> 00:22:36,840
What are you shooting to the 
Broadway pipeline for? 

342
00:22:36,960 --> 00:22:39,800
Like are you using like Lambda 
functions or how are you 

343
00:22:39,800 --> 00:22:43,280
handling that? 
No. 

344
00:22:43,280 --> 00:22:49,400
So initially it was we were 
using SQS as a source and then 

345
00:22:49,400 --> 00:22:53,520
we were just attaching Broadway 
to, to SQS to execute 

346
00:22:53,720 --> 00:22:59,080
synchronisation jobs. 
And then we moved progressively 

347
00:22:59,080 --> 00:23:05,240
towards Rabbiton queue because 
it offers more flexibilities in,

348
00:23:06,200 --> 00:23:09,400
in, in a lot of ways. 
So SQS is, is is nice, it's 

349
00:23:09,400 --> 00:23:12,520
really easy, but it's also 
really limited. 

350
00:23:12,520 --> 00:23:15,400
So you mostly have a worker 
queue that that's what you get 

351
00:23:15,400 --> 00:23:19,000
with SQS. 
With Rabbiton queue, you get 

352
00:23:19,000 --> 00:23:20,960
complex routing, you get a lot 
of stuff. 

353
00:23:20,960 --> 00:23:23,480
And also we were able to build 
other things using it. 

354
00:23:24,560 --> 00:23:31,320
So it was like a logical choice.
Yeah. 

355
00:23:31,360 --> 00:23:35,040
So that that's mostly Rabbiton 
queue connected to, to to 

356
00:23:35,040 --> 00:23:38,160
Broadway for for pipelines. 
OK, cool. 

357
00:23:38,280 --> 00:23:40,120
And then how are you scheduling 
like what? 

358
00:23:40,120 --> 00:23:42,320
What determines when you're 
syncing accounts? 

359
00:23:42,360 --> 00:23:47,640
Or is it all time based? 
Or does it depend on the user or

360
00:23:47,640 --> 00:23:51,200
the business? 
A mix of things. 

361
00:23:51,920 --> 00:23:54,880
It's mostly time based. 
So once we have connected your 

362
00:23:55,120 --> 00:23:58,160
So in order to connect your bank
account you need to perform 

363
00:23:58,160 --> 00:24:02,000
authentication with the bank. 
So the user needs to to put 

364
00:24:02,000 --> 00:24:05,320
input his credentials go through
the authentication with the with

365
00:24:05,320 --> 00:24:08,960
his bank. 
Once you have done this, we are 

366
00:24:08,960 --> 00:24:12,280
able to synchronise your data. 
So the the first synchronisation

367
00:24:12,280 --> 00:24:15,080
is done when the user completes 
the authentication. 

368
00:24:15,080 --> 00:24:20,920
So in real time let's say. 
And then from from there on we 

369
00:24:20,920 --> 00:24:23,360
have schedule syncs for bank 
accounts. 

370
00:24:23,360 --> 00:24:29,640
So six times a day time based we
do synchronisation for which are

371
00:24:29,640 --> 00:24:32,840
smaller though because we don't 
need to import the old data, we 

372
00:24:32,840 --> 00:24:35,600
just need to update the the most
recent stuff. 

373
00:24:37,440 --> 00:24:40,960
Do you have to ever worry like 
as your user base grows will 

374
00:24:41,200 --> 00:24:44,080
will you have a weird bottleneck
doing time based or would you 

375
00:24:44,080 --> 00:24:47,920
just kind of break things up and
have just different time bases 

376
00:24:47,920 --> 00:24:51,800
across your user base to handle 
handle the traffic or whatnot? 

377
00:24:56,480 --> 00:25:00,840
Yeah, it's changing. 
It's been changing also we've 

378
00:25:00,840 --> 00:25:03,120
had some challenges. 
We we started with something 

379
00:25:03,120 --> 00:25:07,600
really simple. 
So just let's have a queue on or

380
00:25:07,600 --> 00:25:10,040
a bit on queue and let's connect
broadly to it. 

381
00:25:10,480 --> 00:25:19,880
And this worked fine from I 
guess 60 to a few 1000 users for

382
00:25:19,880 --> 00:25:24,640
our for our use case actually 
it's work. 

383
00:25:24,800 --> 00:25:27,960
It's work actually surprisingly 
well. 

384
00:25:27,960 --> 00:25:31,280
I guess we never had scaling 
issue with this kind of set up. 

385
00:25:32,400 --> 00:25:35,120
At some point we started 
noticing that there were some 

386
00:25:35,120 --> 00:25:40,000
cases where this was limiting 
and also it had problems. 

387
00:25:40,920 --> 00:25:45,360
For example, we allow users to 
connect other stuff other than 

388
00:25:45,360 --> 00:25:48,720
banks. 
For example, we have customers 

389
00:25:48,720 --> 00:25:55,880
that are e-commerce sites that, 
for example, use Skype to to 

390
00:25:55,880 --> 00:26:00,080
cash to cash in transactions. 
And some of those they have 

391
00:26:00,080 --> 00:26:02,000
really large volumes of 
transactions. 

392
00:26:02,000 --> 00:26:06,120
So maybe they sell stuff which 
is cheap, but they sell enormous

393
00:26:06,120 --> 00:26:08,520
volumes of it. 
And the problem with this is 

394
00:26:08,520 --> 00:26:12,560
that our synchronization 
pipeline was built in a way that

395
00:26:12,560 --> 00:26:16,000
you had to complete the whole 
sync process and you so you 

396
00:26:16,000 --> 00:26:18,400
started from consuming the 
message from Rabbington. 

397
00:26:18,400 --> 00:26:22,120
Q And and and you had to 
complete those in process. 

398
00:26:22,120 --> 00:26:24,920
But at at some point we have, I 
don't know, a customer with a 

399
00:26:25,320 --> 00:26:27,800
million of transactions that we 
need to synchronize. 

400
00:26:27,800 --> 00:26:31,200
And at some point you are unable
to complete that in a visible in

401
00:26:31,200 --> 00:26:35,600
reasonable time, right? 
So so the the consumer times out

402
00:26:36,280 --> 00:26:39,600
the the message gets back into 
the queue and then you process 

403
00:26:39,600 --> 00:26:41,520
it again and and it blocks 
everything. 

404
00:26:41,880 --> 00:26:43,880
And then you got a nasty loop 
right there. 

405
00:26:45,000 --> 00:26:47,680
Yeah, exactly. 
And that's problematic. 

406
00:26:47,680 --> 00:26:52,560
So what we we started to do was 
starting to split this 

407
00:26:52,560 --> 00:26:56,960
synchronization process and 
split it by provider and let me 

408
00:26:56,960 --> 00:26:59,120
say. 
So the banking part and maybe 

409
00:26:59,120 --> 00:27:03,400
Stripe, maybe PayPal, maybe 
other providers that we we sync 

410
00:27:03,400 --> 00:27:09,000
with and started chunking the 
works for the synchronization 

411
00:27:09,000 --> 00:27:12,280
service gas and fetches some 
data and then it passes a chunk 

412
00:27:12,280 --> 00:27:13,440
back. 
So nice. 

413
00:27:13,440 --> 00:27:15,200
And then it's resumable too, 
right? 

414
00:27:15,200 --> 00:27:17,360
You kind of can track the 
progress. 

415
00:27:19,240 --> 00:27:21,160
With chunking. 
Or not really. 

416
00:27:22,360 --> 00:27:25,240
No, not really. 
You you mostly solve the problem

417
00:27:25,240 --> 00:27:29,400
that you don't need to fetch 
everything and then save 

418
00:27:29,400 --> 00:27:32,320
everything, but and do it 
progressively right? 

419
00:27:33,480 --> 00:27:36,040
And so you are able to 
eventually complete the sync 

420
00:27:36,040 --> 00:27:38,160
even if you have a very large 
volume of data. 

421
00:27:40,320 --> 00:27:44,880
Yeah, I always feel like it's 
cool to like hear everyone's 

422
00:27:45,720 --> 00:27:50,640
like growing pains, right, 
'cause everyone life is great 

423
00:27:50,640 --> 00:27:54,560
when you have like a really 
small like MVP product and only 

424
00:27:54,560 --> 00:27:58,600
a few users on it, right, 'cause
you don't run into problems or 

425
00:27:58,600 --> 00:28:05,000
synchronization issues. 
And the more users you get with 

426
00:28:05,000 --> 00:28:08,520
synchronizing on a time base, 
right, you might not even be 

427
00:28:08,520 --> 00:28:11,800
able to finish the whole task 
before it starts synchronizing 

428
00:28:11,800 --> 00:28:14,480
again, too, right? 
That could be another potential 

429
00:28:14,480 --> 00:28:16,680
issue. 
Yeah, absolutely. 

430
00:28:17,120 --> 00:28:21,600
And so we, we started like we, 
we obviously, as you might 

431
00:28:21,600 --> 00:28:25,480
imagine. 
So picture Sybil 4 years ago is 

432
00:28:25,480 --> 00:28:30,960
just Luca doing all the, the 
software engineering and OK, so 

433
00:28:30,960 --> 00:28:34,440
let me solve this in the 
simplest possible way. 

434
00:28:35,200 --> 00:28:39,280
And also we have 100 users. 
So who cares really? 

435
00:28:39,280 --> 00:28:43,360
Because maybe if, if we have 1 
user that is problematic, we, we

436
00:28:43,360 --> 00:28:48,360
can just like tell him that this
is not possible right now and, 

437
00:28:48,360 --> 00:28:50,760
and we'll skip it and we'll move
on with our lives. 

438
00:28:53,720 --> 00:28:58,320
Today the engineering team the 
like the technical that I manage

439
00:28:58,320 --> 00:29:01,680
is 40 people. 40. 
Slowly. 

440
00:29:02,680 --> 00:29:04,320
Yeah. 
Wow, that's so. 

441
00:29:04,320 --> 00:29:09,840
Slowly, I'd say medium, yeah, 
size team. 

442
00:29:10,200 --> 00:29:12,400
So not huge, not small, not 
huge. 

443
00:29:12,680 --> 00:29:14,440
But you're getting there. 
You're getting huge. 

444
00:29:16,160 --> 00:29:20,640
Well, that's, I think that's 
mostly because you know, Civilis

445
00:29:21,760 --> 00:29:25,760
is a venture backed company. 
So even though we are an Italian

446
00:29:25,760 --> 00:29:30,600
company, we are backed by 
venture capital funds which are 

447
00:29:30,600 --> 00:29:36,240
international. 
And so our growth is that kind 

448
00:29:36,240 --> 00:29:39,120
of growth. 
So it's basically doubling every

449
00:29:39,120 --> 00:29:41,400
year, right? 
Yeah, at least doubling every 

450
00:29:41,400 --> 00:29:43,280
year. 
Yeah, that's crazy. 

451
00:29:43,280 --> 00:29:46,600
It is kind of what's expected. 
Yeah, it's also really fast. 

452
00:29:47,200 --> 00:29:52,400
That is, that is, I'm curious, 
are like you being the CTO, are 

453
00:29:52,400 --> 00:29:56,080
you still in the trenches? 
Are you still writing code or 

454
00:29:56,080 --> 00:29:59,600
are you more managing and doing 
high level architecture and 

455
00:29:59,600 --> 00:30:04,760
planning? 
Way less than than before 

456
00:30:04,760 --> 00:30:08,160
obviously. 
But I I enjoy coding. 

457
00:30:08,160 --> 00:30:11,880
I enjoy solving problems. 
Maybe if I'm not the one coding 

458
00:30:11,880 --> 00:30:16,760
directly the the solution. 
Still, I I enjoy problem 

459
00:30:16,760 --> 00:30:18,920
solving. 
I think that that's what every 

460
00:30:19,280 --> 00:30:21,280
like technical person likes to 
do. 

461
00:30:21,600 --> 00:30:25,440
And so if even if I'm not 
writing all all of the code 

462
00:30:25,440 --> 00:30:30,640
anymore, because I'm not I I 
love to design the system. 

463
00:30:30,800 --> 00:30:35,000
I love to solve these kind of 
issues and, and the fact that 

464
00:30:35,000 --> 00:30:41,360
you go, the more interesting it 
gets right with others that you,

465
00:30:42,320 --> 00:30:46,720
you encounter. 
So I think there's, there's some

466
00:30:46,720 --> 00:30:50,680
kind of a degree of, of the 
quality of the solution you're 

467
00:30:50,680 --> 00:30:53,720
building. 
And it's inevitable that when 

468
00:30:53,720 --> 00:30:56,360
you start, you, you start from 
something really simple, from an

469
00:30:56,360 --> 00:31:03,320
MVP, you solve part of the 
problem more like when time 

470
00:31:03,320 --> 00:31:07,360
passes and you go on and you, 
you observe the system and what 

471
00:31:07,360 --> 00:31:09,080
happens and how customers use 
it. 

472
00:31:10,080 --> 00:31:13,320
I think what changes is your 
understanding of, of the problem

473
00:31:13,320 --> 00:31:17,040
and also your understanding of 
the solution that you get and 

474
00:31:17,400 --> 00:31:21,320
even of, of its limitations. 
And then you slowly start to to 

475
00:31:21,320 --> 00:31:24,880
grow it right, to make changes 
to, to adjust to to the new, the

476
00:31:24,960 --> 00:31:28,200
new reality. 
Yeah, that makes sense. 

477
00:31:28,720 --> 00:31:31,520
All right, we're going to put 
this on hold for one second and 

478
00:31:31,520 --> 00:31:34,920
we'll be right back. 
Coding Elixir with AI or 

479
00:31:34,920 --> 00:31:36,920
building AI into your Elixir 
apps. 

480
00:31:37,160 --> 00:31:40,680
The Elixir AI Collective Discord
is your community for both. 

481
00:31:40,800 --> 00:31:46,280
Link in the description below. 
Hey, I'm Kimberly with Elixir 

482
00:31:46,280 --> 00:31:49,800
mentor Jacob recently added 
recruitment services to help 

483
00:31:49,800 --> 00:31:51,960
companies hire pre vetted Elixir
devs. 

484
00:31:52,560 --> 00:31:55,760
I help with company outreach, so
if you're hiring, I may be 

485
00:31:55,800 --> 00:31:58,760
reaching out, or you can connect
with us anytime at 

486
00:31:58,760 --> 00:32:05,560
elixirmentor.com. 
Yeah, the ocean and we're back. 

487
00:32:06,600 --> 00:32:09,400
Yeah, they like, you know, the 
amazing we take for granted just

488
00:32:09,400 --> 00:32:11,760
being able to chat across the 
world, right? 

489
00:32:11,760 --> 00:32:14,640
And you don't really think about
the complexity there. 

490
00:32:15,360 --> 00:32:19,600
Yeah, that was what was I saying
earlier, that I, I, I was always

491
00:32:19,600 --> 00:32:23,520
fascinated by, by this, by 
telecommunicate, by protocols, 

492
00:32:23,520 --> 00:32:25,760
by you. 
Know, I mean, it's insane like 

493
00:32:25,760 --> 00:32:29,400
the hardware and just how 
everything works, like the 

494
00:32:29,400 --> 00:32:34,200
network of complication and just
everything between you and I 

495
00:32:34,200 --> 00:32:37,120
right now and video streaming. 
But we're still capable of doing

496
00:32:37,120 --> 00:32:43,840
this Pretty cool. 
So the the hot topic because we 

497
00:32:43,840 --> 00:32:46,120
can't avoid it. 
It's like all we do is talk 

498
00:32:46,120 --> 00:32:48,400
about AI now in software 
development. 

499
00:32:48,800 --> 00:32:53,120
I'm curious, what is your take 
like being in fintech, worrying 

500
00:32:53,120 --> 00:32:58,680
about security, like you have a 
a lot more like regulations and 

501
00:32:58,680 --> 00:33:00,560
things that you have to be 
compliant with. 

502
00:33:02,240 --> 00:33:06,880
How How has AI kind of changed 
the way your team is developing?

503
00:33:10,080 --> 00:33:14,120
It does inevitably, I'd say it's
a great tool. 

504
00:33:15,400 --> 00:33:20,120
So it's, it's an amazing tool. 
We, we are figuring it out. 

505
00:33:21,200 --> 00:33:24,920
I, I guess collectively 
everyone, not not me or or 

506
00:33:24,920 --> 00:33:28,600
Sebil, but I guess everyone 
right now is trying to figure 

507
00:33:28,600 --> 00:33:31,440
out how to use these 
effectively. 

508
00:33:32,240 --> 00:33:37,880
And so I don't have an answer 
because I think that the issues 

509
00:33:37,880 --> 00:33:45,440
behind these are so big in terms
of so I don't know, let's let's 

510
00:33:45,440 --> 00:33:51,200
just me throw something on the 
table, IP issues because you are

511
00:33:51,200 --> 00:33:55,680
including code in your product 
that is coming from something 

512
00:33:55,680 --> 00:34:00,040
that is trained on a lot of code
and code you don't know about. 

513
00:34:00,720 --> 00:34:01,840
So you don't know what's in 
there. 

514
00:34:03,080 --> 00:34:06,360
Then you have, as you were 
saying, security issues because 

515
00:34:06,360 --> 00:34:11,760
who that's what these tools 
write and how do you manage 

516
00:34:11,760 --> 00:34:16,040
this, especially because at 
least I don't know, this is my, 

517
00:34:16,080 --> 00:34:21,320
my feeling. 
But what happens when you when 

518
00:34:21,320 --> 00:34:26,600
you start using AI tools for 
development is that AI produces 

519
00:34:26,600 --> 00:34:31,679
a lot of code, probably more 
code that that you would have 

520
00:34:31,679 --> 00:34:34,239
written yourself. 
And that's great because you 

521
00:34:34,239 --> 00:34:37,880
didn't have to write it. 
It's also a problem because it's

522
00:34:37,880 --> 00:34:39,360
good. 
And so you didn't. 

523
00:34:39,360 --> 00:34:47,880
Write it, yeah. 
Hopefully you read it, but. 

524
00:34:48,040 --> 00:34:52,920
That's Oh my gosh, that actually
remind like side tangent and I 

525
00:34:52,920 --> 00:34:56,080
won't, I can't throw anyone 
under the bus, but I have a 

526
00:34:56,080 --> 00:35:02,600
buddy who works for a fintech 
company and he was just told 

527
00:35:02,600 --> 00:35:04,440
he's more he's like a lead 
engineer. 

528
00:35:04,560 --> 00:35:08,680
So he has like the CTO and 
couple people above him, but he 

529
00:35:08,680 --> 00:35:12,600
was just told that they're no 
longer doing PR reviews as 

530
00:35:12,600 --> 00:35:14,480
developers. 
They're going to let Claude code

531
00:35:14,480 --> 00:35:18,720
do it. 
And that is that was the most 

532
00:35:18,720 --> 00:35:20,160
terrifying thing I've ever 
heard. 

533
00:35:20,160 --> 00:35:24,800
I was like, look like my, like 
my day job, my engineering team 

534
00:35:24,800 --> 00:35:29,240
that I work with, we love. 
Like we talk about how we use AI

535
00:35:29,240 --> 00:35:31,240
in our workflows. 
We've built some tools to make 

536
00:35:31,240 --> 00:35:35,680
it more useful. 
But like, we're buckling down 

537
00:35:35,680 --> 00:35:38,960
and like, review is even 10 
times more important than it's 

538
00:35:38,960 --> 00:35:41,440
ever been. 
And to hear a company, 

539
00:35:41,440 --> 00:35:44,400
especially in the financial 
world, saying that they're going

540
00:35:44,400 --> 00:35:48,160
to just let Claude review their 
code and that's it, I think 

541
00:35:48,160 --> 00:35:49,080
that's terrifying. 
Yeah. 

542
00:35:50,880 --> 00:35:57,400
Yeah. 
It is in many ways. 

543
00:35:59,240 --> 00:36:02,440
I don't think we are going to 
solve this today, Jacob, But 

544
00:36:03,280 --> 00:36:07,920
yeah, it's a big issue, I guess 
in terms of security, in terms 

545
00:36:07,920 --> 00:36:14,520
of privacy also, because a lot 
of companies right now are 

546
00:36:14,520 --> 00:36:18,440
integrating. 
So they they do AI in, in in a 

547
00:36:18,440 --> 00:36:21,360
way which is they are 
integrating APIs from from 

548
00:36:21,360 --> 00:36:24,960
measure measure AI players. 
So maybe they're integrating 

549
00:36:24,960 --> 00:36:30,920
with open API, open AI or, or on
Tropics AP is and they're 

550
00:36:30,920 --> 00:36:33,600
shooting user data at these 
APIs, right. 

551
00:36:33,920 --> 00:36:38,920
And this is also huge, huge 
issue, more so in Europe, 

552
00:36:38,920 --> 00:36:43,040
because in Europe we have GDPR 
and we have AI Act. 

553
00:36:43,480 --> 00:36:50,120
So we have regulations that have
deep, deep consequences also 

554
00:36:50,120 --> 00:36:54,320
financially if you breach those.
I'm against regulations, but I 

555
00:36:54,320 --> 00:36:58,040
support those kind of 
regulations like, you know, user

556
00:36:58,040 --> 00:37:01,000
privacy and all that is so 
important. 

557
00:37:02,680 --> 00:37:03,960
Yeah, Yeah. 
No, absolutely. 

558
00:37:03,960 --> 00:37:08,080
I mean, some, some some degree 
of, of, of protection of, of 

559
00:37:08,080 --> 00:37:10,720
user data is, is absolutely 
necessary. 

560
00:37:12,320 --> 00:37:16,520
I guess it's also challenging 
though, because as a business 

561
00:37:16,520 --> 00:37:20,720
you are expected to comply with 
all this stuff no matter the 

562
00:37:20,720 --> 00:37:23,480
size of the business. 
So if you have a small company, 

563
00:37:23,480 --> 00:37:25,880
you still have a lot of stuff to
cover. 

564
00:37:26,560 --> 00:37:30,160
So it might, it can be 
challenging to to operate the 

565
00:37:30,160 --> 00:37:33,760
SAS business with under this 
kind of of constraints. 

566
00:37:34,400 --> 00:37:37,400
But yeah, of course, they are 
also necessary because 

567
00:37:38,440 --> 00:37:42,800
otherwise, especially Fintech, 
as he was saying, especially 

568
00:37:42,800 --> 00:37:47,680
when you have financial data of 
companies, a lot of really 

569
00:37:47,680 --> 00:37:53,000
critical data about your users, 
you need to be able to somehow 

570
00:37:53,000 --> 00:37:59,240
protect them. 
And yeah, I, I guess AI, 

571
00:37:59,560 --> 00:38:03,320
especially AI coding poses a 
challenge for this. 

572
00:38:04,000 --> 00:38:05,960
It's. 
Yeah. 

573
00:38:07,080 --> 00:38:08,800
It's complicated. 
Yeah, it is. 

574
00:38:08,800 --> 00:38:11,600
It's very complicated. 
But I think like one thing we 

575
00:38:11,600 --> 00:38:15,120
always have to remember, 
especially like being engineers 

576
00:38:15,120 --> 00:38:18,000
and building things, right, you 
have to, it's like your 

577
00:38:18,000 --> 00:38:22,400
responsibility to protect the 
data that you have on your 

578
00:38:22,400 --> 00:38:27,680
servers and databases, you know,
like even if regulations and you

579
00:38:27,680 --> 00:38:32,680
weren't, you know, threatened 
with fines for leaking privacy 

580
00:38:33,320 --> 00:38:35,320
info, you shouldn't want to, 
right? 

581
00:38:35,560 --> 00:38:38,400
Your customer should be able to 
trust you and you got to keep 

582
00:38:38,400 --> 00:38:41,720
that data close. 
Like I have a huge problem with 

583
00:38:42,040 --> 00:38:46,320
companies that will sell, you 
know, user data and things like 

584
00:38:46,320 --> 00:38:48,320
that. 
And I know like most social 

585
00:38:48,320 --> 00:38:52,360
media platforms, that's how they
survive and live, but it's just 

586
00:38:52,400 --> 00:38:54,840
always has irked me. 
And I think it's like kind of a 

587
00:38:54,840 --> 00:38:58,600
gross way to make money in tech 
is to sell data. 

588
00:38:59,520 --> 00:39:02,440
Like why don't you just provide 
a service you know? 

589
00:39:03,440 --> 00:39:07,520
Yeah, yeah, of course. 
I mean, so we, we are into 

590
00:39:07,520 --> 00:39:10,440
social networking. 
We are not head support in any 

591
00:39:10,440 --> 00:39:13,360
way. 
Of course we we care about the, 

592
00:39:14,600 --> 00:39:18,520
the, the, the data users and 
trust was because it's our 

593
00:39:18,520 --> 00:39:22,800
business to do that. 
And so to be, to be secure, but 

594
00:39:22,800 --> 00:39:27,160
you also have to confront the 
reality of, of, of the world, I 

595
00:39:27,160 --> 00:39:31,440
guess where talking about 
security, talking about privacy,

596
00:39:31,440 --> 00:39:35,560
all these aspects are often 
times overlooked when you are 

597
00:39:35,560 --> 00:39:39,280
building something because it's 
not the, the main thing that you

598
00:39:39,280 --> 00:39:41,880
need to do in, in that moment, 
right? 

599
00:39:42,240 --> 00:39:45,000
And then somehow this stuff gets
overlooked. 

600
00:39:45,000 --> 00:39:49,040
Or let let let me put it this 
way, if you're an engineer 

601
00:39:49,200 --> 00:39:53,240
working at a company, I don't 
think there's a lot of 

602
00:39:53,240 --> 00:39:57,720
incentives around you right now 
to to be mindful about this 

603
00:39:57,720 --> 00:39:58,800
stuff. 
I think there are more 

604
00:39:58,800 --> 00:40:02,600
incentives around you to be 
burning tokens on AI. 

605
00:40:03,080 --> 00:40:06,400
To move quick, right, move 
quick, get that feature done. 

606
00:40:07,440 --> 00:40:11,400
Yeah, absolutely, absolutely. 
And so I think that especially 

607
00:40:11,400 --> 00:40:13,680
in mission critical 
environments, especially when 

608
00:40:13,960 --> 00:40:19,240
you have constraints around you,
speed is something different, 

609
00:40:19,440 --> 00:40:21,760
right? 
So you you cannot define speed 

610
00:40:21,760 --> 00:40:25,240
in terms of the output of or the
amount of code that you're 

611
00:40:25,240 --> 00:40:29,200
producing everyday. 
That that's more of a liability 

612
00:40:29,560 --> 00:40:33,040
in in many ways, right? 
Yeah, I've been seeing these 

613
00:40:33,040 --> 00:40:37,400
like generated charts to where 
employers are like trying to 

614
00:40:37,400 --> 00:40:41,840
track how productive developers 
are by like lines of code 

615
00:40:41,840 --> 00:40:44,840
committed. 
And that I was like, I mean, I 

616
00:40:44,840 --> 00:40:48,480
get it, that is a data point, 
but I don't think that means 

617
00:40:48,480 --> 00:40:51,680
that they're working harder than
a engineer that committed less 

618
00:40:51,680 --> 00:40:54,840
lines of code you. 
Know no, of course, because. 

619
00:40:54,840 --> 00:40:57,280
There's a lot of thinking that 
goes behind building. 

620
00:40:58,560 --> 00:41:00,360
Absolutely. 
I mean, you, you can judge a 

621
00:41:00,360 --> 00:41:01,960
book by the number of pages, 
right? 

622
00:41:01,960 --> 00:41:06,280
So and it's a masterpiece and it
is a really small book, so. 

623
00:41:07,080 --> 00:41:12,360
Yeah, exactly, exactly. 
So I always find like you always

624
00:41:12,360 --> 00:41:18,160
have a like the manager level 
people always trying to analyze 

625
00:41:18,160 --> 00:41:22,240
and put production numbers on. 
Like I feel like engineering is 

626
00:41:22,240 --> 00:41:26,880
like very. 
What's the word I'm looking for?

627
00:41:26,960 --> 00:41:29,040
Like it's creative work, right? 
So. 

628
00:41:29,400 --> 00:41:32,000
You're not always going to just 
be a producer. 

629
00:41:32,280 --> 00:41:35,520
You also have to like, you know,
come up with solutions. 

630
00:41:35,520 --> 00:41:38,760
You're going to be reading a lot
of code and you, you have to 

631
00:41:38,760 --> 00:41:42,240
like, think a lot. 
And you're also not always going

632
00:41:42,240 --> 00:41:47,400
to be, you know, an athlete with
the best solution instantly, 

633
00:41:47,400 --> 00:41:49,240
right? 
Sometimes you have to go for a 

634
00:41:49,240 --> 00:41:52,360
walk and you're like, oh, dude, 
that's how I fix that problem. 

635
00:41:52,800 --> 00:41:55,520
And so, like, you kind of have 
your ups and downs with 

636
00:41:55,520 --> 00:41:58,960
productivity, I think, as an 
engineer, yeah. 

637
00:41:59,840 --> 00:42:04,720
Absolutely, yeah, I, I think we.
Never got around to to find a 

638
00:42:04,720 --> 00:42:08,920
way to measure engineering work 
or let let you, you put it 

639
00:42:08,920 --> 00:42:11,080
correctly. 
I think creative work because 

640
00:42:11,080 --> 00:42:12,920
it's not just engineering, it's 
engineering. 

641
00:42:12,920 --> 00:42:17,600
But maybe the same thing applies
to design and and other things. 

642
00:42:19,880 --> 00:42:22,080
I think we we, we never. 
Managed to. 

643
00:42:23,960 --> 00:42:29,200
Find a way to. 
Or I don't. 

644
00:42:29,240 --> 00:42:33,880
I don't even know if there's. 
A way to, to, to do this so we, 

645
00:42:33,880 --> 00:42:37,000
we still look at at engineering 
or design or or other creative 

646
00:42:37,280 --> 00:42:41,480
disciplines as like the worker 
in the factory, right? 

647
00:42:42,200 --> 00:42:44,760
And, and you, you can't measure 
it that way. 

648
00:42:45,520 --> 00:42:47,840
It's not possible to merit 
right. 

649
00:42:47,840 --> 00:42:49,760
It's not just all production, 
but still. 

650
00:42:49,840 --> 00:42:53,000
Somehow. 
Yeah, but it isn't right because

651
00:42:53,200 --> 00:42:56,800
you, so it's, it's, I think what
what I was saying earlier is 

652
00:42:56,800 --> 00:43:00,680
that you are figuring it out as 
you go. 

653
00:43:01,080 --> 00:43:04,080
So as you go, you understand the
problem better and you figure 

654
00:43:04,080 --> 00:43:07,280
out the solution better and you 
build the thing and you 

655
00:43:07,280 --> 00:43:10,040
continuously rebuild the thing. 
And this is fundamentally 

656
00:43:10,040 --> 00:43:13,800
different from building the same
thing continuously all over 

657
00:43:13,800 --> 00:43:16,600
again, right. 
Yes, Well, like I always. 

658
00:43:16,600 --> 00:43:20,040
Look at like software 
development, especially when I 

659
00:43:20,040 --> 00:43:23,680
was running like a consultancy, 
everyone like a lot of times 

660
00:43:23,880 --> 00:43:27,120
clients that aren't familiar 
with how software works, they 

661
00:43:27,120 --> 00:43:31,040
think like it's one set cost. 
I'm going to get this product 

662
00:43:31,040 --> 00:43:34,880
exactly the way I want it and 
then it's forever done and wash 

663
00:43:34,880 --> 00:43:36,840
my hands of it and it'll just 
produce money. 

664
00:43:37,080 --> 00:43:41,720
But like software is a living 
entity, you keep doing 

665
00:43:41,720 --> 00:43:44,360
iterations, you keep fixing 
things because like you said, 

666
00:43:44,360 --> 00:43:46,560
like you, you solve the problem 
that you have the current 

667
00:43:46,560 --> 00:43:49,240
information for. 
But that problem shifts over 

668
00:43:49,240 --> 00:43:51,880
time as well. 
Yeah. 

669
00:43:52,400 --> 00:43:57,560
It's at least. 
To me, software engineering is 

670
00:43:57,560 --> 00:44:01,360
really a learning process. 
It's not a production process. 

671
00:44:01,480 --> 00:44:04,120
Right. 
So the like, like software is 

672
00:44:04,120 --> 00:44:08,520
really, so working software is 
really decide the fact of the 

673
00:44:08,520 --> 00:44:12,040
learning that you did. 
And without that learning part, 

674
00:44:12,040 --> 00:44:14,520
you cannot really have the 
working software part. 

675
00:44:14,880 --> 00:44:18,680
And I think this is really the, 
the legacy, I, I think the most 

676
00:44:18,680 --> 00:44:23,760
important legacy of Agile of, of
the 2000 software engineering 

677
00:44:23,760 --> 00:44:28,000
movement that led to agile and, 
and to, to changing the way we, 

678
00:44:28,000 --> 00:44:29,600
we think about software 
engineering. 

679
00:44:29,600 --> 00:44:36,440
Because the, the fundamental 
thing that you need to, to do is

680
00:44:36,880 --> 00:44:39,520
learn something about the 
problem you're solving And, and 

681
00:44:39,520 --> 00:44:42,040
that every, everything follows 
from that, right? 

682
00:44:43,320 --> 00:44:46,560
I think that's I, I got somehow 
a bit too philosophical, I 

683
00:44:46,560 --> 00:44:51,560
guess, but that we, we started 
from from AI, right? 

684
00:44:52,520 --> 00:44:53,840
Yeah. 
Well, I. 

685
00:44:53,880 --> 00:44:56,840
Think like these are good 
conversations, though, because 

686
00:44:57,560 --> 00:45:01,160
when you hear about these like, 
nightmare situations that other 

687
00:45:01,160 --> 00:45:04,160
people are doing, you're like, 
who's making those decisions? 

688
00:45:04,160 --> 00:45:07,440
You know, like who who decided 
it's a good idea that they're 

689
00:45:07,440 --> 00:45:10,880
going to fully trust Claude code
to do code review for their 

690
00:45:10,880 --> 00:45:15,200
entire team? 
Like I personally don't know any

691
00:45:15,200 --> 00:45:18,000
engineers that would say that's 
a good idea. 

692
00:45:19,200 --> 00:45:21,520
Like, I don't know, it's just 
wild to me. 

693
00:45:22,760 --> 00:45:24,160
Sorry I I lost you for. 
A minute. 

694
00:45:24,560 --> 00:45:26,320
Oh, I don't, I think. 
Oh, you. 

695
00:45:26,320 --> 00:45:27,280
Lost. 
Did you? 

696
00:45:27,440 --> 00:45:29,040
You missed what I said or are 
you good? 

697
00:45:29,400 --> 00:45:30,440
Yeah. 
Yeah, I lost your food. 

698
00:45:30,960 --> 00:45:32,840
OK. 
I think you were. 

699
00:45:32,840 --> 00:45:35,120
Good on my end. 
But yeah, I was just saying like

700
00:45:35,120 --> 00:45:38,960
to go like back to where I was 
like my buddy was told that 

701
00:45:38,960 --> 00:45:40,880
they're no longer doing PR 
reviews. 

702
00:45:41,920 --> 00:45:45,720
It's just unheard of. 
Like I don't think I have any 

703
00:45:45,720 --> 00:45:48,160
engineers in my day-to-day life 
that would say that's a good 

704
00:45:48,160 --> 00:45:51,960
idea. 
Like even people that are. 

705
00:45:51,960 --> 00:45:55,680
Gung ho and. 
Love AI and like letting it 

706
00:45:55,680 --> 00:45:59,600
write your code but everyone is 
still reviewing their code as 

707
00:45:59,600 --> 00:46:03,160
far as I know. 
No, that, that's. 

708
00:46:03,440 --> 00:46:05,680
I mean even. 
It depends on the context. 

709
00:46:05,680 --> 00:46:12,720
For example, counterexample I, I
I want to give you is is I I, As

710
00:46:12,720 --> 00:46:15,920
I said, I I've always been 
interested in networking 

711
00:46:15,920 --> 00:46:18,960
protocols, right? 
And so one thing I did I started

712
00:46:18,960 --> 00:46:23,680
doing when when levelling lexer 
actually 10 years ago was 

713
00:46:23,680 --> 00:46:29,680
building my own 
Http://implementation most for 

714
00:46:29,680 --> 00:46:33,160
learning purposes. 
So HTTP just came out. 

715
00:46:33,160 --> 00:46:35,520
So I wanted to understand the 
protocol. 

716
00:46:35,520 --> 00:46:38,560
And so I started reading 
galaxies and I, I started 

717
00:46:38,560 --> 00:46:41,880
playing with maybe, maybe I 
could implement these in Elixir 

718
00:46:42,920 --> 00:46:46,760
from scratch. 
So just using what, what the 

719
00:46:46,760 --> 00:46:50,560
beam and dot P give you. 
And let's try to do it right. 

720
00:46:51,160 --> 00:46:54,680
And I did and it was really 
interesting and I came up with 

721
00:46:54,680 --> 00:46:58,160
something which worked and, and 
I was really happy about the 

722
00:46:58,160 --> 00:47:00,120
process and I learned a lot 
about it. 

723
00:47:01,320 --> 00:47:08,200
And then HTTP 3 came about and 
it was really complex and, and 

724
00:47:08,280 --> 00:47:11,840
like much more complex than than
HTTP One or HTTP 2. 

725
00:47:12,800 --> 00:47:16,240
And I never actually managed to.
So I always wanted to add that 

726
00:47:16,240 --> 00:47:18,520
to my my implementation, but I 
never managed. 

727
00:47:20,840 --> 00:47:24,080
One month ago I I said, OK, 
let's let's try because I saw 

728
00:47:24,080 --> 00:47:28,440
the Matt Trudel so the the 
author of Bandit, which is one 

729
00:47:28,440 --> 00:47:33,080
of the major 
Http://implementations for for 

730
00:47:33,080 --> 00:47:36,080
Elixir. 
He had the PR open and divide 

731
00:47:36,080 --> 00:47:39,240
byte coded HTTP 3 support into 
into Bandit. 

732
00:47:41,760 --> 00:47:44,560
And I said, OK, so maybe let me 
try, right? 

733
00:47:44,640 --> 00:47:52,080
Let me use Claude and and try to
webcode the thing and I did it 

734
00:47:52,080 --> 00:47:58,600
took me 4 hours, 11 evening, 4 
hours and 100 bucks of of tokens

735
00:47:58,640 --> 00:48:01,680
for that's just awesome. 
I will say that's. 

736
00:48:01,680 --> 00:48:03,880
Awesome. 
Like, but you're also not 

737
00:48:03,880 --> 00:48:07,320
blindly generating that. 
You're still reading it and 

738
00:48:07,720 --> 00:48:10,000
probably putting an 
understanding behind it, you 

739
00:48:10,000 --> 00:48:12,920
know? 
Yeah, no, absolutely. 

740
00:48:12,920 --> 00:48:15,800
Because it had, of course. 
It had the framework, so it had 

741
00:48:15,800 --> 00:48:20,880
my library with the 
obstructions, so it knew in 

742
00:48:20,880 --> 00:48:22,840
general. 
Our our implementation. 

743
00:48:22,840 --> 00:48:26,800
Would look like I I inted it in 
implementing something like 

744
00:48:26,840 --> 00:48:30,920
other compression, I don't know 
Q pack or the Http://protocol 

745
00:48:30,920 --> 00:48:36,160
part, but the the IT also made 
stuff up so you made mistake and

746
00:48:36,840 --> 00:48:41,400
I needed to somehow put that 
race around it and maybe correct

747
00:48:41,400 --> 00:48:44,600
some mistake. 
But the impressive thing is that

748
00:48:44,600 --> 00:48:49,520
after 4 hours of byte coding and
I've not read a single line of 

749
00:48:49,520 --> 00:48:53,720
the coded throat, after four 
hours of byte coding, it was 

750
00:48:53,720 --> 00:48:58,400
able to make an HTTP request. 
And that, to me is fascinating 

751
00:48:58,400 --> 00:49:00,160
because that is. 
That's very cool. 

752
00:49:02,080 --> 00:49:03,960
So. 
For and I guess my point. 

753
00:49:03,960 --> 00:49:09,520
Is I'm sure that when you try to
put to take these tools and put 

754
00:49:09,520 --> 00:49:12,720
them in a mission critical 
context, in a business context 

755
00:49:12,720 --> 00:49:16,600
where you have to need to have 
certain guarantees, that's 

756
00:49:16,840 --> 00:49:20,800
problematic in many ways because
of everything we said before. 

757
00:49:21,480 --> 00:49:25,880
At the same time, what I found 
is that when you want to learn 

758
00:49:25,880 --> 00:49:29,560
something, when you want to do 
exploratory work, when you want 

759
00:49:29,560 --> 00:49:34,640
to maybe build the prototype and
find out how we can look like, 

760
00:49:35,520 --> 00:49:38,480
these are amazing tools like it 
really is. 

761
00:49:43,280 --> 00:49:46,720
We have. 
Medved talker, he said. 

762
00:49:46,720 --> 00:49:49,080
I thought about this a few 
months ago, bringing elixir into

763
00:49:49,080 --> 00:49:53,840
fintech, and I said elixir is 
the perfect fit just because you

764
00:49:53,840 --> 00:49:56,240
have just the nature of the 
beam, right? 

765
00:49:56,240 --> 00:49:59,080
It just, it works. 
The fault tolerance, the 

766
00:50:02,640 --> 00:50:04,760
supervision. 
Trees like, you know. 

767
00:50:04,760 --> 00:50:08,480
Anything that fails starts back 
up depending on your strategy, 

768
00:50:08,480 --> 00:50:10,920
whatever it may be right? 
It's just self healing. 

769
00:50:11,000 --> 00:50:15,400
It's perfect for for financial 
stuff, yeah. 

770
00:50:16,680 --> 00:50:24,120
Absolutely financial stuff for I
think all things web in a way, 

771
00:50:24,920 --> 00:50:29,400
all system that you need that 
need to be resilient, that need 

772
00:50:29,400 --> 00:50:34,400
to be soft real time, that need 
to to have certain capabilities.

773
00:50:34,400 --> 00:50:37,120
I think it's a great fit for a 
number of things. 

774
00:50:37,440 --> 00:50:39,280
Me too. 
I always think, I think it's the

775
00:50:39,280 --> 00:50:42,000
perfect. 
Solution for everything, but I 

776
00:50:42,000 --> 00:50:46,120
might be biased, I don't know. 
I just haven't found one where I

777
00:50:46,120 --> 00:50:51,080
wouldn't be like use elixir. 
I don't know. 

778
00:50:51,520 --> 00:50:54,560
I'm not sure. 
I think that that there are of 

779
00:50:54,560 --> 00:50:58,240
course reasonable cases where 
you want to do something else, 

780
00:51:00,000 --> 00:51:05,680
even though there are efforts. 
There's an Italian guy who built

781
00:51:06,280 --> 00:51:09,800
an implementation of the Beam 
for microcontrollers, right? 

782
00:51:09,800 --> 00:51:15,640
So really constrained hardware 
platforms where you don't, yeah,

783
00:51:15,640 --> 00:51:17,720
like limited resources and 
things. 

784
00:51:17,800 --> 00:51:20,880
And yeah, yeah, exactly so. 
And you built this this. 

785
00:51:20,880 --> 00:51:24,800
Implementation which is actually
quite popular is called Atom VM 

786
00:51:26,280 --> 00:51:29,160
and it's a re implementation of 
the Beam for for 

787
00:51:29,160 --> 00:51:31,360
microcontrollers and and limited
hardware. 

788
00:51:32,400 --> 00:51:37,960
And so to some extent you, you 
can leverage that, but I'm sure 

789
00:51:37,960 --> 00:51:41,080
that there are plenty of use 
cases where there are better 

790
00:51:41,080 --> 00:51:43,880
tools for, for, for building 
what you need to build. 

791
00:51:44,280 --> 00:51:50,040
I just find that if you build 
web stuff, if you build the kind

792
00:51:50,040 --> 00:51:52,400
of things that we, we build to 
deal. 

793
00:51:52,400 --> 00:51:56,640
But I I think vast majority of 
the software produced in the 

794
00:51:56,640 --> 00:52:00,800
software industry is is a good 
fit for for something like this,

795
00:52:00,840 --> 00:52:04,360
at least compared to other 
solutions which I agree. 

796
00:52:06,560 --> 00:52:08,440
I mean, what's? 
Kind of nice too, like. 

797
00:52:08,440 --> 00:52:12,800
When you start up as a start up 
with only a few users, just 

798
00:52:13,280 --> 00:52:17,560
picking an elixir and writing on
the beam makes scaling a breeze 

799
00:52:17,560 --> 00:52:21,000
when you get there, because one,
it's super efficient. 

800
00:52:21,000 --> 00:52:25,720
You probably need like one node 
for a very long time. 

801
00:52:26,080 --> 00:52:30,160
And then when you need to scale 
and distribute, it's very easy 

802
00:52:30,160 --> 00:52:32,920
to do. 
Yeah, I'd say. 

803
00:52:34,320 --> 00:52:38,040
With the with the beam, we would
that be league zero and with 

804
00:52:38,040 --> 00:52:43,360
whatever language you choose to 
use for for it, going from zero 

805
00:52:43,360 --> 00:52:49,160
to 10 thousands of 20,000 users 
is basically free. 

806
00:52:50,080 --> 00:52:53,080
So you don't even notice that 
that you are. 

807
00:52:53,120 --> 00:52:57,200
And that's not true necessarily 
true for for other stuff. 

808
00:52:58,240 --> 00:53:00,960
I I don't want to. 
So I'm not trying to bash any 

809
00:53:01,440 --> 00:53:04,920
any technology. 
I'm just saying that a lot of 

810
00:53:04,920 --> 00:53:08,200
the languages which are Luca, 
you can bash technology, it's 

811
00:53:08,200 --> 00:53:10,480
OK. 
No, no, man, I don't want to. 

812
00:53:10,520 --> 00:53:13,240
I don't. 
I don't want to. 

813
00:53:14,360 --> 00:53:16,480
I I just. 
Think that, but I don't think 

814
00:53:16,480 --> 00:53:19,400
there's there's like the reason 
is historically historical 

815
00:53:19,400 --> 00:53:23,320
mostly so and it connects to 
what you're saying. 

816
00:53:23,320 --> 00:53:26,760
So one of the great things, so 
everyone mentions the beam for 

817
00:53:26,760 --> 00:53:29,160
parallelism and concurrency and 
this kind of stuff. 

818
00:53:29,920 --> 00:53:32,680
I don't think it's a great. 
It is the greatest feature of 

819
00:53:32,680 --> 00:53:34,640
the beam. 
In my experience, the greatest 

820
00:53:34,640 --> 00:53:38,200
feature of the beam is full 
tolerance and resilience. 

821
00:53:38,560 --> 00:53:42,440
So the system is really stable. 
It is really hard to crash it 

822
00:53:42,720 --> 00:53:47,280
completely, to take it down. 
It's it's something that I think

823
00:53:47,280 --> 00:53:49,320
is really is really, really 
important. 

824
00:53:50,320 --> 00:53:52,360
Sometimes it's hard to know if 
it keeps. 

825
00:53:52,400 --> 00:53:56,440
Rebooting, you know, like, yeah,
because you don't know. 

826
00:53:58,920 --> 00:54:02,360
It's too resilient that that 
happened to me. 

827
00:54:02,360 --> 00:54:05,920
Yeah, that. 
That happened to but but that's 

828
00:54:05,920 --> 00:54:08,960
great that that's not true 
necessarily of a lot of other 

829
00:54:08,960 --> 00:54:12,120
stuff. 
And the, the parallelism and the

830
00:54:12,120 --> 00:54:16,080
concurrency really came later 
because in the early 90s when, 

831
00:54:16,320 --> 00:54:21,080
when the beam was was born, real
concurrency wasn't there. 

832
00:54:21,680 --> 00:54:23,120
The reason in Abdul wasn't 
there. 

833
00:54:23,120 --> 00:54:25,720
So the problems were really, 
really, really different. 

834
00:54:25,720 --> 00:54:31,840
And it was born mostly for for 
fault tolerance right languages.

835
00:54:32,360 --> 00:54:35,160
Which were. 
Born like roughly in the same 

836
00:54:35,160 --> 00:54:37,040
period. 
So and we are talking mainstream

837
00:54:37,040 --> 00:54:40,640
languages because we're talking 
Python, we're talking Ruby, 

838
00:54:40,640 --> 00:54:43,760
we're talking all all this kind 
of stuff really struggles with 

839
00:54:44,240 --> 00:54:46,520
with concurrency. 
So if you, if you need to scale 

840
00:54:47,200 --> 00:54:51,080
those kind of languages because 
of the same reasons they, they 

841
00:54:51,080 --> 00:54:55,000
want, they, they have problem 
like you, you, you're sort of 

842
00:54:55,000 --> 00:54:57,280
multi threading or 
multiprocessing, but of course 

843
00:54:57,280 --> 00:55:01,240
that's resource intensive. 
So you, you have a lot of issues

844
00:55:01,240 --> 00:55:03,840
with, with scaling that, that 
kind of technology. 

845
00:55:05,280 --> 00:55:09,880
The the amazing thing is that 
the BEAM kind of solved the the 

846
00:55:09,880 --> 00:55:12,720
parallelism and concurrency 
stuff without wanting to solve 

847
00:55:12,720 --> 00:55:18,920
it, and you don't have those. 
Kind of problems when working. 

848
00:55:18,920 --> 00:55:21,880
With with the beam and and 
that's that's amazing that 

849
00:55:21,880 --> 00:55:25,640
that's it is it's you don't even
really have. 

850
00:55:25,640 --> 00:55:29,720
To think about it either like 
it's just it works. 

851
00:55:30,920 --> 00:55:33,600
You can just spin up a process 
for whatever you want to do. 

852
00:55:33,600 --> 00:55:36,360
And even if you're not 
constantly using Gen. servers or

853
00:55:36,360 --> 00:55:41,160
anything, just using live views 
or Phoenix, like you're using 

854
00:55:41,160 --> 00:55:45,080
Gen. servers with ease and you 
don't even realize that it just 

855
00:55:45,440 --> 00:55:48,840
works out-of-the-box. 
Yeah. 

856
00:55:49,240 --> 00:55:51,480
Yeah, the the. 
Yeah, I guess the, the 

857
00:55:51,480 --> 00:55:55,600
concurrency story is not so easy
when you start to get into it, 

858
00:55:55,600 --> 00:55:58,400
because it then you, you start 
to understand that you have to 

859
00:55:58,400 --> 00:56:01,240
model things in a certain way, 
that processes need to be 

860
00:56:01,240 --> 00:56:04,520
managed, that you need to 
structure your supervision 3, 

861
00:56:05,080 --> 00:56:09,160
that you can't just a vision 
server because eventually it 

862
00:56:09,160 --> 00:56:13,160
will become the bottleneck if 
you have too many requests or 

863
00:56:13,160 --> 00:56:16,160
everything else for it. 
At the same time, it is true 

864
00:56:16,360 --> 00:56:20,560
what you say is true. 
So you use Phoenix and you, you 

865
00:56:20,720 --> 00:56:25,640
already have this built for you.
So, so you, you don't realize 

866
00:56:25,640 --> 00:56:31,360
what happens backstage, but in 
fact you are using the processes

867
00:56:31,360 --> 00:56:34,040
a lot and, and it just works, 
right. 

868
00:56:34,480 --> 00:56:38,080
And when you want, you can dig 
into that stuff and start to 

869
00:56:38,080 --> 00:56:41,800
understand the, the primitives 
of the system that that's 

870
00:56:41,840 --> 00:56:45,560
really, that's amazing. 
I think like when I first 

871
00:56:45,560 --> 00:56:47,880
started writing. 
Elixir I wrote wrote. 

872
00:56:49,800 --> 00:56:52,720
I hear some feedback, but is 
that me? 

873
00:56:55,520 --> 00:56:57,520
I might be looping through your 
microphone. 

874
00:56:59,040 --> 00:57:08,300
I think a little. 
Bit yeah, that's strange because

875
00:57:08,300 --> 00:57:09,460
I didn't change. 
Anything. 

876
00:57:10,500 --> 00:57:11,700
Well, let's see. 
I'll. 

877
00:57:11,700 --> 00:57:13,820
Just talk. 
Yeah, a little bit. 

878
00:57:16,940 --> 00:57:18,740
I don't know if you guys are, if
anyone. 

879
00:57:18,740 --> 00:57:21,180
Listening. 
Is my feedback bad? 

880
00:57:22,120 --> 00:57:25,360
If it is, we'll figure it out. 
If it's not, I can hear you just

881
00:57:25,360 --> 00:57:26,680
fine. 
I don't. 

882
00:57:26,680 --> 00:57:29,920
Hear anything? 
OK, I'm just watching. 

883
00:57:29,920 --> 00:57:34,360
After I talk, it comes back 
through on on your mic levels a 

884
00:57:34,360 --> 00:57:37,360
little bit. 
Let me see. 

885
00:57:41,240 --> 00:57:48,880
Maybe I can, I'll just turn on. 
A noise gate. 

886
00:57:48,920 --> 00:57:55,600
Let's see, maybe. 
OK, well. 

887
00:57:56,120 --> 00:57:56,880
It seems. 
OK, now. 

888
00:57:56,880 --> 00:57:59,080
Nope. 
Nope. 

889
00:57:59,080 --> 00:58:01,880
There I am. 
Or or I. 

890
00:58:01,880 --> 00:58:05,400
Can just mute myself while. 
While you're talking, all right.

891
00:58:07,400 --> 00:58:09,000
All right, yeah, I guess that 
works. 

892
00:58:09,000 --> 00:58:11,720
We'll do that. 
Now I forgot what I was going to

893
00:58:11,720 --> 00:58:18,400
say but. 
Well, we're talking about 

894
00:58:18,400 --> 00:58:19,520
supervision trees. 
Oh yeah. 

895
00:58:19,520 --> 00:58:23,600
When I first started writing 
Elixir, I didn't know what I was

896
00:58:23,600 --> 00:58:26,320
getting myself into. 
So I was like writing Elixir is 

897
00:58:26,320 --> 00:58:31,240
like just a Restful API product,
like just doing my thing, 

898
00:58:31,360 --> 00:58:37,520
writing it like I was writing a 
node JSAPI and I learned a lot. 

899
00:58:37,520 --> 00:58:40,960
But like I like at first I fell 
in love with the syntax of 

900
00:58:40,960 --> 00:58:44,360
Elixir and then I started 
understanding like the 

901
00:58:44,360 --> 00:58:49,520
supervision tree, Genservers, 
like OTP, all that cool stuff. 

902
00:58:49,920 --> 00:58:54,360
And but I feel like I wrote 
Elixir and wrote like endpoints 

903
00:58:54,360 --> 00:58:59,360
and things for like 6 to 8 
months before I even started 

904
00:58:59,560 --> 00:59:02,720
like harnessing the actual power
behind Elixir. 

905
00:59:03,040 --> 00:59:07,920
And then once you fully grasp 
that, like the power, you're 

906
00:59:07,920 --> 00:59:11,680
just like, why haven't I? 
Been using this my. 

907
00:59:11,960 --> 00:59:17,920
Entire tech career. 
And that's kind of why, yeah. 

908
00:59:18,920 --> 00:59:20,320
Yeah, go ahead. 
I had that feeling too. 

909
00:59:20,720 --> 00:59:23,600
Also, that's what I struggled 
with, especially in the 

910
00:59:23,600 --> 00:59:26,200
beginning. 
So I guess 10 years ago I 

911
00:59:26,200 --> 00:59:29,040
started a little bit more than 
10 years ago, I started playing 

912
00:59:29,040 --> 00:59:31,920
with Elixir. 
And what I struggled with while 

913
00:59:31,920 --> 00:59:35,960
learning was trying to put all 
things together so that the 

914
00:59:35,960 --> 00:59:37,520
language is pretty 
straightforward. 

915
00:59:38,320 --> 00:59:42,520
But learning how to piece the 
OTP and all the all the 

916
00:59:42,520 --> 00:59:46,560
processing stuff together with 
the the business logic was 

917
00:59:47,160 --> 00:59:49,000
really the most challenging part
for me. 

918
00:59:49,360 --> 00:59:55,680
And I I also think that's 
because 10 years ago there was 

919
00:59:55,680 --> 00:59:59,120
way less knowledge available on 
the Internet. 

920
00:59:59,120 --> 01:00:05,080
There were way less books. 
In many ways, I think that they 

921
01:00:05,080 --> 01:00:10,720
were somehow were well kept 
secret of the airline community.

922
01:00:11,600 --> 01:00:15,760
You know, a lot of stuff that 
the the airline community took 

923
01:00:15,760 --> 01:00:20,080
for granted, but that wasn't 
really so easy to piece 

924
01:00:20,080 --> 01:00:23,200
together. 
And so, yeah, that that that was

925
01:00:23,320 --> 01:00:25,920
I guess the most challenging 
thing for for me too. 

926
01:00:27,160 --> 01:00:30,560
That that's also, I think one of
the big merits of the OR Elixir,

927
01:00:32,160 --> 01:00:37,200
which is in the end, just a thin
layer on top of of of the BMN 

928
01:00:37,200 --> 01:00:41,480
dot P. 
But the, the big merit of Elixir

929
01:00:41,480 --> 01:00:46,400
to me is making all this stuff 
accessible, like easier to 

930
01:00:46,400 --> 01:00:54,040
assess rather than like the, I 
think the tooling, I think mix, 

931
01:00:54,040 --> 01:00:59,080
I think documentation, I think 
unit testing, I think all the 

932
01:00:59,080 --> 01:01:01,880
things that you need, the 
experience that you have when 

933
01:01:01,880 --> 01:01:06,120
you install Elixir is everything
is there and it, it works, 

934
01:01:06,360 --> 01:01:08,880
right. 
And you don't have to start 

935
01:01:08,880 --> 01:01:13,160
picking tools, external tools 
for doing everything that you 

936
01:01:13,160 --> 01:01:16,120
need to do. 
And also you have a lot of 

937
01:01:16,120 --> 01:01:20,920
documentation and a lot of books
and tutorials from the community

938
01:01:20,920 --> 01:01:25,480
that today help you grasp these 
and understand how, how you 

939
01:01:25,480 --> 01:01:28,120
build the real application, not 
just experiment with the 

940
01:01:28,120 --> 01:01:30,360
language. 
And 10 years ago, it wasn't 

941
01:01:30,360 --> 01:01:33,280
necessarily the case. 
Yeah. 

942
01:01:33,280 --> 01:01:34,920
And I. 
Think like Elixir. 

943
01:01:34,920 --> 01:01:38,440
Brings kind of like a modern 
syntax, right to I think it kind

944
01:01:38,440 --> 01:01:42,480
of revived Erlang because I 
don't think like Erlang should 

945
01:01:42,480 --> 01:01:45,240
be way more popular than it is. 
But I think it's like it's a 

946
01:01:45,240 --> 01:01:47,520
difficult syntax. 
It's not easy to write. 

947
01:01:47,520 --> 01:01:51,800
It doesn't seem natural to me. 
And I think just Elixir kind of,

948
01:01:51,920 --> 01:01:55,080
you know, being that modern 
syntax, fun to write, easy to 

949
01:01:55,080 --> 01:01:59,560
read, it kind of it brought the 
attention that Erlang deserves a

950
01:01:59,560 --> 01:02:03,600
little bit. 
Yeah, yeah, sure. 

951
01:02:04,600 --> 01:02:06,760
Yeah. 
Erlang, I, I don't have much 

952
01:02:06,760 --> 01:02:09,680
experience with Erlang because I
started straight with, with the 

953
01:02:09,680 --> 01:02:11,640
leagues there. 
So yeah, I, I can navigate my 

954
01:02:11,640 --> 01:02:15,080
way through Erlang code, but 
I'm, I'm not really expert in, 

955
01:02:15,080 --> 01:02:16,640
in, in Ireland. 
Same. 

956
01:02:16,640 --> 01:02:19,520
I'm the same. 
Yeah, it's, it's a bit baroque. 

957
01:02:19,960 --> 01:02:26,840
I'd say it's, it's quite 
strange, I think. 

958
01:02:26,840 --> 01:02:33,720
Yeah, syntax made it more 
accessible to maybe to also to 

959
01:02:33,720 --> 01:02:37,040
younger people to, to, to people
not used to, to that kind of 

960
01:02:37,040 --> 01:02:40,280
syntax, but also tooling, I 
guess because for example, 

961
01:02:40,280 --> 01:02:44,360
having a package manager. 
So a lot of stuff, at least when

962
01:02:44,360 --> 01:02:49,280
when I I looked at it earlier, 
like I think. 

963
01:02:49,680 --> 01:02:54,360
Raybar. 
Came not so long ago, and before

964
01:02:54,360 --> 01:02:57,160
that you had. 
The standard way was MC5's, 

965
01:02:57,560 --> 01:03:02,040
which is totally fine if you 
come from that background, but 

966
01:03:02,040 --> 01:03:05,880
maybe having a scaffolding tool,
having a package manager, being 

967
01:03:05,880 --> 01:03:13,000
able to so having some kind of 
more easy developer experience. 

968
01:03:13,000 --> 01:03:16,800
Also, for example, another thing
which happened and I remember 

969
01:03:16,800 --> 01:03:25,600
that is integrating releases 
right in, in mix that that 

970
01:03:25,600 --> 01:03:29,000
that's amazing. 
It's all automated and like you,

971
01:03:29,000 --> 01:03:31,080
you just take the command you 
get to release that you can 

972
01:03:31,080 --> 01:03:36,920
deploy wherever you want taking 
this. 

973
01:03:36,920 --> 01:03:38,280
Stuff and make it really easy 
to. 

974
01:03:38,280 --> 01:03:42,400
Use and and accessible was was a
really, really big merit of of 

975
01:03:42,400 --> 01:03:47,760
Elixir and yeah. 
Yeah, and the tooling just works

976
01:03:47,760 --> 01:03:50,760
well. 
Test like the testing suite like

977
01:03:51,600 --> 01:03:53,200
is amazing. 
I like it. 

978
01:03:53,560 --> 01:03:56,480
I what's funny is with 
Killswitch, I've been writing a 

979
01:03:56,480 --> 01:03:59,200
lot more JavaScript because I'm 
doing a lot of client side 

980
01:03:59,200 --> 01:04:02,040
things like encrypting before 
uploading. 

981
01:04:02,480 --> 01:04:07,000
And so I had to go back and 
remind like I had to start 

982
01:04:07,000 --> 01:04:10,480
JavaScript, like writing unit 
tests and stuff and integration 

983
01:04:10,480 --> 01:04:15,200
tests for JavaScript. 
And you forget how nice like 

984
01:04:15,400 --> 01:04:19,480
writing tests and just like the 
output of Elixir tests. 

985
01:04:19,480 --> 01:04:23,160
It's it's like night and day 
compared to other languages too,

986
01:04:24,880 --> 01:04:26,800
yeah. 
Yeah, it really is. 

987
01:04:26,840 --> 01:04:28,680
I think X. 
Unit is really simple. 

988
01:04:28,680 --> 01:04:33,320
It's really straightforward is 
but this, this is true about 

989
01:04:33,320 --> 01:04:35,080
many things, I guess in, in 
Elixir. 

990
01:04:35,080 --> 01:04:37,720
And one of the merits of the 
language and also one thing 

991
01:04:37,720 --> 01:04:42,960
which I guess allowed me to, to 
pick it as a technology to build

992
01:04:43,920 --> 01:04:50,160
companies on is that no one, or 
at least really, really few 

993
01:04:50,160 --> 01:04:55,520
people in the team came with the
Lex Bureau experience, right? 

994
01:04:55,520 --> 01:04:59,520
So most of the developers I have
on the team and I had on the on 

995
01:04:59,520 --> 01:05:02,920
previous team in other companies
where I, I, I made the same 

996
01:05:02,920 --> 01:05:06,040
choice. 
A lot of these people came from 

997
01:05:06,040 --> 01:05:13,720
random backgrounds, like, I 
don't know, C++ or PHP or Askel 

998
01:05:13,840 --> 01:05:19,000
or all kind of languages. 
And in my experience, the great 

999
01:05:19,000 --> 01:05:22,800
thing about the Lexi is that up 
to some level of complexity, up 

1000
01:05:22,800 --> 01:05:26,320
to some extent, picking up the 
language is really easy. 

1001
01:05:27,040 --> 01:05:29,240
So. 
So if you are a software 

1002
01:05:29,240 --> 01:05:33,000
engineer, you will pick up the 
language in a really short time.

1003
01:05:33,840 --> 01:05:36,360
And that's amazing. 
That's great because. 

1004
01:05:37,840 --> 01:05:41,320
Yeah. 
I I'm curious. 

1005
01:05:41,880 --> 01:05:45,640
With your like current hiring 
practices, do you aim for Elixir

1006
01:05:45,640 --> 01:05:48,720
engineers or do you not really 
care as long as they have like 

1007
01:05:48,720 --> 01:05:53,040
decent software experience Not. 
Not really. 

1008
01:05:53,240 --> 01:05:54,520
So yeah, that's. 
Awesome. 

1009
01:05:55,560 --> 01:06:01,080
Yeah, of course it's, it's also 
a practical reason like it's 

1010
01:06:01,120 --> 01:06:05,440
really might be difficult to 
find a lot of people with deeper

1011
01:06:05,440 --> 01:06:09,680
elixir experience, especially in
Italy which is a smaller market,

1012
01:06:13,480 --> 01:06:15,360
but. 
Also I guess. 

1013
01:06:16,280 --> 01:06:20,800
It was just a choice because I'm
not really interested in hiring 

1014
01:06:20,800 --> 01:06:24,920
people with X years of 
experience in technology. 

1015
01:06:24,920 --> 01:06:28,480
Why? 
I don't think that's a good way 

1016
01:06:28,480 --> 01:06:32,520
to so because of what I said 
earlier. 

1017
01:06:32,520 --> 01:06:39,880
So if engineering is a creative 
job, and if your job is building

1018
01:06:39,880 --> 01:06:43,920
an understanding of the problem 
and building a solution, I want 

1019
01:06:43,920 --> 01:06:48,120
someone who is willing to learn 
new stuff, right? 

1020
01:06:48,400 --> 01:06:50,160
So if. 
Someone says, no, I I don't want

1021
01:06:50,160 --> 01:06:53,000
to learn a lexer or I don't want
to learn any other thing. 

1022
01:06:53,200 --> 01:06:56,520
By the way, it's not just 
necessarily lexer, but if 

1023
01:06:56,520 --> 01:06:59,840
someone says that, it's a big 
red flag for me. 

1024
01:06:59,840 --> 01:07:01,400
Oh, for sure. 
Not because of a lexer. 

1025
01:07:01,920 --> 01:07:05,080
Yeah, so. 
So the the the interview. 

1026
01:07:05,080 --> 01:07:07,840
Process, for example, the 
technical interview process that

1027
01:07:07,840 --> 01:07:11,240
I came up with is starts from 
people's experience. 

1028
01:07:11,240 --> 01:07:16,080
So if I interview you, I will 
ask, tell me about something 

1029
01:07:16,080 --> 01:07:20,800
that you built that you find 
particularly interesting, right?

1030
01:07:21,240 --> 01:07:24,040
You, you pick what you built 
and, and you and you tell me. 

1031
01:07:24,040 --> 01:07:27,800
And then I will ask questions 
and try to understand exactly 

1032
01:07:27,800 --> 01:07:31,000
what you built and know it was 
and maybe we can reason about 

1033
01:07:31,000 --> 01:07:33,240
it. 
And then from there, maybe we 

1034
01:07:33,240 --> 01:07:38,960
can move to more, maybe. 
Theory. 

1035
01:07:38,960 --> 01:07:40,640
Maybe we. 
Can get into functional 

1036
01:07:40,640 --> 01:07:44,280
programming, maybe we can get 
into these things, but the the 

1037
01:07:44,280 --> 01:07:47,480
point for me is not that you 
demonstrate to me your ability 

1038
01:07:47,480 --> 01:07:51,800
to code in a specific language, 
the the point for me is that I 

1039
01:07:53,360 --> 01:07:55,360
can. 
Reason together. 

1040
01:07:55,360 --> 01:07:59,520
With you about the problem and 
and see how you go through some 

1041
01:07:59,680 --> 01:08:03,080
kind of engineering program. 
Yeah, you want to be. 

1042
01:08:03,080 --> 01:08:05,880
Willing. 
To learn new things and you want

1043
01:08:05,880 --> 01:08:10,000
to see how they solve problems. 
And the language is kind of the 

1044
01:08:10,000 --> 01:08:13,280
last thing because if you can 
program, you can, you can learn 

1045
01:08:13,280 --> 01:08:17,439
syntax and learn a new language,
you know, so and you probably, 

1046
01:08:17,680 --> 01:08:20,520
you probably want to see 
excitement behind a project that

1047
01:08:20,520 --> 01:08:22,720
they built too from the ground 
up. 

1048
01:08:22,720 --> 01:08:24,840
Like if you're not excited 
walking through one of your 

1049
01:08:24,840 --> 01:08:27,240
projects you just built like, 
come on, man. 

1050
01:08:28,439 --> 01:08:30,359
Yeah, yeah, absolutely. 
Exactly. 

1051
01:08:30,439 --> 01:08:33,279
I mean, so you're an engineer. 
So if you're not excited about 

1052
01:08:33,279 --> 01:08:36,640
building and about learning a 
new language, what are we 

1053
01:08:36,640 --> 01:08:37,840
talking about? 
Right. 

1054
01:08:39,960 --> 01:08:43,840
I remember I like was. 
Interviewing like over a year 

1055
01:08:43,840 --> 01:08:46,840
ago now, but I'm pretty sure, 
like, that was one of the 

1056
01:08:46,840 --> 01:08:49,319
reasons I got the job is they're
like, can you walk us through 

1057
01:08:49,319 --> 01:08:52,240
like a side project? 
And I walked them through a 

1058
01:08:52,240 --> 01:08:55,479
website hosting platform that I 
built with like, some dynamic 

1059
01:08:55,479 --> 01:08:59,080
live view routing. 
And like, I was stoked about it.

1060
01:08:59,080 --> 01:09:02,479
And I went through it like, 
like, I was stoked. 

1061
01:09:02,479 --> 01:09:04,399
And I think they enjoyed seeing 
that. 

1062
01:09:06,479 --> 01:09:06,840
Yeah. 
Yeah. 

1063
01:09:07,439 --> 01:09:09,640
Absolutely. 
So they're like, OK, he actually

1064
01:09:09,640 --> 01:09:12,600
built this. 
And he's excited about it and 

1065
01:09:12,600 --> 01:09:16,640
can talk about it. 
Yeah, I. 

1066
01:09:16,640 --> 01:09:23,279
Guess especially especially. 
In a start up, because it's not 

1067
01:09:23,279 --> 01:09:26,840
like a job where you're working 
and you have all your little 

1068
01:09:26,840 --> 01:09:30,040
tasks that you need to do that 
day and someone decided what you

1069
01:09:30,040 --> 01:09:32,479
need to do and you just fill in 
the blanks, right? 

1070
01:09:33,080 --> 01:09:38,000
It's, it's more of a of the 
context where you need to 

1071
01:09:38,000 --> 01:09:41,200
understand problems and then 
propose solutions, implement 

1072
01:09:41,200 --> 01:09:45,319
solutions, build stuff. 
And so if you have no, no 

1073
01:09:45,319 --> 01:09:48,920
enthusiasm for this, it's going 
to be really, really, really, 

1074
01:09:48,920 --> 01:09:50,439
really hard to do. 
Yeah. 

1075
01:09:51,160 --> 01:09:55,000
So. 
In your last like 4 years as as 

1076
01:09:55,000 --> 01:10:00,400
sea bells been growing, what was
like the most unexpected problem

1077
01:10:00,400 --> 01:10:04,480
that you had to solve? 
Like did you have any like kind 

1078
01:10:04,480 --> 01:10:09,840
of like out of left field issues
that created a more creative 

1079
01:10:09,840 --> 01:10:20,360
solution? 
The most unexpected, I'm not 

1080
01:10:20,360 --> 01:10:28,320
sure. 
So the, the most problematic 

1081
01:10:28,320 --> 01:10:32,240
things we work with are external
integrations for like the nature

1082
01:10:32,240 --> 01:10:35,520
of The thing is that you, you 
work with, with unreliable 

1083
01:10:35,520 --> 01:10:38,800
stuff, right? 
So, but you somehow need to make

1084
01:10:38,800 --> 01:10:43,560
it reliable. 
Or maybe sometimes you work with

1085
01:10:43,560 --> 01:10:47,160
stuff which is not built to be 
integrated. 

1086
01:10:49,080 --> 01:10:54,560
So initially when we started 
out, for example, the electronic

1087
01:10:54,560 --> 01:10:57,800
invoicing system didn't have AP 
is. 

1088
01:10:57,800 --> 01:11:01,360
Today it has AP is and you can 
integrate with it and, and 

1089
01:11:01,360 --> 01:11:04,320
access data. 
But in the, in the beginning it 

1090
01:11:04,320 --> 01:11:08,000
had, it didn't have those. 
And so you had to somehow 

1091
01:11:08,040 --> 01:11:12,480
simulate the user interacting 
with the the website, right? 

1092
01:11:14,160 --> 01:11:17,640
And that's not great. 
I mean that that's not clean and

1093
01:11:17,640 --> 01:11:23,000
that's not exactly what you're 
supposed to do, but but it's, it

1094
01:11:23,000 --> 01:11:25,520
was necessary and you needed to 
solve that problem. 

1095
01:11:25,880 --> 01:11:29,040
And so you you have to build it.
And so you build some kind of 

1096
01:11:29,040 --> 01:11:32,760
scraper which simulates the user
logging into the website and 

1097
01:11:32,760 --> 01:11:37,440
then acquiring the credentials 
and then scraping data from the 

1098
01:11:37,440 --> 01:11:40,000
website because that's the only 
way you are going to get data, 

1099
01:11:40,520 --> 01:11:41,960
right. 
So you need, you need to get 

1100
01:11:41,960 --> 01:11:46,480
creative sometimes to, to solve 
to solve problems. 

1101
01:11:46,480 --> 01:11:52,160
And yeah, most of these, I guess
because the technical part was 

1102
01:11:53,200 --> 01:11:55,040
quite straightforward They. 
Say. 

1103
01:11:57,240 --> 01:12:00,840
And also thanks to Alex here, I 
guess because I mean, most of 

1104
01:12:00,840 --> 01:12:02,560
the time we're just building 
crud. 

1105
01:12:02,560 --> 01:12:07,080
Apps, right? 
Like with facelifts, and I mean 

1106
01:12:07,080 --> 01:12:10,680
for the most part, like a web 
app is just reading and writing 

1107
01:12:10,680 --> 01:12:13,680
to a database. 
Yeah, and up. 

1108
01:12:13,760 --> 01:12:16,760
Up to a point until. 
Until you realize that, for 

1109
01:12:16,760 --> 01:12:20,800
example, we have search indexes 
and we need to keep them updated

1110
01:12:20,800 --> 01:12:23,000
and we have data constantly 
coming in. 

1111
01:12:23,440 --> 01:12:27,280
And so at some point you eat 
the, the ceiling of what you can

1112
01:12:27,280 --> 01:12:29,760
do with just a simple crab up, 
right? 

1113
01:12:31,520 --> 01:12:37,040
But, but it's all engineering. 
So you start, you start 

1114
01:12:37,040 --> 01:12:39,600
introducing cues, you start 
introducing the synchronous 

1115
01:12:39,600 --> 01:12:45,040
stuff, you start making the 
system more complicated to to 

1116
01:12:45,040 --> 01:12:52,120
adjust the new the new reality. 
I think most of the problems 

1117
01:12:52,120 --> 01:12:55,720
come when you need to integrate 
with stuff which is not built 

1118
01:12:55,720 --> 01:12:59,440
for integration. 
Or for example, another thing 

1119
01:12:59,440 --> 01:13:03,120
that is problematic for us is 
accounting software. 

1120
01:13:04,360 --> 01:13:08,240
Companies have accounting 
software which is needed to for 

1121
01:13:08,240 --> 01:13:11,000
them to keep track of everything
and they need to somehow get 

1122
01:13:11,000 --> 01:13:14,880
their data. 
And ledgers, yeah, but 

1123
01:13:14,880 --> 01:13:18,200
surprisingly. 
Like the vast majority of 

1124
01:13:18,200 --> 01:13:21,600
companies in Italy still use on 
premises accounting software, 

1125
01:13:21,600 --> 01:13:24,880
which was which is from 20 years
ago, right? 

1126
01:13:24,880 --> 01:13:28,960
And so you have a computer in a 
closet at in the office of your 

1127
01:13:28,960 --> 01:13:33,680
customer and they somehow expect
that you are able to integrate 

1128
01:13:33,680 --> 01:13:35,360
this with, with the stuff, 
right? 

1129
01:13:36,880 --> 01:13:39,840
And it's not so easy. 
It's not, it's not so so 

1130
01:13:39,840 --> 01:13:48,400
straightforward to to do. 
Yeah, that, that's it I guess. 

1131
01:13:48,640 --> 01:13:49,480
How do you? 
How do you? 

1132
01:13:49,480 --> 01:13:50,920
Handle. 
How do you handle? 

1133
01:13:50,920 --> 01:13:55,080
Custom integrations like that to
stay in a profitable position. 

1134
01:13:55,080 --> 01:14:01,920
Like if someone has some custom 
Ledger solution like, yeah, 

1135
01:14:01,920 --> 01:14:04,560
sure, you can take their 
database data, but that's not 

1136
01:14:04,560 --> 01:14:08,240
necessarily the easiest thing to
like port to your tables. 

1137
01:14:09,320 --> 01:14:10,520
No, we. 
We aren't we. 

1138
01:14:10,520 --> 01:14:12,920
Aren't because. 
It's not possible or 

1139
01:14:12,920 --> 01:14:17,040
sustainable, especially because 
as I said, our customers have 

1140
01:14:17,400 --> 01:14:20,840
small and medium businesses and 
so they're not paying as huge 

1141
01:14:20,840 --> 01:14:22,480
amounts of money for the 
service. 

1142
01:14:23,200 --> 01:14:26,680
So we are not able to do that. 
And it's also most of the time 

1143
01:14:26,960 --> 01:14:30,080
unreliable and difficult to do 
that kind of integration. 

1144
01:14:31,080 --> 01:14:34,360
So in in reality, what we're 
doing is starting to build an 

1145
01:14:34,360 --> 01:14:38,400
alternative because we already 
have all the data that an 

1146
01:14:38,400 --> 01:14:43,680
accounting system needs. 
And so we want to also take the 

1147
01:14:43,680 --> 01:14:47,280
accountants and bring them on 
the platform to work live 

1148
01:14:47,360 --> 01:14:50,520
together with users to do the 
accounting part, which is 

1149
01:14:50,520 --> 01:14:54,560
something that we have have not 
done up to up to now. 

1150
01:14:54,840 --> 01:14:56,920
I feel like that's a smart move.
And then you. 

1151
01:14:56,920 --> 01:15:01,680
Kind of you're you're you're 
kind of just turning into that 

1152
01:15:02,280 --> 01:15:05,240
one stop shop, right? 
You're just a solution for small

1153
01:15:05,240 --> 01:15:07,640
business at that point. 
Yeah, absolutely. 

1154
01:15:07,640 --> 01:15:11,560
Also because. 
At least in Italy, accounting 

1155
01:15:11,560 --> 01:15:15,600
software is produced by a number
of incumbents which have the 

1156
01:15:15,600 --> 01:15:18,200
majority of the market. 
And of course they are not 

1157
01:15:18,200 --> 01:15:20,960
helping us integrating with 
their software, right? 

1158
01:15:20,960 --> 01:15:28,040
Of course, so and so you, you 
need to find a way to to to go 

1159
01:15:28,040 --> 01:15:32,880
around this and integrating with
with on premises custom 

1160
01:15:32,880 --> 01:15:38,520
software, legacy software from 
30 years ago is not going to be 

1161
01:15:38,520 --> 01:15:41,400
feasible, right? 
Well, you're still going to like

1162
01:15:41,520 --> 01:15:43,640
even. 
Once you have the solution, 

1163
01:15:43,640 --> 01:15:46,480
you'll still have to deal with 
the problem of migrating from 

1164
01:15:46,480 --> 01:15:49,840
other platforms, right? 
Absolutely. 

1165
01:15:50,000 --> 01:15:51,480
I'm not. 
Saying that it is. 

1166
01:15:51,480 --> 01:15:56,800
Not technically doable. 
It is technically doable, but it

1167
01:15:56,800 --> 01:16:00,200
will somehow be really difficult
to manage. 

1168
01:16:00,520 --> 01:16:03,400
And so it will be a huge 
operating cost. 

1169
01:16:03,400 --> 01:16:06,960
So you will have to have people 
managing the process of 

1170
01:16:06,960 --> 01:16:09,240
migrating customers from one 
thing to the other, of 

1171
01:16:09,240 --> 01:16:11,360
connecting stuff of making sure 
it works. 

1172
01:16:11,800 --> 01:16:15,960
So everything that's really, 
really complicated and the, the 

1173
01:16:16,120 --> 01:16:19,400
like the economics for this 
don't work in a SAS model, 

1174
01:16:19,400 --> 01:16:21,720
right? 
So you are not selling, you'd be

1175
01:16:21,720 --> 01:16:26,520
selling like consultancy or 
services, right, Not the SAS 

1176
01:16:26,520 --> 01:16:28,520
business. 
Yeah, yeah, Yeah. 

1177
01:16:29,000 --> 01:16:31,160
Well, I mean. 
I guess you can just find 

1178
01:16:31,160 --> 01:16:33,520
someone and turn them into a 
consultant, right? 

1179
01:16:34,880 --> 01:16:37,400
And then they can help people 
migrate to your platform. 

1180
01:16:38,080 --> 01:16:40,120
Yeah, yeah. 
One one thing you can do. 

1181
01:16:40,120 --> 01:16:45,040
This is by and those incumbents 
do this actually is partnering 

1182
01:16:45,040 --> 01:16:48,600
with with system integrators so 
that they have a huge network of

1183
01:16:48,600 --> 01:16:53,680
system integrators that also act
like resellers up to a point 

1184
01:16:53,680 --> 01:16:59,080
because they also sell their 
solutions absolutely. 

1185
01:16:59,080 --> 01:17:02,840
But I guess it's. 
A different model, right? 

1186
01:17:05,440 --> 01:17:07,320
And maybe we are. 
Challenging this model so. 

1187
01:17:07,320 --> 01:17:13,040
We are saying instead of paying 
thousands of EUR each year for, 

1188
01:17:13,560 --> 01:17:16,000
for the software and the 
services that you get from these

1189
01:17:16,000 --> 01:17:20,320
kind of players, you could buy a
subscriptions to our, to our 

1190
01:17:20,320 --> 01:17:24,480
service, which is all in the 
cloud. 

1191
01:17:24,480 --> 01:17:29,480
And, and you can also you, you 
don't need to operate it. 

1192
01:17:29,480 --> 01:17:31,160
You don't need the computer in 
the closet. 

1193
01:17:31,160 --> 01:17:33,720
You don't need anything on 
premise. 

1194
01:17:34,720 --> 01:17:36,960
You, you just need to to pay for
the services. 

1195
01:17:37,080 --> 01:17:39,800
You get everything. 
And also you get a different 

1196
01:17:39,800 --> 01:17:43,880
user experience because the, the
point is also that this kind of 

1197
01:17:43,880 --> 01:17:46,840
software is really from, from a 
different age. 

1198
01:17:46,840 --> 01:17:50,200
If you if you look at it, it's 
yeah, it's kind of wild to 

1199
01:17:50,200 --> 01:17:52,640
think. 
All the small businesses that 

1200
01:17:52,640 --> 01:17:56,880
would host servers in their in 
their office. 

1201
01:17:56,880 --> 01:17:59,600
Space. 
And have to maintain those and 

1202
01:17:59,600 --> 01:18:04,120
have a database and because I 
grew up in a small business, a 

1203
01:18:04,120 --> 01:18:06,600
small family business and that's
what we did. 

1204
01:18:06,600 --> 01:18:11,280
We had a server that we barely 
knew how it worked and it took 

1205
01:18:11,280 --> 01:18:15,000
care of all of our our 
invoicing, everything. 

1206
01:18:15,000 --> 01:18:16,720
It was kind of wild to think 
about. 

1207
01:18:17,720 --> 01:18:19,560
Yeah, absolutely. 
And you? 

1208
01:18:19,800 --> 01:18:23,600
Yeah, you have maybe some kind 
of computer guy which maintains 

1209
01:18:23,640 --> 01:18:27,840
it and makes it work, but I mean
computer. 

1210
01:18:27,840 --> 01:18:30,280
Guy like I sometimes wore that 
hat. 

1211
01:18:30,440 --> 01:18:32,440
It didn't. 
It didn't go well. 

1212
01:18:34,040 --> 01:18:39,480
Who hasn't? 
I mean like part. 

1213
01:18:39,480 --> 01:18:43,200
Of me misses those days because 
you didn't have recurring 

1214
01:18:43,200 --> 01:18:45,560
subscription costs for 
everything. 

1215
01:18:45,920 --> 01:18:48,280
But then like part of me, it's 
kind of nice just to have a 

1216
01:18:48,280 --> 01:18:51,280
service that works and it's easy
you. 

1217
01:18:51,280 --> 01:18:54,240
Can access it from almost. 
Any device that has access to 

1218
01:18:54,240 --> 01:18:56,160
the Internet. 
And that's pretty cool. 

1219
01:18:57,600 --> 01:18:59,640
Yeah, it's easy. 
For example one. 

1220
01:18:59,640 --> 01:19:03,640
Of the fears of of people 
running, for example, accounting

1221
01:19:03,640 --> 01:19:09,520
shops is that they know they 
have this server in their office

1222
01:19:09,520 --> 01:19:13,720
which is necessary to in order 
to run the the business. 

1223
01:19:14,720 --> 01:19:19,360
And maybe they also perceive 
somehow that it is a problem, 

1224
01:19:19,960 --> 01:19:22,320
but also they are worried about 
losing the data. 

1225
01:19:22,400 --> 01:19:25,680
So they are somehow reassured by
the fact that all their data, 

1226
01:19:25,680 --> 01:19:29,760
all their customers data is 
there in a physical place next 

1227
01:19:29,760 --> 01:19:36,200
to to where they work and when 
you try. 

1228
01:19:36,200 --> 01:19:40,920
To sell them the. 
Disaster model where you the 

1229
01:19:40,920 --> 01:19:43,720
data is in the cloud and of 
course it's their data, but it's

1230
01:19:43,720 --> 01:19:50,000
not on premises. 
It's kind of hard to to convince

1231
01:19:50,000 --> 01:19:52,560
them. 
There's something reassuring 

1232
01:19:52,560 --> 01:19:56,360
about having your own machines 
and your own data where you 

1233
01:19:57,320 --> 01:19:59,960
where you have your office. 
It is, especially if you know 

1234
01:19:59,960 --> 01:20:01,440
you're doing the. 
Backups and things. 

1235
01:20:01,440 --> 01:20:03,920
Then you, you know, you know you
have it, right. 

1236
01:20:04,440 --> 01:20:06,120
No, no, of course there's no 
technical. 

1237
01:20:06,120 --> 01:20:11,320
Reason because of course we can 
guarantee I mean, but better up 

1238
01:20:11,320 --> 01:20:16,040
times and better security and 
better backups and whatever you 

1239
01:20:16,400 --> 01:20:20,720
you will get from a server in a 
in a closet with no, no UPS and 

1240
01:20:20,720 --> 01:20:24,520
no no backup Internet 
connectivity. 

1241
01:20:24,920 --> 01:20:30,160
But yeah, somehow there's still 
something assuring for them in 

1242
01:20:30,320 --> 01:20:34,760
in having their their own 
hardware and being able to, I 

1243
01:20:34,760 --> 01:20:36,680
feel like a lot of like the 
older. 

1244
01:20:36,680 --> 01:20:40,200
Generation, too, before SAS 
became a thing, it was like you 

1245
01:20:40,200 --> 01:20:44,320
bought physical copies and 
versions of software, and they 

1246
01:20:44,320 --> 01:20:47,400
just liked knowing that that was
theirs. 

1247
01:20:47,400 --> 01:20:49,200
And no one can turn it off, you 
know? 

1248
01:20:50,720 --> 01:20:55,000
Yeah, yeah. 
Yeah, I remember it. 

1249
01:20:55,160 --> 01:20:59,560
I remember the box and copies of
software on the Chevy. 

1250
01:20:59,560 --> 01:21:04,080
So I just like floppies. 
Zip. 

1251
01:21:04,080 --> 01:21:09,720
Disks and tons of cd-roms. 
Yeah, I think I had the. 

1252
01:21:10,560 --> 01:21:15,880
I had a copy of Windows 95, of 
the Windows 95 installer on 25 

1253
01:21:15,880 --> 01:21:18,480
floppy disks. 
Oh my gosh, that's wild. 

1254
01:21:18,480 --> 01:21:20,520
Yeah, and. 
And the 16th was. 

1255
01:21:20,520 --> 01:21:24,960
Was bad for some reason and so 
it's never I never actually 

1256
01:21:24,960 --> 01:21:27,560
managed to install it all 
because you had to change the 

1257
01:21:27,560 --> 01:21:31,840
floppies and and the 16th floppy
was was yeah like so like. 

1258
01:21:32,320 --> 01:21:34,680
A. 
MB and 1/2 right? 

1259
01:21:34,680 --> 01:21:37,240
And you have to just keep moving
your floppies in and out. 

1260
01:21:39,200 --> 01:21:44,000
I don't miss those days. 
No, no, me too. 

1261
01:21:44,000 --> 01:21:47,520
Me too. 
Yeah, and now look. 

1262
01:21:47,520 --> 01:21:49,160
At the cool stuff we can Do, we 
don't. 

1263
01:21:49,240 --> 01:21:51,920
Really have to worry about 
limited resources. 

1264
01:21:51,920 --> 01:21:59,120
We just can add more RAM to 
things and go, yeah, that's true

1265
01:21:59,120 --> 01:22:01,760
in a way. 
It is also true that then you 

1266
01:22:01,760 --> 01:22:04,160
have. 
For example we have had in the 

1267
01:22:04,160 --> 01:22:10,440
past couple of years down times 
due to AWS outages due to 

1268
01:22:10,960 --> 01:22:14,320
Cloudflare, Cloudflare outages. 
Cloudflare was a bad one. 

1269
01:22:14,320 --> 01:22:16,680
This in the. 
Like a couple months ago 

1270
01:22:18,000 --> 01:22:19,160
exactly. 
And. 

1271
01:22:19,880 --> 01:22:24,040
So you kind of you, you still 
kind of depend from this 

1272
01:22:24,040 --> 01:22:30,320
infrastructure to to work. 
And so it's not necessarily 

1273
01:22:30,320 --> 01:22:35,320
always a good thing, but for 
sure access to to sophisticated 

1274
01:22:35,320 --> 01:22:40,440
tools is way better now. 
So yeah, it's, it's convenient. 

1275
01:22:40,480 --> 01:22:45,280
I mean, you, you can spin up a 
lot of stuff from just just from

1276
01:22:45,280 --> 01:22:47,320
from the comfort of your office 
or your house. 

1277
01:22:47,320 --> 01:22:52,000
And I, I remember the days when 
I had to drive to, to the data 

1278
01:22:52,000 --> 01:22:54,840
centre to, to install new Ardo. 
That's wild. 

1279
01:22:54,920 --> 01:22:57,880
Yeah, that's that's. 
Because at the. 

1280
01:22:57,880 --> 01:23:00,240
Time. 
You didn't have any other way to

1281
01:23:00,240 --> 01:23:03,160
do it, right? 
Dang, that's. 

1282
01:23:03,160 --> 01:23:06,880
Crazy, I've never experienced 
that, but yeah, that like I have

1283
01:23:06,880 --> 01:23:12,440
to go drive to the data centre, 
got a deployment to do, I took 

1284
01:23:12,440 --> 01:23:14,960
my bike, went there and. 
That's awesome. 

1285
01:23:16,000 --> 01:23:19,760
It, it was normal and of of 
course, today, today is it is 

1286
01:23:19,760 --> 01:23:22,480
much more convenient and and 
it's incredible what you can 

1287
01:23:22,480 --> 01:23:29,520
build just with the credit card 
and I I think like. 

1288
01:23:30,080 --> 01:23:33,240
That's probably one of my 
favorite things and what got me 

1289
01:23:33,240 --> 01:23:36,640
into software development. 
Like look at what we can build 

1290
01:23:37,320 --> 01:23:39,600
from just an investment of a 
computer. 

1291
01:23:39,920 --> 01:23:41,840
Like that's all you need. 
You don't even need a server 

1292
01:23:41,840 --> 01:23:45,080
because you can rent space on 
someone else's server, you know,

1293
01:23:45,600 --> 01:23:47,520
and you can deploy an entire 
product. 

1294
01:23:49,640 --> 01:23:51,680
And I think that's really cool. 
That's great. 

1295
01:23:53,320 --> 01:23:55,800
At the same time, I think it's 
also the source of many 

1296
01:23:55,800 --> 01:23:58,080
challenges. 
So what you were saying earlier 

1297
01:23:58,080 --> 01:24:03,320
about being conscious of 
security, of privacy issues, 

1298
01:24:03,320 --> 01:24:08,280
because it's so easy, so easy to
build something, to deploy it to

1299
01:24:08,640 --> 01:24:11,360
vibe code something and throw it
on the Internet. 

1300
01:24:12,400 --> 01:24:16,840
That of course that there's also
a lot of risk involved, right? 

1301
01:24:16,840 --> 01:24:21,680
Because then then you have 
security and you have privacy 

1302
01:24:21,680 --> 01:24:25,520
and you have a lot of other 
things that are not necessarily 

1303
01:24:25,520 --> 01:24:29,200
so, so straightforward. 
And, and that's why I'm not 

1304
01:24:29,200 --> 01:24:34,280
worried about losing my job or 
about engineers losing their 

1305
01:24:34,280 --> 01:24:36,840
job. 
I yeah, I don't. 

1306
01:24:37,160 --> 01:24:40,760
I don't worry about that either.
Like I see tooling that's 

1307
01:24:40,760 --> 01:24:44,960
getting really good, right? 
But there are you still need the

1308
01:24:44,960 --> 01:24:49,960
experience and a lot of like. 
The planning and. 

1309
01:24:50,320 --> 01:24:54,040
The ability to architect and the
ability to know when something's

1310
01:24:54,040 --> 01:24:58,280
not right, because otherwise 
nothing's correcting an LLM when

1311
01:24:58,280 --> 01:25:01,320
it's spitting out bad 
information or hallucinating, 

1312
01:25:01,320 --> 01:25:03,360
right? 
Something has to correct that 

1313
01:25:03,360 --> 01:25:07,880
path, and we're definitely not 
there yet, yeah. 

1314
01:25:08,400 --> 01:25:18,400
And and we, we are that. 
We might be getting choppy. 

1315
01:25:18,400 --> 01:25:19,600
Again. 
Oh, you're back. 

1316
01:25:19,640 --> 01:25:21,440
All right. 
OK, so. 

1317
01:25:22,360 --> 01:25:24,440
No, you're good. 
We, we are the ones. 

1318
01:25:24,440 --> 01:25:28,080
Who need? 
To to to somehow guide the 

1319
01:25:28,080 --> 01:25:29,360
process. 
Yeah, exactly. 

1320
01:25:30,520 --> 01:25:32,120
And like I know. 
Like I. 

1321
01:25:32,120 --> 01:25:36,280
Think, you know, what we do 
today is going to probably be 

1322
01:25:36,280 --> 01:25:39,760
vastly different in five years 
from now, even probably a year 

1323
01:25:39,760 --> 01:25:43,520
from now, but the engineer is 
still going to exist. 

1324
01:25:43,520 --> 01:25:47,200
We're just going to be able to 
do a lot of a lot more as a 

1325
01:25:47,200 --> 01:25:50,840
single person, yeah. 
Yeah, absolutely. 

1326
01:25:50,840 --> 01:25:55,720
But I think this. 
Is like not so different from 

1327
01:25:55,720 --> 01:25:59,080
what happened in the past. 
So as I was saying, so I, I 

1328
01:25:59,080 --> 01:26:01,760
don't need to drive to the data 
center anymore, right? 

1329
01:26:02,640 --> 01:26:06,240
And it's the same thing like I 
did because there was no, no 

1330
01:26:06,240 --> 01:26:08,760
other option if I wanted to, to 
set up a new server. 

1331
01:26:09,160 --> 01:26:12,720
And now I don't have to, right? 
So yeah, things have improved. 

1332
01:26:12,760 --> 01:26:19,680
Things have changed and I, I 
think like AI is, is doing the 

1333
01:26:19,680 --> 01:26:26,200
same thing in a different way. 
It is really commoditizing the 

1334
01:26:26,200 --> 01:26:30,680
production of, of software and 
the, the product, the act of 

1335
01:26:30,680 --> 01:26:35,320
writing code. 
But I never, I never thought of 

1336
01:26:35,320 --> 01:26:38,960
myself when I I was a coder and 
I coded all day. 

1337
01:26:39,800 --> 01:26:43,600
Still, when I when I do it, I 
never thought that my job was 

1338
01:26:43,600 --> 01:26:46,520
writing the code. 
I thought that my job was 

1339
01:26:46,520 --> 01:26:48,000
building a solution for 
something. 

1340
01:26:48,400 --> 01:26:51,680
Your job is solving a problem. 
Yeah, absolutely. 

1341
01:26:51,840 --> 01:26:53,720
Yeah, it is. 
It is solving a problem. 

1342
01:26:53,720 --> 01:26:57,520
It is not writing the code like 
writing the code is the, the, 

1343
01:26:57,600 --> 01:27:01,640
the medium I, I, I need at the 
moment, the tool I need to do to

1344
01:27:01,640 --> 01:27:03,960
to do what I need to do. 
But what I need to do is 

1345
01:27:03,960 --> 01:27:05,320
building something. 
Yeah. 

1346
01:27:05,320 --> 01:27:07,200
And I think that's the 
perspective. 

1347
01:27:07,200 --> 01:27:11,880
That people need because I feel 
like there's I, you know, you 

1348
01:27:11,880 --> 01:27:15,240
have your software engineers 
that are like gun ho AI and then

1349
01:27:15,240 --> 01:27:17,720
you have the holdouts that don't
like it at all. 

1350
01:27:17,960 --> 01:27:21,000
And like, I kind of get where 
they're coming from, but I do 

1351
01:27:21,000 --> 01:27:24,440
think they're more focused on 
thinking that they're a software

1352
01:27:24,440 --> 01:27:27,440
engineer because they physically
write lines of code. 

1353
01:27:27,440 --> 01:27:30,280
And that's that's not, that's 
not what makes them a good 

1354
01:27:30,280 --> 01:27:33,000
engineer. 
No, absolutely. 

1355
01:27:33,160 --> 01:27:37,560
And also I think that. 
Maybe a lot of the narrative 

1356
01:27:37,560 --> 01:27:42,120
about software engineering being
bad and about engineers losing 

1357
01:27:42,120 --> 01:27:45,800
their jobs is coming from the 
same people selling the 

1358
01:27:46,280 --> 01:27:49,440
solution. 
Of course, you know, yeah, 

1359
01:27:49,480 --> 01:27:51,440
they're, they're over hyping it,
you know. 

1360
01:27:51,720 --> 01:27:55,680
Well, like I have a couple 
friends in my life that are not 

1361
01:27:55,680 --> 01:28:00,320
technical people and they're 
trying to like write apps and 

1362
01:28:00,320 --> 01:28:02,960
like make solutions for their 
like day job, right? 

1363
01:28:03,560 --> 01:28:09,280
And some of the things that they
they ask me about or are telling

1364
01:28:09,280 --> 01:28:14,880
me that they're doing and 
trusting to AI, our jobs are. 

1365
01:28:14,880 --> 01:28:18,600
Secure for a very long time. 
Because they're doing some very 

1366
01:28:18,600 --> 01:28:23,360
scary things and just trusting 
and they like, they don't know 

1367
01:28:23,360 --> 01:28:27,200
what environment variables are, 
they don't know what git is, 

1368
01:28:27,200 --> 01:28:29,960
They don't know what a lot of 
things are and like, which is 

1369
01:28:29,960 --> 01:28:32,840
fine, they can learn. 
And I do think AI is a great 

1370
01:28:32,840 --> 01:28:36,760
tool to help you learn. 
But if you're just vibe coding 

1371
01:28:36,760 --> 01:28:40,080
with it every day and not using 
it to learn as well, I don't 

1372
01:28:40,080 --> 01:28:41,520
think you're going to benefit 
much. 

1373
01:28:43,320 --> 01:28:45,880
Yeah. 
I think it will be interesting 

1374
01:28:45,880 --> 01:28:49,440
to. 
To see what happens because me 

1375
01:28:49,440 --> 01:28:53,080
and and you we we grew up from a
different perspective right. 

1376
01:28:53,080 --> 01:28:57,000
We we needed to learn to code 
and then we are looking at AI 

1377
01:28:57,360 --> 01:29:01,520
doing some of these for us. 
I I'm extremely curious of 

1378
01:29:01,520 --> 01:29:07,080
seeing someone starting today 
what what is perspective will be

1379
01:29:08,600 --> 01:29:12,120
yeah at at some point. 
So, so how, how will it work? 

1380
01:29:12,160 --> 01:29:17,240
Because at the same time I can, 
I can say that learning for me, 

1381
01:29:17,720 --> 01:29:22,520
especially at the beginning in 
the 90s, it was painful because 

1382
01:29:22,520 --> 01:29:24,840
you didn't have a lot of 
information because you needed, 

1383
01:29:25,120 --> 01:29:29,520
so it, it was way more painful. 
You needed physical books back 

1384
01:29:29,520 --> 01:29:31,880
then. 
Yeah, absolutely. 

1385
01:29:31,920 --> 01:29:37,480
I still do because I love books.
But yeah, I mean, it, it was 

1386
01:29:37,480 --> 01:29:41,480
really hard to to, to gather 
information and then to acquire 

1387
01:29:41,480 --> 01:29:43,920
knowledge and then to be able to
produce something. 

1388
01:29:44,680 --> 01:29:46,880
And, and you needed to 
experiment a lot. 

1389
01:29:47,480 --> 01:29:50,400
But that's also what allowed me 
to learn a lot of stuff. 

1390
01:29:51,200 --> 01:29:56,240
And I'm, I'm not sure I, I think
the same thing in, in some form 

1391
01:29:56,240 --> 01:29:59,280
will happen with, with the with 
the AI and with these tools and 

1392
01:29:59,280 --> 01:30:03,320
for people starting right now. 
But I think yeah, yeah, people 

1393
01:30:03,320 --> 01:30:04,800
are going to just have different
pain. 

1394
01:30:04,800 --> 01:30:07,560
Points of learning, right? 
Like, yeah, they can ask an LLM 

1395
01:30:07,560 --> 01:30:10,680
something, it'll answer them. 
But now they're going to run 

1396
01:30:10,680 --> 01:30:14,200
into problems where they might 
not know how DevOps works, and 

1397
01:30:14,200 --> 01:30:16,360
they could have security 
vulnerabilities and they're 

1398
01:30:16,360 --> 01:30:18,200
going to have these. 
They're going to have pain 

1399
01:30:18,200 --> 01:30:21,000
points that they have to still 
work through and learn, you 

1400
01:30:21,000 --> 01:30:23,480
know? 
Yeah, I guess. 

1401
01:30:23,480 --> 01:30:26,400
That well. 
Maybe it won't be so different 

1402
01:30:26,400 --> 01:30:29,880
because I was like my my 
frustration with the with the 

1403
01:30:29,880 --> 01:30:33,200
compiler of the computer telling
me that I was wrong. 

1404
01:30:33,640 --> 01:30:37,640
It will be the new frustration 
with the LLM not telling you the

1405
01:30:37,640 --> 01:30:40,800
truth or making stuff up. 
Exactly. 

1406
01:30:45,400 --> 01:30:47,320
So maybe it won't be so 
different. 

1407
01:30:47,320 --> 01:30:49,920
At all? 
Yeah, exactly. 

1408
01:30:50,360 --> 01:30:53,200
No, like I know like there's 
some like doom and gloom with 

1409
01:30:53,200 --> 01:30:56,240
like being a junior or being 
really new to programming right 

1410
01:30:56,240 --> 01:30:58,640
now. 
And I want to stay optimistic on

1411
01:30:58,640 --> 01:31:02,040
that end too, because I, there 
is parts of me that are worried 

1412
01:31:02,040 --> 01:31:05,080
because I feel like a lot of 
engineering positions, everyone 

1413
01:31:05,080 --> 01:31:09,240
wants seniors now and they want 
to just like leverage AI with 

1414
01:31:09,240 --> 01:31:12,680
senior knowledge, right? 
But I still think there's space 

1415
01:31:12,680 --> 01:31:16,440
for juniors because you can just
get up to speed so much faster. 

1416
01:31:16,440 --> 01:31:20,440
Like, even if you just need like
a, a ticket puncher on your code

1417
01:31:20,440 --> 01:31:24,080
base, like a junior is perfect 
with that, like a like give them

1418
01:31:24,360 --> 01:31:29,040
some good AI tooling and you 
know, some guidance like PR 

1419
01:31:29,040 --> 01:31:32,640
review and like senior engineers
that are working around them. 

1420
01:31:33,000 --> 01:31:34,320
They can be a good ticket 
puncher. 

1421
01:31:34,320 --> 01:31:37,560
They can fix a lot of bugs in 
the code, you know, so I think 

1422
01:31:37,760 --> 01:31:40,240
there's still, there's still 
going to be a lot of 

1423
01:31:40,240 --> 01:31:44,440
opportunities for new people. 
Absolutely, absolutely. 

1424
01:31:44,440 --> 01:31:45,760
And that's. 
Why? 

1425
01:31:45,840 --> 01:31:52,200
I think you need a great, like 
you need a great culture too to 

1426
01:31:52,200 --> 01:31:56,440
to do that, though, you, you 
need a system where people 

1427
01:31:56,440 --> 01:32:00,160
understand that you need people 
at different level of levels of 

1428
01:32:00,160 --> 01:32:03,840
experience. 
And you need to, to, to nurture 

1429
01:32:03,840 --> 01:32:08,720
the culture where, where you 
have a system where you care 

1430
01:32:08,720 --> 01:32:12,600
about quality somehow, right. 
So this doesn't mean that you 

1431
01:32:12,600 --> 01:32:14,800
can't use AI. 
You can use AI, but you also 

1432
01:32:14,800 --> 01:32:18,160
need systems in place to make AI
work. 

1433
01:32:18,160 --> 01:32:22,520
And at the same time, you need 
inevitably you will need to have

1434
01:32:22,520 --> 01:32:24,440
younger people at some point, 
right? 

1435
01:32:24,520 --> 01:32:28,120
We, we can't just or or I don't 
know. 

1436
01:32:28,960 --> 01:32:33,160
So if you remove young people at
some point, you will only only 

1437
01:32:33,160 --> 01:32:37,880
have a senile program or not. 
Well, that's the yeah, that's. 

1438
01:32:37,880 --> 01:32:40,680
The big problem, right, Like if 
you don't hire young people, 

1439
01:32:40,680 --> 01:32:43,840
then you're only going to have 
greybeards, and then greybeards 

1440
01:32:43,840 --> 01:32:48,040
retire, and then what? 
Yeah, yeah, yeah, yeah. 

1441
01:32:48,440 --> 01:32:55,360
And and then who does it right? 
Who will be the so who will will

1442
01:32:55,360 --> 01:33:00,240
be the next wave of of computer 
engineers exactly You need them.

1443
01:33:00,960 --> 01:33:02,760
Yeah. 
So I think we as long as we keep

1444
01:33:02,760 --> 01:33:05,560
that. 
In mind and I think that's the 

1445
01:33:06,240 --> 01:33:10,520
maybe a problem with like less 
technical founders that have a 

1446
01:33:10,520 --> 01:33:13,360
tech company. 
If they don't see that and they 

1447
01:33:13,360 --> 01:33:17,800
just want, you know, smart 
senior level engineers that can 

1448
01:33:17,800 --> 01:33:22,280
just knock things out. 
I feel like you're not thinking 

1449
01:33:22,280 --> 01:33:24,920
about the full problem because 
we're all going to be in a 

1450
01:33:24,920 --> 01:33:28,960
position where you need to 
replace your older developers 

1451
01:33:28,960 --> 01:33:32,640
when they retire, they move on. 
Like another huge concern, 

1452
01:33:32,640 --> 01:33:36,000
especially with LMS. If you just
have senior level engineers, 

1453
01:33:36,480 --> 01:33:39,040
they're going to start building 
their own products and might be 

1454
01:33:39,040 --> 01:33:40,760
successful on their own and then
leave. 

1455
01:33:40,760 --> 01:33:42,520
And then you need to be able to 
replace them. 

1456
01:33:42,880 --> 01:33:45,360
And hopefully you had some under
them that they were kind of 

1457
01:33:45,360 --> 01:33:47,160
training. 
So I think we have to just kind 

1458
01:33:47,160 --> 01:33:52,360
of, we got to keep this in mind 
just as if you're a founder or 

1459
01:33:52,360 --> 01:33:56,120
anything involved in tech. 
Yeah, yeah. 

1460
01:33:56,120 --> 01:33:57,720
Absolutely. 
At least if you are. 

1461
01:33:58,160 --> 01:34:01,440
In it for for the for the long 
game, Yeah. 

1462
01:34:01,720 --> 01:34:05,160
If you're playing the long game,
then then you need to worry 

1463
01:34:05,160 --> 01:34:09,400
about this. 
I don't know my my impression is

1464
01:34:09,400 --> 01:34:10,120
that. 
Everything is. 

1465
01:34:10,120 --> 01:34:16,360
Getting real fast, really fast 
and always it's always faster in

1466
01:34:16,360 --> 01:34:20,840
this industry and and I don't 
know, I don't know how many 

1467
01:34:20,840 --> 01:34:24,800
companies really are there for 
the long run there for, for 

1468
01:34:24,800 --> 01:34:28,320
building something that lasts. 
So maybe also this, this kind of

1469
01:34:28,320 --> 01:34:32,600
view of things is, is a bit of 
view of the it's, it's the past,

1470
01:34:32,720 --> 01:34:35,280
right? 
Like now you build the company 

1471
01:34:35,280 --> 01:34:38,280
very quick, you sell it, you're 
done and then on to something 

1472
01:34:38,320 --> 01:34:41,080
else. 
Yeah, yeah. 

1473
01:34:42,400 --> 01:34:44,480
I wish I knew so building. 
A culture can. 

1474
01:34:44,480 --> 01:34:46,640
Be challenging. 
I think it can for sure. 

1475
01:34:47,000 --> 01:34:49,520
What is? 
Your kind of take like you know,

1476
01:34:49,600 --> 01:34:54,160
you said you had 40 engineers or
just 40 people at the company. 

1477
01:34:55,360 --> 01:34:58,920
No, the company is. 
Over 100 right now, OK. 

1478
01:35:00,600 --> 01:35:07,440
We have. 25 engineers, we have 
software engineers, then we have

1479
01:35:07,440 --> 01:35:11,760
four people doing operations and
systems engineering 

1480
01:35:12,680 --> 01:35:16,760
infrastructure. 
We have designers, 6 designers 

1481
01:35:16,760 --> 01:35:23,200
and then some people doing also 
tech support which is most more 

1482
01:35:23,200 --> 01:35:25,680
Technical Support for users when
they encounter issues. 

1483
01:35:26,880 --> 01:35:28,720
So I'm curious. 
What is your? 

1484
01:35:28,720 --> 01:35:33,160
Approach to like hiring junior 
levels to senior engineers? 

1485
01:35:33,160 --> 01:35:35,320
Like kind of do you hire 
juniors? 

1486
01:35:37,840 --> 01:35:39,520
Yeah, more. 
Recently, yeah. 

1487
01:35:39,880 --> 01:35:43,920
So the challenge with hiring 
junior people at an early stage 

1488
01:35:43,920 --> 01:35:48,480
in a startup is that you don't 
have the resources and time to, 

1489
01:35:48,840 --> 01:35:52,720
to grow them, right? 
Because you, you, you can hire 

1490
01:35:52,720 --> 01:35:55,320
juniors, but you also need 
someone who mentors them, 

1491
01:35:55,320 --> 01:35:58,920
someone who helps them grow and 
who directs them in a way. 

1492
01:35:59,880 --> 01:36:04,320
And so up to, for, for the first
three years, we, we couldn't 

1493
01:36:04,320 --> 01:36:10,720
really afford to, to have, to 
have a lot of juniors. 

1494
01:36:11,120 --> 01:36:13,760
And slowly we are starting to, 
to do that. 

1495
01:36:13,960 --> 01:36:17,360
So we, we are starting to hire 
people with less experience than

1496
01:36:17,360 --> 01:36:18,920
than before. 
That's awesome. 

1497
01:36:19,160 --> 01:36:21,240
I I do think. 
Like it's very difficult. 

1498
01:36:21,240 --> 01:36:24,120
You can't really hire juniors at
the beginning because you need, 

1499
01:36:24,400 --> 01:36:28,880
you need as much resources and 
fast-paced movement and features

1500
01:36:28,880 --> 01:36:31,000
as you can. 
And you need things architected 

1501
01:36:31,000 --> 01:36:34,160
well 'cause everything's brand 
new when you're kind of 

1502
01:36:34,160 --> 01:36:37,600
bootstrapped at the beginning. 
But yeah, as you grow, that 

1503
01:36:37,600 --> 01:36:39,880
makes sense. 
You can start hiring juniors and

1504
01:36:39,880 --> 01:36:42,040
I think that that's, that's 
awesome. 

1505
01:36:43,080 --> 01:36:43,920
Yeah. 
So I. 

1506
01:36:44,480 --> 01:36:47,480
Mean for the. 
First two years, the engineering

1507
01:36:47,480 --> 01:36:50,840
team was for people plus me, 
right? 

1508
01:36:50,840 --> 01:36:53,360
Yeah. 
So those first four people, they

1509
01:36:53,840 --> 01:36:57,160
were all really experienced. 
But it's it's inevitable. 

1510
01:36:57,480 --> 01:37:00,840
I think it's yeah, for sure. 
Awesome. 

1511
01:37:01,480 --> 01:37:05,400
Well, I think. 
I think these always go by real 

1512
01:37:05,400 --> 01:37:07,600
fast. 
We've been talking for over an 

1513
01:37:07,600 --> 01:37:11,160
hour and a half, so I think we 
can wrap this up. 

1514
01:37:11,200 --> 01:37:13,920
I really appreciate you coming 
and chatting, Luca. 

1515
01:37:13,920 --> 01:37:17,440
It's been awesome. 
If you want, is there any advice

1516
01:37:17,440 --> 01:37:20,360
that you want to throw out there
before we completely sign off 

1517
01:37:20,360 --> 01:37:23,040
for the week? 
It's been a. 

1518
01:37:23,040 --> 01:37:25,520
Great pleasure for me too. 
Jacob, thank you. 

1519
01:37:25,800 --> 01:37:29,800
Thanks for having me Advice. 
No, I don't have advice. 

1520
01:37:30,640 --> 01:37:32,880
No advice? 
No. 

1521
01:37:33,840 --> 01:37:35,520
What? 
What kind of advice do you have?

1522
01:37:35,520 --> 01:37:39,000
Any advice for maybe junior? 
Developers or somebody that 

1523
01:37:39,680 --> 01:37:43,800
might want to be a Co founder or
like ACTO in your position. 

1524
01:37:45,080 --> 01:37:48,520
Any any advice in that kind of 
direction, career career 

1525
01:37:48,520 --> 01:37:51,760
direction. 
I, I don't know, I think. 

1526
01:37:51,880 --> 01:37:56,560
My advice is what? 
What paid off for me was 

1527
01:37:56,560 --> 01:37:59,600
following my own curiosity and 
experimenting a lot. 

1528
01:38:01,240 --> 01:38:05,920
And so, yeah, I think if you 
want to have a career in tech, 

1529
01:38:06,160 --> 01:38:09,840
if you want to grow as an 
engineer, if you want to find 

1530
01:38:09,840 --> 01:38:14,600
out what what clicks for you, 
you need to do a lot of 

1531
01:38:14,960 --> 01:38:19,400
different things. 
And you need to also do a lot of

1532
01:38:19,400 --> 01:38:27,280
mistakes. 
And I think without that 

1533
01:38:27,280 --> 01:38:29,640
enthusiasm, you are not getting 
anywhere. 

1534
01:38:29,640 --> 01:38:33,880
So, yeah, so my, my advice for 
anyone was to get in the 

1535
01:38:33,880 --> 01:38:38,840
industry despite AI is just 
follow your instinct, learn what

1536
01:38:38,840 --> 01:38:42,640
you want to learn, what excites 
you, what, what really you, you,

1537
01:38:42,680 --> 01:38:47,280
you have a deep desire to build 
and, and go do it and learn from

1538
01:38:47,280 --> 01:38:49,960
that experience. 
And yeah, that, that works for 

1539
01:38:49,960 --> 01:38:52,320
me. 
I, I think that's amazing, I 

1540
01:38:52,320 --> 01:38:54,200
think. 
That's great advice and the kind

1541
01:38:54,200 --> 01:38:58,400
of not to keep us going. 
But when you were saying that, 

1542
01:38:58,800 --> 01:39:02,160
you know, you implemented your 
Http://library, right, and you 

1543
01:39:02,160 --> 01:39:05,560
wanted to implement HTTP 3, but 
it was a lot more complicated, 

1544
01:39:05,880 --> 01:39:10,400
but like just building that 
project probably allowed you to 

1545
01:39:10,400 --> 01:39:12,840
have so much more understanding 
because you just dove in and 

1546
01:39:12,840 --> 01:39:15,040
started doing it. 
Absolutely. 

1547
01:39:15,040 --> 01:39:18,960
My my. 
Objective was not to build a 

1548
01:39:18,960 --> 01:39:22,160
real implementation. 
My objective was learning and, 

1549
01:39:22,680 --> 01:39:27,720
and I did it by by sharing 
enthusiasm and, and wanting to 

1550
01:39:27,720 --> 01:39:30,000
learn and, and to to be able to 
tell. 

1551
01:39:30,000 --> 01:39:32,600
OK, I understand this because I 
built it, right. 

1552
01:39:32,640 --> 01:39:34,600
And that's exactly what I meant.
It's. 

1553
01:39:34,960 --> 01:39:36,880
Yeah. 
And that's what exciting for me.

1554
01:39:36,880 --> 01:39:40,880
But if anyone is excited about 
anything else, they should 

1555
01:39:40,880 --> 01:39:42,680
absolutely go and build it 
because. 

1556
01:39:42,720 --> 01:39:44,240
Yeah, that's great. 
Yeah. 

1557
01:39:44,240 --> 01:39:45,160
I love it. 
All right. 

1558
01:39:45,160 --> 01:39:46,160
Awesome. 
Well, thank. 

1559
01:39:46,160 --> 01:39:48,040
You so much and everyone that 
tuned in. 

1560
01:39:48,040 --> 01:39:50,920
Thank you. 
Have a great weekend and I will 

1561
01:39:50,920 --> 01:39:52,320
see you guys next week.
