1
00:00:00,000 --> 00:00:05,020
You know, I was told by someone recently, Richard, one of our Dutch colleagues,

2
00:00:05,520 --> 00:00:08,500
that they enjoy the aimless rambling we have at the beginning of the episode.

3
00:00:08,680 --> 00:00:14,120
So rather than try to be more professional, let me just tell you one thing I've encountered recently.

4
00:00:14,120 --> 00:00:21,560
And that is, well, have you ever tried to move a pet, like a dog, from one, let's say, city or country to another one?

5
00:00:22,360 --> 00:00:23,980
I thought you were going to say from, like, room to room.

6
00:00:24,100 --> 00:00:25,120
Like, yeah, I have done that, Coté.

7
00:00:25,260 --> 00:00:27,560
It's, you know, pretty normal if you own a pet.

8
00:00:28,000 --> 00:00:32,000
No, I haven't actually moved one long distances because that idea of sticking them in a crate

9
00:00:32,000 --> 00:00:35,180
or being worse, bringing them on the plane with me like some sort of crazy person,

10
00:00:35,400 --> 00:00:36,840
neither of those sound appealing to me.

11
00:00:36,920 --> 00:00:38,700
So I think I would just sell them and buy a new one.

12
00:00:39,880 --> 00:00:42,480
That makes me sound heartless, but that's one option.

13
00:00:42,680 --> 00:00:48,700
Well, you know, the nominal topic of today's episode is replatforming.

14
00:00:49,020 --> 00:00:51,000
So that is a pattern that I guess you could use.

15
00:00:51,380 --> 00:00:52,340
Not the lift and shift.

16
00:00:53,940 --> 00:00:57,040
And in the course of doing it, you might move from, let's say,

17
00:00:57,240 --> 00:01:02,720
like a Great Dane, a series of small shih tzus.

18
00:01:03,260 --> 00:01:06,820
And so you'd have a bunch of microservices that coordinate with each other instead of a monolith.

19
00:01:06,940 --> 00:01:09,400
Because, you know, every time you try to teach that monolith a new trick,

20
00:01:09,460 --> 00:01:11,020
you just have to recompile the whole thing.

21
00:01:11,160 --> 00:01:12,040
Here's the issue.

22
00:01:12,200 --> 00:01:12,900
It's easy to stick.

23
00:01:14,200 --> 00:01:15,080
I'm trying to.

24
00:01:16,040 --> 00:01:17,400
It's easy to put the thing in a crate.

25
00:01:17,780 --> 00:01:21,720
But the problem is, apparently, the airlines wanting to be,

26
00:01:21,840 --> 00:01:23,660
I always think the term humane is kind of funny.

27
00:01:23,940 --> 00:01:24,860
Well, I shouldn't say funny.

28
00:01:24,860 --> 00:01:26,920
It's just incorrect to apply to pets.

29
00:01:27,040 --> 00:01:28,540
I mean, but I get where you're going with humane.

30
00:01:28,700 --> 00:01:29,260
Like, what are you going to say?

31
00:01:29,300 --> 00:01:31,560
We're going to be canine main or something?

32
00:01:31,880 --> 00:01:32,280
Anyhow.

33
00:01:32,560 --> 00:01:32,880
Sure.

34
00:01:33,560 --> 00:01:39,660
Apparently, if you want to airlift a dog, they won't do it if it's 85 degrees or higher.

35
00:01:40,040 --> 00:01:42,220
Now, I don't know if you remember, but I live in Texas.

36
00:01:42,840 --> 00:01:46,080
So this is presenting some logistical issues.

37
00:01:46,300 --> 00:01:49,900
Because unfortunately, although Pivotal is very kind about helping me relocate,

38
00:01:50,000 --> 00:01:54,220
they have not taken on the task of changing the weather in August in Texas.

39
00:01:54,220 --> 00:02:03,780
So if anyone has any ideas about how to move a dog overseas when it's 102 degrees Fahrenheit in Texas,

40
00:02:04,320 --> 00:02:06,500
you know, I'd love to hear about that.

41
00:02:06,680 --> 00:02:10,620
That's a challenge that I don't think you can have some snap analysis to solve.

42
00:02:10,920 --> 00:02:11,320
That's true.

43
00:02:11,400 --> 00:02:14,040
I mean, you just have to drive to a cooler state and fly from there.

44
00:02:14,200 --> 00:02:14,460
Bam.

45
00:02:15,460 --> 00:02:22,880
Now, this has come under deep consideration here in the Coté-Skotak enterprise.

46
00:02:23,720 --> 00:02:28,260
It's looking like, barring a solution, we're going to have what you might call

47
00:02:28,260 --> 00:02:31,780
the road trip to the birth of freedom, where we go to Philadelphia,

48
00:02:32,340 --> 00:02:35,680
where there is a direct flight to Amsterdam on American Airlines.

49
00:02:35,800 --> 00:02:36,080
We'll see.

50
00:02:36,160 --> 00:02:37,260
We'll see if that solves a problem.

51
00:02:37,320 --> 00:02:39,060
Well, re-platforming.

52
00:02:39,260 --> 00:02:41,320
Why don't you all to introduce yourselves?

53
00:02:41,320 --> 00:02:45,060
Why don't we go in alphabetic order by last name?

54
00:02:45,460 --> 00:02:46,500
I believe that's me.

55
00:02:47,200 --> 00:02:48,720
My name is Sarah Eamon.

56
00:02:49,800 --> 00:02:54,260
And I originally come from labs, but I've been on AppTX unofficially for the last nine months

57
00:02:54,260 --> 00:02:55,600
and officially for the last four months.

58
00:02:56,400 --> 00:02:56,880
Awesome.

59
00:02:57,200 --> 00:02:58,620
My name is Rohit Kelaphir.

60
00:02:59,020 --> 00:03:01,640
I'm one of the App Transformation Practice Leads.

61
00:03:02,380 --> 00:03:06,460
I've been doing App Transformation for the past four years.

62
00:03:06,580 --> 00:03:10,100
Well, as always, we have a few news items.

63
00:03:10,100 --> 00:03:15,420
So I think the largest one of interest to us is that Poodle.

64
00:03:15,460 --> 00:03:18,380
Container Service, or PKS 1.1, was released.

65
00:03:18,480 --> 00:03:20,700
Now, this was sometime last week, right, Richard?

66
00:03:20,800 --> 00:03:22,700
I was traveling, so I kind of lost track of time.

67
00:03:23,400 --> 00:03:24,020
That's right.

68
00:03:24,120 --> 00:03:25,260
So this was last week.

69
00:03:25,580 --> 00:03:29,260
And, you know, we've actually shipped, I think, six times in the last five months.

70
00:03:29,320 --> 00:03:32,700
We've done a lot of little, you know, incremental releases besides the V1.

71
00:03:32,840 --> 00:03:35,300
This is the first kind of bigger release since then.

72
00:03:35,340 --> 00:03:39,040
And this was upgrading the supported version of Kubernetes to 1.10.

73
00:03:39,040 --> 00:03:43,380
We added some additional availability options like multi-AZ deployments

74
00:03:43,380 --> 00:03:46,820
and then some pretty cool integrations with other VMware tech like Wavefront

75
00:03:46,820 --> 00:03:48,840
and improved some of the NSX work.

76
00:03:48,940 --> 00:03:49,700
So it was a big release.

77
00:03:49,800 --> 00:03:53,300
We're excited about it and already have folks getting going on it, which is great.

78
00:03:53,440 --> 00:03:55,520
Now, between the two of you guests,

79
00:03:55,660 --> 00:03:57,700
I'm interested to hear a little bit of commentary here

80
00:03:57,700 --> 00:04:01,040
before we get to the talking about application transformation and the whole, like,

81
00:04:01,380 --> 00:04:04,400
like oftentimes what you hear is, you know, you got your PAS,

82
00:04:04,740 --> 00:04:06,360
formerly just Pivotal Cloud Foundry,

83
00:04:06,440 --> 00:04:09,760
your rapid delivery and your CF push and all that are the cases.

84
00:04:10,240 --> 00:04:12,520
And one of them that comes up is you have existing applications

85
00:04:12,520 --> 00:04:14,520
that you don't want to run in Kubernetes and PKS.

86
00:04:14,760 --> 00:04:18,420
And I wonder if y'all have some interesting examples of those,

87
00:04:18,500 --> 00:04:23,640
like when you're trying to replatform things or modernize,

88
00:04:23,720 --> 00:04:27,260
you started to think, oh, maybe PKS is a good idea for this.

89
00:04:28,420 --> 00:04:32,200
Yeah, I think a lot of it depends on what level of abstraction

90
00:04:32,200 --> 00:04:35,480
and what outcomes you want from the effort, right?

91
00:04:36,440 --> 00:04:40,820
In some cases, lift and shift or just like replatforming it,

92
00:04:41,160 --> 00:04:42,620
doing minimal changes to the app,

93
00:04:42,960 --> 00:04:46,780
getting it running with the Java build pack makes sense.

94
00:04:47,540 --> 00:04:52,840
In some cases, you truly want to increase the release frequency, right?

95
00:04:53,280 --> 00:04:55,920
That app is strategic to the business.

96
00:04:56,300 --> 00:05:00,260
So it makes sense to break it down, take it completely all the way to cloud native.

97
00:05:00,780 --> 00:05:04,600
And so then at that point, you are more in the refactoring

98
00:05:04,600 --> 00:05:07,980
or in the modernizing zone, modernization zone.

99
00:05:08,760 --> 00:05:14,700
But there is also another category of apps that you really don't want to touch at all.

100
00:05:14,820 --> 00:05:16,360
And you just want operational efficiency.

101
00:05:17,220 --> 00:05:19,820
And these apps generally are gnarly.

102
00:05:19,940 --> 00:05:21,220
They are like stateful.

103
00:05:21,480 --> 00:05:24,280
They have complex networking requirements.

104
00:05:24,480 --> 00:05:29,160
Those are the kind of apps that you generally just want to containerize and run on PKS.

105
00:05:29,520 --> 00:05:32,960
So it really depends on what kind of outcomes you want to drive

106
00:05:32,960 --> 00:05:35,160
from your app transformation effort.

107
00:05:35,280 --> 00:05:37,140
I actually have some concrete examples of this.

108
00:05:37,200 --> 00:05:39,460
On my last project, we were using PKS.

109
00:05:40,260 --> 00:05:42,880
And there were two use cases.

110
00:05:43,080 --> 00:05:48,740
One was that the existing application used an instance of Elasticsearch

111
00:05:48,740 --> 00:05:55,620
where they'd sort of hacked in this plugin to modify the results before they came back.

112
00:05:55,740 --> 00:05:58,760
And there was no way that we could do that without having like full control

113
00:05:58,760 --> 00:06:01,260
over the deployment of Elasticsearch.

114
00:06:01,540 --> 00:06:07,060
So we decided to move that Elasticsearch with the wonky plugin onto PKS

115
00:06:07,060 --> 00:06:10,320
because they were already using Docker and everything to deploy this thing.

116
00:06:10,400 --> 00:06:12,820
So it was just a very easy move to PKS.

117
00:06:13,020 --> 00:06:16,840
And another instance was they were actually a government customer

118
00:06:16,840 --> 00:06:18,540
or a government subcontractor.

119
00:06:18,600 --> 00:06:19,820
And so they had contracts with the government.

120
00:06:20,360 --> 00:06:29,440
And some of their government clients or whatever consumers had like an aversion to licensing fees

121
00:06:29,440 --> 00:06:32,900
because they only had so much budget for this product.

122
00:06:33,560 --> 00:06:40,680
And to throw in, I think it was Mongo, there's a Mongo licensing fee for using the Mongo tile.

123
00:06:40,880 --> 00:06:47,660
So to avoid that licensing fee, they wanted to have the option to like deploy their own database, right?

124
00:06:47,720 --> 00:06:52,260
Mongo instance in PKS so that they could deploy their software as a unit

125
00:06:52,260 --> 00:06:56,120
without that licensing fee for those certain clients that couldn't pay it.

126
00:06:56,120 --> 00:06:56,880
Oh, that makes sense.

127
00:06:57,040 --> 00:06:58,240
Well, yeah, and those are good.

128
00:06:58,400 --> 00:07:00,920
The all too common affliction of licensing fees.

129
00:07:01,400 --> 00:07:10,260
Well, also in the news, I think one of the main drivers of people, you know,

130
00:07:10,340 --> 00:07:15,740
wanting to update their software is always, you know, the marauding force of Amazon.

131
00:07:16,400 --> 00:07:20,200
And it seems like there must be some like giant room.

132
00:07:20,460 --> 00:07:21,420
I don't know if you're supposed to know,

133
00:07:21,600 --> 00:07:25,300
should they just like tape up infinite appendixes on them onto a wall?

134
00:07:25,660 --> 00:07:27,540
But there must be some room over there where they're just like,

135
00:07:27,540 --> 00:07:32,900
they have every single industry in the world and they've prioritized the backlog of trying to take it over.

136
00:07:33,100 --> 00:07:37,260
And in that area, I think it's called distribution company, which, which, you know,

137
00:07:37,360 --> 00:07:42,600
if you fall asleep of vertical boredom, that's a pretty big industry there called PillPack,

138
00:07:42,820 --> 00:07:45,020
which I had never heard of, but that sounds nice.

139
00:07:45,080 --> 00:07:50,200
I guess they mail bills out to you, kind of like our CVS Caremark system,

140
00:07:50,440 --> 00:07:54,060
which, which I guess, I guess what that gets someone like Amazon is, you know,

141
00:07:54,060 --> 00:08:00,500
just some domain knowledge and then like right into a industry that almost seems perfect built for their model of,

142
00:08:00,500 --> 00:08:05,560
you know, selling stuff, which, which will be, it'll be interesting to see what they do there.

143
00:08:05,580 --> 00:08:09,460
And I think also last week before they announced that they have that,

144
00:08:09,560 --> 00:08:13,700
that partnership with like Berkshire Hathaway and JP to like,

145
00:08:14,020 --> 00:08:16,600
I think the idea they're going to come combinate combo,

146
00:08:16,600 --> 00:08:19,840
all their employees and then put them all in the same like healthcare or something.

147
00:08:19,840 --> 00:08:22,020
And then it's like a million people or something.

148
00:08:22,020 --> 00:08:25,240
And they have, they announced the CEO of it, whose name I can never pronounce,

149
00:08:25,380 --> 00:08:26,180
but he's like Dr.

150
00:08:26,260 --> 00:08:30,900
Checklist guy who always seems like he's, nothing's figured out well.

151
00:08:31,220 --> 00:08:35,880
So yeah, there's interesting, interesting, like digital moves going on there.

152
00:08:35,880 --> 00:08:39,500
And no doubt, as we always joke about on my other podcast,

153
00:08:39,700 --> 00:08:41,700
software defined talk when Amazon does something,

154
00:08:41,940 --> 00:08:45,240
there's going to be a whole new industry that is going to, you know,

155
00:08:45,240 --> 00:08:48,980
that you can draw on if you're at Azure or Google cloud for customers,

156
00:08:49,480 --> 00:08:53,260
namely a pharmaceuticals probably are very excited in Amazon now.

157
00:08:53,420 --> 00:08:53,960
Yeah, no doubt.

158
00:08:54,040 --> 00:08:56,400
I mean, it's a good move for them.

159
00:08:56,400 --> 00:08:59,480
As you say, tap into their existing kind of supply chain.

160
00:08:59,480 --> 00:09:01,420
And Hey, if you, I guess buy more pills,

161
00:09:01,420 --> 00:09:03,140
you can get free prime or however they,

162
00:09:03,300 --> 00:09:04,400
they kind of couple things together.

163
00:09:04,400 --> 00:09:05,000
That'll be cool.

164
00:09:05,240 --> 00:09:07,820
But then what was interesting to see is, I mean,

165
00:09:07,820 --> 00:09:09,060
obviously some stocks dropped,

166
00:09:09,060 --> 00:09:11,860
I think it was Walgreens, CVS and some others got a hit,

167
00:09:11,940 --> 00:09:12,880
but at the same time,

168
00:09:12,880 --> 00:09:15,340
it's been fun to watch companies like again, Home Depot.

169
00:09:15,340 --> 00:09:20,060
I saw got a story this weekend about how they're kind of coming back against

170
00:09:20,060 --> 00:09:22,720
Amazon or even Kroger getting into driverless delivery.

171
00:09:22,720 --> 00:09:26,560
So the old guard isn't necessarily sitting there waiting to get overtaken at

172
00:09:26,560 --> 00:09:27,020
this point,

173
00:09:27,020 --> 00:09:31,040
which I actually think is an exciting subplot to the sort of digital giants

174
00:09:31,040 --> 00:09:34,260
taking over the world is kind of the entrenched interests are actually

175
00:09:34,260 --> 00:09:36,600
fighting back a bit, which is always a fun storyline.

176
00:09:36,900 --> 00:09:37,180
For sure.

177
00:09:37,480 --> 00:09:40,700
I remember I was looking at the picture of that Kroger thing.

178
00:09:40,780 --> 00:09:42,540
It's almost like a, I remember in total recall,

179
00:09:42,640 --> 00:09:43,840
they have like the Johnny cab,

180
00:09:44,300 --> 00:09:47,940
like the car almost looked like a Johnny cab without a Johnny in it.

181
00:09:48,860 --> 00:09:51,820
And then, and then finally, I hadn't put up on this one.

182
00:09:51,820 --> 00:09:54,760
I think you just put it in as we were starting here, Richard,

183
00:09:54,840 --> 00:09:55,560
but it looks like there's,

184
00:09:55,640 --> 00:09:59,300
there's some sort of a container security problem.

185
00:09:59,660 --> 00:10:01,220
What's what's going on over there.

186
00:10:01,620 --> 00:10:02,020
Yeah,

187
00:10:02,020 --> 00:10:04,540
there was a survey done or research done actually.

188
00:10:04,540 --> 00:10:09,580
And it showed that a lot of there's a ton of kind of publicly exposed Kubernetes

189
00:10:09,580 --> 00:10:11,320
container management view wise.

190
00:10:11,540 --> 00:10:14,020
So when you have that sort of default management dashboard,

191
00:10:14,020 --> 00:10:16,580
a lot of people are incorrectly exposing that to the internet.

192
00:10:16,580 --> 00:10:18,760
And depending on if you don't change credentials or not,

193
00:10:18,800 --> 00:10:22,440
you're more or less inviting the world to hack around what might be production

194
00:10:22,440 --> 00:10:23,800
could be all sorts of environments.

195
00:10:23,980 --> 00:10:27,280
There was 20 some thousand listed in this exposure.

196
00:10:27,280 --> 00:10:29,720
And just one of those reminders like PKS,

197
00:10:29,880 --> 00:10:30,900
if you're a PKS customer,

198
00:10:31,080 --> 00:10:32,900
you can't have this happen to you.

199
00:10:32,920 --> 00:10:35,060
Like we've probably have locked things down appropriately.

200
00:10:35,300 --> 00:10:37,560
You can't accidentally get into this state,

201
00:10:37,560 --> 00:10:39,960
but just one of those be careful things.

202
00:10:39,960 --> 00:10:41,100
If you're running open source,

203
00:10:41,160 --> 00:10:43,220
you're doing things on your own with some other platforms,

204
00:10:43,220 --> 00:10:44,480
you can get in trouble there.

205
00:10:44,500 --> 00:10:46,740
And I added just to kind of freak you out more.

206
00:10:46,920 --> 00:10:48,500
There was a secondary story that,

207
00:10:48,580 --> 00:10:48,660
Hey,

208
00:10:48,660 --> 00:10:52,880
a lot of these container images in the Docker hub are being injected with

209
00:10:52,880 --> 00:10:55,940
different malicious code and malware and things like that.

210
00:10:55,940 --> 00:10:57,260
So kind of good luck to you,

211
00:10:57,280 --> 00:11:00,340
building your images and running it in your open source container

212
00:11:00,340 --> 00:11:01,180
orchestrator.

213
00:11:01,240 --> 00:11:03,080
Cause it's kind of dangerous out there.

214
00:11:03,300 --> 00:11:05,700
And from my cursory reading of the story,

215
00:11:05,700 --> 00:11:10,300
it looks like it was ultimately this resulted in generating about $90,000

216
00:11:10,300 --> 00:11:11,180
worth of Bitcoin.

217
00:11:11,720 --> 00:11:15,760
So it seems like maybe it's not a lot of work,

218
00:11:15,760 --> 00:11:16,460
but man,

219
00:11:17,040 --> 00:11:18,800
that's a good old,

220
00:11:18,800 --> 00:11:19,120
good old,

221
00:11:19,180 --> 00:11:21,960
good old Bitcoin seems to be working out for everyone.

222
00:11:22,220 --> 00:11:24,760
Now you're helping our SEO by mentioning that in the podcast.

223
00:11:24,920 --> 00:11:25,240
So that's good.

224
00:11:25,800 --> 00:11:26,200
Well,

225
00:11:26,260 --> 00:11:27,580
welcome to our new audience.

226
00:11:30,140 --> 00:11:30,800
That's right.

227
00:11:31,220 --> 00:11:32,360
I had someone,

228
00:11:32,560 --> 00:11:33,360
I was in,

229
00:11:33,500 --> 00:11:34,500
where was I?

230
00:11:35,580 --> 00:11:36,940
I think it was in,

231
00:11:36,940 --> 00:11:37,840
in Cologne or,

232
00:11:38,000 --> 00:11:38,900
or as the Dutch say,

233
00:11:39,040 --> 00:11:39,440
coolen,

234
00:11:39,540 --> 00:11:42,100
or as the Germans say something else with the umlaut on it.

235
00:11:42,420 --> 00:11:43,680
And I was,

236
00:11:43,760 --> 00:11:44,440
I was saying like,

237
00:11:44,500 --> 00:11:47,180
I was mentioning someone at an insurance company was talking about

238
00:11:47,180 --> 00:11:49,780
blockchain and I had no idea what that would be used for.

239
00:11:49,860 --> 00:11:50,900
And then sure enough,

240
00:11:51,060 --> 00:11:52,140
someone from a,

241
00:11:52,140 --> 00:11:55,600
someone from a big German insurance company came over and explained to me

242
00:11:55,600 --> 00:11:57,820
why blockchain would be very valuable in insurance,

243
00:11:57,960 --> 00:11:58,740
which was,

244
00:11:58,980 --> 00:12:00,680
which was kind of fascinating.

245
00:12:00,840 --> 00:12:00,960
It,

246
00:12:01,080 --> 00:12:02,700
it also exposed the,

247
00:12:02,700 --> 00:12:04,640
you know,

248
00:12:04,640 --> 00:12:05,740
often in it,

249
00:12:05,740 --> 00:12:08,740
the words practical and boring are synonyms.

250
00:12:09,740 --> 00:12:10,820
So with that said,

251
00:12:10,940 --> 00:12:14,640
it also explained some of the practical sides of a blockchain,

252
00:12:14,860 --> 00:12:17,700
namely just like verifying that a thing happened,

253
00:12:17,700 --> 00:12:19,540
which as you can imagine in the,

254
00:12:19,540 --> 00:12:21,140
the insurance industry is valuable.

255
00:12:21,140 --> 00:12:22,460
And to bore everyone more,

256
00:12:22,620 --> 00:12:24,300
he told me that in Germany,

257
00:12:24,300 --> 00:12:29,400
there's this interesting regulation with insurance that no matter what channel,

258
00:12:29,580 --> 00:12:32,180
which is to say what method through a person or a website,

259
00:12:32,180 --> 00:12:32,620
or,

260
00:12:32,780 --> 00:12:32,900
you know,

261
00:12:32,900 --> 00:12:36,740
maybe you're at the back of a magazine and you mail in a little postcard that

262
00:12:36,740 --> 00:12:37,260
was in there.

263
00:12:37,960 --> 00:12:38,600
You all,

264
00:12:38,740 --> 00:12:43,980
you have to consistently be offered the same terms and a rate for your policy.

265
00:12:44,180 --> 00:12:47,280
I guess you could say their policy procedure is item pot,

266
00:12:47,540 --> 00:12:47,740
right?

267
00:12:47,760 --> 00:12:49,620
Like it generates the same thing every time,

268
00:12:49,660 --> 00:12:52,340
which is kind of a fascinating.

269
00:12:52,960 --> 00:12:53,360
I,

270
00:12:53,420 --> 00:12:54,920
I asked him why that was,

271
00:12:54,940 --> 00:12:56,140
and it was something about,

272
00:12:56,520 --> 00:12:57,180
I don't know.

273
00:12:57,320 --> 00:12:59,540
It didn't really have like a very great answer,

274
00:12:59,540 --> 00:13:03,160
but it sort of made sense from a being nice standpoint.

275
00:13:03,380 --> 00:13:07,020
So speaking of introducing blockchain and insurance,

276
00:13:07,340 --> 00:13:10,180
it's always lots of details like that.

277
00:13:10,260 --> 00:13:11,880
So we have our two guests on,

278
00:13:12,180 --> 00:13:13,300
you're on,

279
00:13:13,400 --> 00:13:13,860
or,

280
00:13:14,000 --> 00:13:14,260
you know,

281
00:13:14,280 --> 00:13:16,000
what we call the app TX team.

282
00:13:16,380 --> 00:13:19,280
And I think I forget if the X is capitalized or not,

283
00:13:19,360 --> 00:13:20,520
but why don't,

284
00:13:20,600 --> 00:13:25,660
why don't one of you give us a kind of an overview of what you do on the

285
00:13:25,660 --> 00:13:25,880
team?

286
00:13:25,880 --> 00:13:27,320
Like what's the purpose of it?

287
00:13:27,440 --> 00:13:28,660
How long has it been around?

288
00:13:28,660 --> 00:13:30,660
And just a little synopsis of what it is.

289
00:13:30,880 --> 00:13:33,660
I can give you kind of a brief introduction app TX,

290
00:13:33,720 --> 00:13:33,880
right?

291
00:13:34,040 --> 00:13:35,600
X small D capital.

292
00:13:36,840 --> 00:13:38,860
That's the most important thing you need to know.

293
00:13:39,340 --> 00:13:39,780
Well,

294
00:13:39,800 --> 00:13:40,640
we can stop now.

295
00:13:40,980 --> 00:13:41,200
Yeah.

296
00:13:42,880 --> 00:13:50,500
Our mission really is to help and enable customers migrate workloads and

297
00:13:50,500 --> 00:13:54,420
applications onto Pivotal Cloud Foundry to get the benefits of the

298
00:13:54,420 --> 00:13:54,880
platform,

299
00:13:55,180 --> 00:13:55,420
right?

300
00:13:55,420 --> 00:14:00,840
So Cloud Foundry and Pivotal Cloud Foundry is an opinionated platform that

301
00:14:00,840 --> 00:14:02,440
offers multiple level of abstractions.

302
00:14:03,040 --> 00:14:08,780
We help customers on that journey to move their applications to the cloud.

303
00:14:08,920 --> 00:14:09,940
And what does that mean?

304
00:14:10,020 --> 00:14:11,160
And in concrete terms,

305
00:14:11,160 --> 00:14:16,460
we practice our Pivotal techniques of extreme programming,

306
00:14:16,700 --> 00:14:17,500
test driven development,

307
00:14:17,640 --> 00:14:18,320
pair programming,

308
00:14:18,980 --> 00:14:19,240
lean,

309
00:14:19,380 --> 00:14:21,540
lean outside in product engineering.

310
00:14:22,540 --> 00:14:29,520
And we migrate and transform applications to Pivotal Cloud Foundry.

311
00:14:29,520 --> 00:14:30,780
We deal with all kinds of applications.

312
00:14:30,780 --> 00:14:33,560
So if you consider applications as T-shirts,

313
00:14:33,840 --> 00:14:35,120
we start with small,

314
00:14:35,280 --> 00:14:35,600
medium,

315
00:14:35,800 --> 00:14:36,200
large,

316
00:14:36,200 --> 00:14:37,860
and go all the way up to triple XL.

317
00:14:38,380 --> 00:14:38,660
Now,

318
00:14:38,800 --> 00:14:41,760
the techniques kind of vary as you move along the spectrum.

319
00:14:42,680 --> 00:14:45,040
And a lot of it depends on what,

320
00:14:45,040 --> 00:14:47,300
what outcomes you're driving for.

321
00:14:47,620 --> 00:14:49,580
Are you looking for operational benefits?

322
00:14:49,580 --> 00:14:51,560
Are you looking for increased release frequency?

323
00:14:51,560 --> 00:14:54,300
Are you looking to retire technical debt?

324
00:14:55,340 --> 00:14:55,680
It's a,

325
00:14:55,680 --> 00:14:56,400
it's a small team.

326
00:14:56,480 --> 00:14:57,900
It's a team of about 40,

327
00:14:58,100 --> 00:14:58,360
40,

328
00:14:58,480 --> 00:14:59,460
40 engineers,

329
00:14:59,600 --> 00:15:00,080
I would say.

330
00:15:01,140 --> 00:15:03,940
And we work with the customers very,

331
00:15:04,060 --> 00:15:04,620
very closely.

332
00:15:04,800 --> 00:15:08,560
We pair with them and we kind of teach them and give a,

333
00:15:08,760 --> 00:15:12,340
give them our secret sauce so that they can do this at scale,

334
00:15:12,800 --> 00:15:14,620
move all their applications to,

335
00:15:14,800 --> 00:15:15,760
and get them to cloud native.

336
00:15:16,800 --> 00:15:17,840
That's a good description.

337
00:15:18,240 --> 00:15:18,840
I think it,

338
00:15:18,900 --> 00:15:20,800
I often see it as kind of like not,

339
00:15:20,860 --> 00:15:24,060
you're not selling that sugar high of just like use technology here,

340
00:15:24,180 --> 00:15:24,940
go try it.

341
00:15:24,940 --> 00:15:27,200
And then you get frustrated and it kind of just sits on the shelf

342
00:15:27,200 --> 00:15:27,520
somewhere.

343
00:15:27,800 --> 00:15:30,560
You're actually helping them actually activate the first step,

344
00:15:30,620 --> 00:15:33,740
like actually learn how to do things and then kind of have the skills to

345
00:15:33,740 --> 00:15:34,220
keep doing it.

346
00:15:34,240 --> 00:15:37,340
But one thing I see mentioned in kind of your domain,

347
00:15:37,960 --> 00:15:38,700
Rohit or Sarah,

348
00:15:38,700 --> 00:15:42,940
if you'd like your take on this is help me tell the difference between some

349
00:15:42,940 --> 00:15:45,520
of the terms you see thrown around sometimes as synonyms.

350
00:15:45,660 --> 00:15:46,640
So like replatforming,

351
00:15:46,640 --> 00:15:47,720
modernization,

352
00:15:47,900 --> 00:15:48,520
refactoring,

353
00:15:48,600 --> 00:15:52,600
are those synonyms or those meant to be used to describe different aspects

354
00:15:52,600 --> 00:15:53,540
of app transformation?

355
00:15:54,080 --> 00:15:54,360
Replatforming.

356
00:15:54,700 --> 00:15:57,880
You can think of it as another term for it that we hear a lot is lift and

357
00:15:57,880 --> 00:15:58,160
shift,

358
00:15:58,280 --> 00:15:58,920
right?

359
00:15:58,940 --> 00:16:02,520
We're taking some legacy application and we're just getting it to run on

360
00:16:02,520 --> 00:16:03,100
PCF.

361
00:16:03,880 --> 00:16:06,400
And then that's more of,

362
00:16:06,460 --> 00:16:07,300
it's more of a spectrum,

363
00:16:07,500 --> 00:16:07,660
right?

364
00:16:07,740 --> 00:16:11,000
So replatforming can go all the way up to modernization.

365
00:16:11,000 --> 00:16:11,780
If you think about a,

366
00:16:11,780 --> 00:16:12,360
you know,

367
00:16:12,420 --> 00:16:16,640
a spectrum with replatforming and modernization modernization in the middle

368
00:16:16,640 --> 00:16:16,960
somewhere,

369
00:16:16,960 --> 00:16:20,880
there's this idea of like refactor where we're applying the,

370
00:16:20,880 --> 00:16:21,120
you know,

371
00:16:21,180 --> 00:16:22,520
15 cloud native factors.

372
00:16:23,180 --> 00:16:23,580
And,

373
00:16:23,640 --> 00:16:24,180
you know,

374
00:16:24,180 --> 00:16:27,160
in order to get the application running in order to successfully complete that

375
00:16:27,160 --> 00:16:28,680
refactor or sorry,

376
00:16:28,800 --> 00:16:29,340
replatforming,

377
00:16:29,520 --> 00:16:32,040
we're going to have to modernize a little bit,

378
00:16:32,320 --> 00:16:32,560
right?

379
00:16:33,140 --> 00:16:33,540
And,

380
00:16:33,580 --> 00:16:34,040
you know,

381
00:16:34,080 --> 00:16:35,560
reduce your dependency on the file system,

382
00:16:35,720 --> 00:16:35,940
right?

383
00:16:36,720 --> 00:16:40,320
All these kinds of things get your app to scale and run in the cloud.

384
00:16:40,620 --> 00:16:44,440
So we're going to move along the spectrum and get some of those 15 factors

385
00:16:44,440 --> 00:16:45,360
running,

386
00:16:45,500 --> 00:16:45,820
right?

387
00:16:47,260 --> 00:16:48,960
But on a replatforming engagement,

388
00:16:49,480 --> 00:16:53,100
the focus is getting as many applications running on the platform as

389
00:16:53,100 --> 00:16:53,520
possible.

390
00:16:53,720 --> 00:16:56,080
And then we get as far along in that line as we can in the time.

391
00:16:56,760 --> 00:16:58,040
Whereas refactor is like,

392
00:16:58,140 --> 00:17:00,240
Hey,

393
00:17:00,240 --> 00:17:00,340
we want to go full cloud native,

394
00:17:00,340 --> 00:17:00,340
right?

395
00:17:00,340 --> 00:17:07,060
We want to address this application and basically massage it as though,

396
00:17:07,060 --> 00:17:10,820
massage it until it gets to the point where it looks like we wrote it green,

397
00:17:10,920 --> 00:17:11,100
right?

398
00:17:11,180 --> 00:17:11,580
Greenfield.

399
00:17:11,920 --> 00:17:14,400
And we can run on any platform agnostically.

400
00:17:14,900 --> 00:17:18,020
And then at the like far end of that is modernization where you're saying,

401
00:17:18,100 --> 00:17:18,280
okay,

402
00:17:18,280 --> 00:17:22,020
now I want to actually choose the best architecture for this application,

403
00:17:22,020 --> 00:17:22,280
right?

404
00:17:22,300 --> 00:17:22,780
And maybe I'm good.

405
00:17:22,900 --> 00:17:24,600
Maybe I'm going to carve off some microservices.

406
00:17:24,880 --> 00:17:26,280
Maybe I'm going to put in,

407
00:17:26,300 --> 00:17:27,080
you know,

408
00:17:27,080 --> 00:17:27,880
service discovery,

409
00:17:27,880 --> 00:17:28,500
right?

410
00:17:28,620 --> 00:17:29,400
That sort of thing.

411
00:17:29,400 --> 00:17:31,200
And architect my system,

412
00:17:31,760 --> 00:17:33,060
you know,

413
00:17:33,240 --> 00:17:33,520
and,

414
00:17:33,520 --> 00:17:36,520
and get it with some nice test coverage and things like that,

415
00:17:36,540 --> 00:17:39,440
get some confidence around the application.

416
00:17:39,600 --> 00:17:40,300
So it's,

417
00:17:40,340 --> 00:17:42,100
it's not a switch,

418
00:17:42,200 --> 00:17:42,320
right?

419
00:17:42,320 --> 00:17:44,340
It's not a radio button where you say,

420
00:17:44,400 --> 00:17:48,860
I'm going to refactor or refactor or re-platform or modernize switch those

421
00:17:48,860 --> 00:17:51,400
first to re-platform,

422
00:17:51,500 --> 00:17:51,820
refactor,

423
00:17:51,920 --> 00:17:52,420
modernize.

424
00:17:52,740 --> 00:17:54,140
It's a spectrum and you're going to,

425
00:17:54,140 --> 00:17:57,620
you're going to try to hit some goal along the line and you're going to hit

426
00:17:57,620 --> 00:17:58,660
the others kind of along the way.

427
00:17:58,840 --> 00:17:59,000
I see.

428
00:17:59,000 --> 00:17:59,740
That's a good description.

429
00:17:59,740 --> 00:18:04,400
So a lot of it comes down to how much you're really messing with the source system.

430
00:18:04,400 --> 00:18:05,600
Whereas obviously re-platform,

431
00:18:05,700 --> 00:18:07,660
you're probably messing with it as little as possible.

432
00:18:08,060 --> 00:18:08,420
Modernization,

433
00:18:08,580 --> 00:18:11,260
it may from the outside almost appear like a new system.

434
00:18:11,320 --> 00:18:11,780
Is that fair?

435
00:18:11,980 --> 00:18:12,080
Yeah,

436
00:18:12,100 --> 00:18:12,740
I think that's fair.

437
00:18:12,860 --> 00:18:13,940
So when you're thinking of that though,

438
00:18:13,940 --> 00:18:17,620
I'm assuming that that's not a black and white sort of this app gets this,

439
00:18:17,680 --> 00:18:18,340
this app gets that,

440
00:18:18,360 --> 00:18:19,560
because there could be components.

441
00:18:19,740 --> 00:18:20,400
Correct me if I'm wrong,

442
00:18:20,440 --> 00:18:20,700
where you say,

443
00:18:20,780 --> 00:18:20,860
look,

444
00:18:20,880 --> 00:18:23,140
we're going to actually modernize this aspect of the app.

445
00:18:23,200 --> 00:18:24,060
Maybe it's the front end,

446
00:18:24,120 --> 00:18:25,300
maybe it's a backend component,

447
00:18:25,440 --> 00:18:26,000
but Hey,

448
00:18:26,020 --> 00:18:27,320
for this sort of set of things,

449
00:18:27,340 --> 00:18:28,080
maybe the database,

450
00:18:28,080 --> 00:18:30,740
like you mentioned earlier with Mongo or other things,

451
00:18:30,800 --> 00:18:31,220
maybe that thing,

452
00:18:31,280 --> 00:18:34,040
we just re-platform and we just run it in Kubernetes before,

453
00:18:34,260 --> 00:18:37,320
before we just ran it on a VM or a bare metal box.

454
00:18:37,340 --> 00:18:39,240
We're just looking for incremental efficiencies.

455
00:18:39,240 --> 00:18:39,840
Is that fair?

456
00:18:39,920 --> 00:18:41,660
Do you see it sometimes span,

457
00:18:41,660 --> 00:18:42,820
even within an app,

458
00:18:42,860 --> 00:18:44,100
how you behave and how you,

459
00:18:44,140 --> 00:18:44,740
what you do with it?

460
00:18:45,320 --> 00:18:45,820
Oh yeah,

461
00:18:45,820 --> 00:18:48,380
that was actually very much to the point of what I was going to say was

462
00:18:48,380 --> 00:18:49,860
there's a factor of size in this,

463
00:18:49,900 --> 00:18:50,080
right?

464
00:18:50,200 --> 00:18:50,760
The bigger,

465
00:18:50,860 --> 00:18:53,320
the source application that you're looking at,

466
00:18:53,320 --> 00:18:55,960
the more different that journey is going to look,

467
00:18:56,020 --> 00:18:57,200
the smaller the application is.

468
00:18:57,240 --> 00:19:00,180
You're probably going to be fine with just re-platforming,

469
00:19:00,320 --> 00:19:00,480
right?

470
00:19:00,480 --> 00:19:01,980
Because it's small and self-contained,

471
00:19:01,980 --> 00:19:03,620
but as your application gets bigger,

472
00:19:03,620 --> 00:19:05,660
just to exactly to your point,

473
00:19:05,820 --> 00:19:08,940
you're probably going to start carving some things off and modernizing

474
00:19:08,940 --> 00:19:09,520
little pieces,

475
00:19:09,840 --> 00:19:11,040
maybe pulling them out as microservices,

476
00:19:11,180 --> 00:19:12,400
maybe not pulling them out as a microservice,

477
00:19:12,760 --> 00:19:15,260
but isolating them in the code base and getting them well surrounded by

478
00:19:15,260 --> 00:19:17,300
tests so that in the future,

479
00:19:17,380 --> 00:19:17,820
if you need to,

480
00:19:17,880 --> 00:19:19,040
you can pull it out as a microservice.

481
00:19:20,340 --> 00:19:20,700
So,

482
00:19:20,760 --> 00:19:21,380
so there's a,

483
00:19:21,500 --> 00:19:22,200
I'm sure there's many,

484
00:19:22,380 --> 00:19:27,980
but there's a couple of great talks from SpringOne platform that,

485
00:19:28,040 --> 00:19:28,700
that I was watching.

486
00:19:28,700 --> 00:19:29,020
And,

487
00:19:29,020 --> 00:19:32,100
and it kind of goes over how y'all do the practice.

488
00:19:33,280 --> 00:19:33,760
And,

489
00:19:33,780 --> 00:19:33,860
and,

490
00:19:33,860 --> 00:19:35,440
and I think,

491
00:19:35,500 --> 00:19:39,600
I think one of them draws on explicitly like a Liberty Mutual case of,

492
00:19:39,600 --> 00:19:40,440
of how they're doing things,

493
00:19:40,500 --> 00:19:41,320
speaking of insurance,

494
00:19:41,640 --> 00:19:42,500
just coincidentally.

495
00:19:43,080 --> 00:19:43,520
And,

496
00:19:43,520 --> 00:19:43,520
and,

497
00:19:43,520 --> 00:19:43,640
and,

498
00:19:43,640 --> 00:19:43,800
and,

499
00:19:43,800 --> 00:19:46,660
and it strikes me that like a lot of,

500
00:19:46,660 --> 00:19:54,560
a lot of going through modernization or application transformation is a very disciplined process.

501
00:19:54,940 --> 00:19:55,340
And,

502
00:19:55,420 --> 00:19:56,520
and how it seems,

503
00:19:56,660 --> 00:20:02,180
the way that y'all go through it is how it differed in the discipline process we're used to,

504
00:20:02,280 --> 00:20:06,240
is it tries to do things as quickly as possible or in small loops.

505
00:20:06,840 --> 00:20:07,420
I mean,

506
00:20:07,440 --> 00:20:07,660
that's,

507
00:20:07,760 --> 00:20:09,740
that's my very high level summary of things,

508
00:20:09,740 --> 00:20:10,180
but I think,

509
00:20:10,420 --> 00:20:12,040
I think what would be interesting and maybe,

510
00:20:12,280 --> 00:20:13,260
maybe,

511
00:20:13,560 --> 00:20:15,680
maybe you can go over this is like,

512
00:20:15,760 --> 00:20:16,220
what is,

513
00:20:16,560 --> 00:20:18,720
what's like the general process that you go through,

514
00:20:18,780 --> 00:20:18,940
right?

515
00:20:18,960 --> 00:20:19,640
So let's say,

516
00:20:19,780 --> 00:20:19,860
and,

517
00:20:19,900 --> 00:20:20,280
and to,

518
00:20:20,380 --> 00:20:21,560
to sort of set that up,

519
00:20:21,580 --> 00:20:22,620
let's say I'm a,

520
00:20:23,060 --> 00:20:24,040
we'll just use insurance.

521
00:20:24,180 --> 00:20:25,200
It's the insurance episode.

522
00:20:25,200 --> 00:20:29,020
Let's say I'm an insurance company and I've come to your team.

523
00:20:29,020 --> 00:20:29,420
And,

524
00:20:29,500 --> 00:20:29,960
and I guess,

525
00:20:30,040 --> 00:20:31,400
I guess the complaint is usually,

526
00:20:31,640 --> 00:20:34,440
I need to innovate and add new features to my,

527
00:20:34,560 --> 00:20:37,440
my overall claims and policy selling system,

528
00:20:37,440 --> 00:20:41,360
but it always takes like 15 months and that's not cool.

529
00:20:41,360 --> 00:20:43,040
Like I want to be able to do things faster.

530
00:20:43,040 --> 00:20:43,700
So then what,

531
00:20:43,800 --> 00:20:45,800
what you get everyone in a room,

532
00:20:45,800 --> 00:20:49,820
like what generally happens over the course of the next 10 or so weeks?

533
00:20:50,480 --> 00:20:50,960
Yeah.

534
00:20:51,020 --> 00:20:51,340
I mean,

535
00:20:51,420 --> 00:20:53,500
so even before the engagement,

536
00:20:53,840 --> 00:20:55,320
the 10 week engagement begins,

537
00:20:55,320 --> 00:20:55,640
right?

538
00:20:56,040 --> 00:21:00,720
There's some pre-work that you have to do beforehand to kind of understand which

539
00:21:00,720 --> 00:21:02,440
application are you looking at?

540
00:21:02,440 --> 00:21:09,220
Is it a single huge system of systems monolithic application or is it about four or five smaller

541
00:21:09,220 --> 00:21:13,300
applications that come kind of comprise a suite of portfolio of apps?

542
00:21:13,500 --> 00:21:15,720
So that kind of dictates the,

543
00:21:15,720 --> 00:21:16,520
the engagement.

544
00:21:16,680 --> 00:21:17,680
Now let's assume for,

545
00:21:17,840 --> 00:21:20,380
for an instance that it's a big application.

546
00:21:20,380 --> 00:21:24,860
It's a really a monolithic application with one plus million lines of code.

547
00:21:25,560 --> 00:21:34,060
So most are most of our exercises kind of begin with an OKR session where we drill down into

548
00:21:34,060 --> 00:21:35,060
strategic goals,

549
00:21:35,060 --> 00:21:36,560
objectives and key results.

550
00:21:36,560 --> 00:21:40,760
So we try to quantify as much of the work that we want to do.

551
00:21:40,760 --> 00:21:45,480
So which is why we believe we start with what are the concrete outcomes do you seek?

552
00:21:45,480 --> 00:21:47,440
And what are the key results then?

553
00:21:47,940 --> 00:21:51,640
So that's kind of equate those as the soft practices.

554
00:21:51,920 --> 00:21:54,300
Then in order to even achieve those key results,

555
00:21:54,300 --> 00:21:55,680
like increase business agility,

556
00:21:55,680 --> 00:21:56,400
what does,

557
00:21:56,480 --> 00:21:57,120
what does that mean?

558
00:21:57,260 --> 00:21:59,840
Does that mean that you want to increase your release frequency?

559
00:22:00,760 --> 00:22:04,180
or if you also sometimes we hear reduced technical debt,

560
00:22:04,520 --> 00:22:07,680
what does that mean in concrete terms that we need to reduce the coupling that

561
00:22:07,680 --> 00:22:11,680
multiple parts of the system can be updated independently from one another.

562
00:22:11,980 --> 00:22:15,060
So we drive out key quantifiable results.

563
00:22:15,060 --> 00:22:17,300
And then you begin the process of modernizing that,

564
00:22:17,460 --> 00:22:18,240
refactoring that,

565
00:22:18,740 --> 00:22:19,420
rebuilding that,

566
00:22:19,540 --> 00:22:20,540
whatever you want to call it.

567
00:22:20,900 --> 00:22:24,880
And that typically starts with understanding of the domain from our side.

568
00:22:25,360 --> 00:22:27,720
We want to understand the entire application.

569
00:22:28,000 --> 00:22:30,300
We want to understand the data flows within the application,

570
00:22:30,700 --> 00:22:31,380
the commands,

571
00:22:31,840 --> 00:22:32,180
all the,

572
00:22:32,260 --> 00:22:34,300
all the constituents of the application that,

573
00:22:34,300 --> 00:22:34,580
that,

574
00:22:34,580 --> 00:22:36,260
that lead to the,

575
00:22:36,680 --> 00:22:39,960
that give us insight into the business logic and the domain of the application.

576
00:22:39,960 --> 00:22:41,860
So we have multiple techniques here.

577
00:22:41,940 --> 00:22:44,580
We use primarily in order to understand the domains.

578
00:22:44,720 --> 00:22:46,580
We leverage a technique called event storming.

579
00:22:47,160 --> 00:22:51,800
Event storming is both a technical and a non-technical process where you get the

580
00:22:51,800 --> 00:22:57,060
domain experts and the application and the technical experts and the

581
00:22:57,060 --> 00:22:59,700
domain experts together along with the pivotal team.

582
00:23:00,220 --> 00:23:01,520
And everyone models the,

583
00:23:01,800 --> 00:23:04,640
tells the story of the application in terms of domain events,

584
00:23:04,780 --> 00:23:05,940
commands and aggregates.

585
00:23:06,440 --> 00:23:07,000
And those,

586
00:23:07,180 --> 00:23:08,600
once you do event storming,

587
00:23:08,640 --> 00:23:09,560
it gives you two things.

588
00:23:10,480 --> 00:23:12,360
It identifies the top constraints.

589
00:23:12,600 --> 00:23:15,540
So if you're familiar with the theory of constraints from,

590
00:23:15,540 --> 00:23:15,600
from,

591
00:23:15,600 --> 00:23:16,700
from Goldratt,

592
00:23:16,820 --> 00:23:19,520
it kind of gives you the top problem to solve to,

593
00:23:19,640 --> 00:23:21,100
to give you the maximum benefit.

594
00:23:21,100 --> 00:23:22,920
So it gives you the top constraints.

595
00:23:22,920 --> 00:23:25,840
And the second is it gives you an understanding of the domains of the

596
00:23:25,840 --> 00:23:26,260
application.

597
00:23:26,260 --> 00:23:29,260
So once you understand the domains in the mounted context,

598
00:23:29,260 --> 00:23:34,140
you then begin a second series of exercises to map relationships across the

599
00:23:34,140 --> 00:23:38,960
two and then figure out which services to strangle out first.

600
00:23:38,960 --> 00:23:41,060
And then you use,

601
00:23:41,280 --> 00:23:43,160
after you figure out the,

602
00:23:43,320 --> 00:23:46,940
once you draw the interaction between the domains through a process,

603
00:23:47,040 --> 00:23:48,400
we have diagram called Boris.

604
00:23:48,720 --> 00:23:53,760
You have now identified the coupling between all the domains and you pick a particular service

605
00:23:53,760 --> 00:23:55,040
to decompose and strangle.

606
00:23:55,600 --> 00:23:57,020
And once you do the first one,

607
00:23:57,020 --> 00:23:58,060
then you pick the second one.

608
00:23:58,320 --> 00:24:00,480
Now that's one axis of decomposition.

609
00:24:00,780 --> 00:24:05,200
Sometimes it's obvious that you have to separate the UI part of the application from the backend

610
00:24:05,200 --> 00:24:06,420
processing of the application.

611
00:24:06,560 --> 00:24:09,240
So sometimes modernization is obvious.

612
00:24:09,720 --> 00:24:11,860
A customer already has deep insight into it.

613
00:24:11,980 --> 00:24:12,260
In other,

614
00:24:12,380 --> 00:24:13,360
in other cases,

615
00:24:13,700 --> 00:24:18,540
we kind of help them bring out the pain and the technical challenges and figure out

616
00:24:18,540 --> 00:24:19,240
what are the best,

617
00:24:19,480 --> 00:24:21,100
what is the best way to decompose an application.

618
00:24:21,240 --> 00:24:24,680
So that's a spectrum of a huge application and how we kind of,

619
00:24:24,680 --> 00:24:26,080
and then in those 10 weeks,

620
00:24:26,280 --> 00:24:30,620
you see a lot of those 15 factor being implemented for the applications.

621
00:24:30,940 --> 00:24:31,120
We have,

622
00:24:31,240 --> 00:24:33,020
we implement CICD pipelines.

623
00:24:33,380 --> 00:24:34,060
So all,

624
00:24:34,120 --> 00:24:38,480
all of that application is done in such a way that those apps are modern and can be updated

625
00:24:38,480 --> 00:24:40,020
independently of the larger app.

626
00:24:40,780 --> 00:24:41,180
So,

627
00:24:41,240 --> 00:24:43,080
so to interrupt you and then we'll,

628
00:24:43,160 --> 00:24:43,500
so,

629
00:24:43,640 --> 00:24:47,380
so basically we're sort of past event storming and there's a few more steps and you're

630
00:24:47,380 --> 00:24:49,460
making the dragon happy,

631
00:24:49,940 --> 00:24:50,560
which is exciting.

632
00:24:51,600 --> 00:24:52,560
But you know,

633
00:24:52,600 --> 00:24:53,260
when I was,

634
00:24:53,340 --> 00:24:53,820
when I was,

635
00:24:53,820 --> 00:24:54,280
well,

636
00:24:54,280 --> 00:24:54,700
first of all,

637
00:24:54,760 --> 00:24:57,140
where's this concept of event storming come from?

638
00:24:57,480 --> 00:24:57,600
Did,

639
00:24:57,660 --> 00:24:58,340
did,

640
00:24:58,340 --> 00:24:58,560
did,

641
00:24:58,560 --> 00:24:58,780
yeah,

642
00:24:59,020 --> 00:25:00,840
even somewhere else or did y'all make that up?

643
00:25:01,320 --> 00:25:01,440
No,

644
00:25:01,500 --> 00:25:02,780
event storming was inspired,

645
00:25:03,100 --> 00:25:09,900
was popularized by this Italian guru called Alberto.

646
00:25:10,560 --> 00:25:12,000
I'm going to screw up his last name.

647
00:25:12,120 --> 00:25:13,500
It's Zandolfini.

648
00:25:14,180 --> 00:25:14,580
Perfect.

649
00:25:15,860 --> 00:25:16,420
And,

650
00:25:16,420 --> 00:25:18,380
and he was inspired from game storming.

651
00:25:18,380 --> 00:25:24,120
It's a series of facilitation techniques of group facilitation techniques that is,

652
00:25:24,320 --> 00:25:28,540
that brings out the domains from a domain driven perspective.

653
00:25:28,540 --> 00:25:28,940
It's a,

654
00:25:28,940 --> 00:25:29,040
it's a,

655
00:25:29,040 --> 00:25:31,640
it's kind of a very cool technique to,

656
00:25:31,640 --> 00:25:35,460
to draw out a mental model of the application.

657
00:25:35,620 --> 00:25:37,260
If there are groups of like them,

658
00:25:37,440 --> 00:25:39,720
because for an application that is 2 million lines of code,

659
00:25:39,800 --> 00:25:41,060
no one knows everything.

660
00:25:41,440 --> 00:25:42,360
It's kind of,

661
00:25:42,460 --> 00:25:42,960
it's,

662
00:25:43,040 --> 00:25:48,600
you have to have everyone who understands all parts of the elephant to show up in the room

663
00:25:48,600 --> 00:25:50,480
so that you can draw a picture of the elephant.

664
00:25:51,240 --> 00:25:52,260
So that's the,

665
00:25:52,460 --> 00:25:54,280
this technique kind of helps you do that.

666
00:25:54,920 --> 00:25:55,140
And yeah.

667
00:25:55,260 --> 00:25:56,220
And you know what,

668
00:25:56,420 --> 00:25:57,060
and maybe,

669
00:25:57,360 --> 00:25:58,260
I don't know,

670
00:25:58,320 --> 00:25:58,920
I want,

671
00:25:58,920 --> 00:26:03,860
I want to run my sort of summary of it and by the two of you and see if this sort of makes sense.

672
00:26:03,900 --> 00:26:05,680
It seems like it's almost,

673
00:26:05,880 --> 00:26:06,360
I don't know,

674
00:26:06,380 --> 00:26:07,840
it's kind of akin to a,

675
00:26:07,840 --> 00:26:10,140
a value stream in the following way.

676
00:26:10,220 --> 00:26:16,060
Like you sort of have an existing system that in reality,

677
00:26:16,060 --> 00:26:18,900
no one really knows how it functions completely.

678
00:26:19,100 --> 00:26:21,540
Everyone has like one little particular view of it.

679
00:26:21,660 --> 00:26:24,460
And so instead of having like a descriptive way,

680
00:26:24,580 --> 00:26:25,120
your classic,

681
00:26:25,120 --> 00:26:31,140
like a right click on your application and extract a bunch of UML diagrams or whatever it is people do nowadays,

682
00:26:31,140 --> 00:26:32,860
which sort of describes what,

683
00:26:32,980 --> 00:26:34,240
what the system looks like.

684
00:26:35,040 --> 00:26:35,800
I don't know,

685
00:26:35,920 --> 00:26:36,420
theoretically,

686
00:26:36,420 --> 00:26:37,980
it's almost like you're,

687
00:26:37,980 --> 00:26:40,680
you're rediscovering the purpose and the reason things are running,

688
00:26:40,780 --> 00:26:41,460
which is to say,

689
00:26:41,580 --> 00:26:44,220
as there's a process going through your system,

690
00:26:44,220 --> 00:26:44,700
like,

691
00:26:44,760 --> 00:26:45,600
I don't know,

692
00:26:46,060 --> 00:26:47,360
answering an insurance claim,

693
00:26:47,460 --> 00:26:53,400
what are the significant things that is say events that occur and how do they kind of pass off between each other from,

694
00:26:53,520 --> 00:26:54,920
from a business process sense.

695
00:26:55,120 --> 00:26:56,200
And in that way,

696
00:26:56,200 --> 00:27:06,720
it almost seems like it's a good way to do a bit of like architectural archeology where you're trying to find out how things actually operate versus how they should be operating.

697
00:27:07,140 --> 00:27:07,580
And,

698
00:27:07,580 --> 00:27:08,360
you know,

699
00:27:08,420 --> 00:27:11,080
and then by having all those different parties involved in a room,

700
00:27:11,500 --> 00:27:12,440
it seems like,

701
00:27:12,800 --> 00:27:13,780
well,

702
00:27:13,980 --> 00:27:14,260
they're,

703
00:27:14,260 --> 00:27:16,280
they're the ones who know they're small little,

704
00:27:16,540 --> 00:27:18,180
they're part of the elephant as it were.

705
00:27:18,380 --> 00:27:18,800
And you get,

706
00:27:18,880 --> 00:27:19,320
you get a,

707
00:27:19,380 --> 00:27:20,280
you get a actual,

708
00:27:20,800 --> 00:27:24,700
it's important because you not only get a picture of how you think things operate,

709
00:27:24,880 --> 00:27:27,340
but you get an idea of how they actually operate,

710
00:27:27,480 --> 00:27:32,000
which is clearly a lot more valuable than theoretical operation.

711
00:27:32,000 --> 00:27:32,380
Yeah.

712
00:27:32,620 --> 00:27:33,140
And I think,

713
00:27:33,760 --> 00:27:34,920
Michael,

714
00:27:35,060 --> 00:27:35,220
you're,

715
00:27:35,220 --> 00:27:35,900
you're spot on.

716
00:27:36,040 --> 00:27:37,220
Value stream mapping is,

717
00:27:37,440 --> 00:27:37,820
is,

718
00:27:38,220 --> 00:27:43,920
I look at it as just another form of event storming to tailor to a specific outcome.

719
00:27:44,120 --> 00:27:44,340
Yeah.

720
00:27:44,440 --> 00:27:45,200
That makes sense.

721
00:27:45,500 --> 00:27:45,660
So,

722
00:27:45,760 --> 00:27:46,180
so what,

723
00:27:46,320 --> 00:27:46,880
like,

724
00:27:46,880 --> 00:27:47,320
like have,

725
00:27:47,440 --> 00:27:47,620
have,

726
00:27:47,700 --> 00:27:49,020
have either you or Sarah,

727
00:27:49,160 --> 00:27:49,320
like,

728
00:27:49,360 --> 00:27:49,580
what are,

729
00:27:49,680 --> 00:27:50,940
what are some examples of,

730
00:27:51,040 --> 00:27:52,580
of that you might have of like,

731
00:27:53,100 --> 00:27:53,620
I don't know,

732
00:27:53,780 --> 00:27:56,180
fun aha moments in event storming?

733
00:27:56,260 --> 00:27:56,540
Like,

734
00:27:56,620 --> 00:27:56,860
like,

735
00:27:56,860 --> 00:27:59,020
like I imagine it often occurs that someone,

736
00:27:59,820 --> 00:28:00,040
some,

737
00:28:00,080 --> 00:28:02,100
some architects or some other people say,

738
00:28:02,260 --> 00:28:02,400
Oh,

739
00:28:02,740 --> 00:28:02,980
I,

740
00:28:03,040 --> 00:28:04,560
I never realized that was happening.

741
00:28:04,560 --> 00:28:05,380
Like that's a,

742
00:28:05,480 --> 00:28:06,960
that's an important part of the system.

743
00:28:07,040 --> 00:28:09,580
The ones that I have seen are just,

744
00:28:09,760 --> 00:28:13,440
everyone kind of confirms their understanding of where the,

745
00:28:13,440 --> 00:28:15,520
the pain is in the system.

746
00:28:16,300 --> 00:28:16,820
It,

747
00:28:16,860 --> 00:28:18,920
it often leads to the,

748
00:28:19,060 --> 00:28:19,360
the,

749
00:28:19,380 --> 00:28:21,620
the business developers and the technical guys,

750
00:28:21,720 --> 00:28:24,920
them themselves having a better understanding of the system.

751
00:28:25,040 --> 00:28:27,380
So it's kind of like a cathartic experience.

752
00:28:27,380 --> 00:28:29,880
Think of it like counseling almost in some way.

753
00:28:30,620 --> 00:28:33,580
I don't know if I have any aha moments for you.

754
00:28:33,580 --> 00:28:33,900
It's,

755
00:28:33,960 --> 00:28:39,780
it's a gradual series of progressive understanding of the app.

756
00:28:41,720 --> 00:28:42,200
It's,

757
00:28:42,320 --> 00:28:43,520
it's,

758
00:28:43,580 --> 00:28:48,580
it's very effective way of care of transferring knowledge as well.

759
00:28:48,720 --> 00:28:49,820
And one of the cool parts,

760
00:28:49,900 --> 00:28:51,780
it's not even just for current state,

761
00:28:51,900 --> 00:28:53,840
even for future state,

762
00:28:53,900 --> 00:28:54,080
right?

763
00:28:54,100 --> 00:28:58,040
Like you are in this system because of various problems that you have had.

764
00:28:58,260 --> 00:28:59,120
We also,

765
00:28:59,760 --> 00:29:00,880
in my recent engagement,

766
00:29:01,040 --> 00:29:01,600
we did it,

767
00:29:02,060 --> 00:29:05,060
a colleague of mine did it for future state event storming,

768
00:29:05,140 --> 00:29:09,120
where you can then imagine the art of the possible with the newer system.

769
00:29:09,500 --> 00:29:11,920
So event storming is not just for the old existing monolith.

770
00:29:12,060 --> 00:29:14,580
It's also for how will our new system look like?

771
00:29:14,640 --> 00:29:15,220
How would the,

772
00:29:15,500 --> 00:29:17,420
what would be the flow of events for the new system?

773
00:29:17,600 --> 00:29:20,840
And that helps you design your APIs and contracts for the new system.

774
00:29:20,960 --> 00:29:21,340
That's cool.

775
00:29:21,440 --> 00:29:22,340
So one thing I wanted to,

776
00:29:22,900 --> 00:29:23,160
you know,

777
00:29:23,200 --> 00:29:24,640
the event storming stuff is pretty cool stuff,

778
00:29:24,680 --> 00:29:24,920
but you,

779
00:29:24,960 --> 00:29:27,200
and you touched on this Rohit a little bit and Sarah,

780
00:29:27,260 --> 00:29:29,320
I'm interested in your experience in your,

781
00:29:29,400 --> 00:29:30,340
your real four months,

782
00:29:30,380 --> 00:29:35,420
maybe your fake eight months of being on aptX is when you kind of see success

783
00:29:35,420 --> 00:29:37,120
metrics and Rohit called out some of,

784
00:29:37,220 --> 00:29:37,820
some of this.

785
00:29:37,820 --> 00:29:39,040
And I think it's important to call it,

786
00:29:39,080 --> 00:29:39,680
this is quick.

787
00:29:39,680 --> 00:29:41,040
This is like 10 week projects.

788
00:29:41,040 --> 00:29:43,800
These are not like nine year life transformation.

789
00:29:44,060 --> 00:29:45,280
Everything changes projects.

790
00:29:45,340 --> 00:29:46,000
These are pretty quick.

791
00:29:46,060 --> 00:29:48,920
You see feedback quickly when you've finished your projects.

792
00:29:49,180 --> 00:29:51,800
What are those sorts of things that go back to the customer and say,

793
00:29:51,900 --> 00:29:52,680
Hey,

794
00:29:52,680 --> 00:29:53,680
this seemed like it was worth it.

795
00:29:53,680 --> 00:29:54,800
Like we check this box.

796
00:29:54,800 --> 00:29:55,140
Is it,

797
00:29:55,140 --> 00:29:57,980
is it things that feel like they're sustainable changes?

798
00:29:57,980 --> 00:29:58,220
Like,

799
00:29:58,300 --> 00:29:58,380
Hey,

800
00:29:58,380 --> 00:30:00,000
we've got so many apps on pipelines,

801
00:30:00,000 --> 00:30:03,260
or is it things about just raw number of apps that have been moved in

802
00:30:03,260 --> 00:30:03,660
general?

803
00:30:03,880 --> 00:30:06,060
What sort of things do people define as their success?

804
00:30:06,420 --> 00:30:08,260
So before we go on to that one,

805
00:30:08,280 --> 00:30:10,600
I just want to say one more thing about the event storming,

806
00:30:10,600 --> 00:30:14,340
which is not every project does an event storming,

807
00:30:14,380 --> 00:30:14,560
right?

808
00:30:15,060 --> 00:30:16,580
That's more of a modernization technique.

809
00:30:16,640 --> 00:30:18,880
So if you go in and you know that you're going to need to modernize your

810
00:30:18,880 --> 00:30:19,260
system,

811
00:30:19,420 --> 00:30:20,660
we usually do an event storming,

812
00:30:20,720 --> 00:30:23,760
but I've been on primarily replatforming engagements where we haven't

813
00:30:23,760 --> 00:30:24,240
done one.

814
00:30:24,780 --> 00:30:29,840
And my experience on replatforming is like that stuff comes out organically.

815
00:30:30,040 --> 00:30:31,140
Whereas with event storming,

816
00:30:31,160 --> 00:30:35,080
it kind of comes out upfront with more of an organized method behind the

817
00:30:35,080 --> 00:30:35,340
madness.

818
00:30:35,840 --> 00:30:40,400
And my experience of app transformation is more like you're riding a tiger

819
00:30:40,400 --> 00:30:43,960
and you're just hanging on because like you said,

820
00:30:44,000 --> 00:30:48,300
it's a very short engagement and you don't have a lot of control.

821
00:30:48,400 --> 00:30:49,460
You're not in a greenfield environment.

822
00:30:49,580 --> 00:30:52,380
You're in their environment and every environment is different.

823
00:30:52,740 --> 00:30:54,760
So as far as success metrics go,

824
00:30:55,360 --> 00:30:55,480
right,

825
00:30:55,580 --> 00:30:55,940
it's,

826
00:30:56,060 --> 00:30:56,780
you know,

827
00:30:57,000 --> 00:30:58,880
how far did the tight,

828
00:30:59,000 --> 00:30:59,160
you know,

829
00:30:59,180 --> 00:30:59,460
how much,

830
00:30:59,520 --> 00:31:02,940
how much progress did the tiger and I make at working together?

831
00:31:03,000 --> 00:31:03,400
Right.

832
00:31:03,480 --> 00:31:05,260
And are we going in the same direction at the end?

833
00:31:05,260 --> 00:31:07,940
And obviously we want to get to production,

834
00:31:08,100 --> 00:31:08,260
right?

835
00:31:08,320 --> 00:31:09,640
Because until apps are in production,

836
00:31:09,640 --> 00:31:12,080
they're not making any money for the customer and they're not seeing the

837
00:31:12,080 --> 00:31:14,220
benefit really of the platform.

838
00:31:14,500 --> 00:31:14,740
Right.

839
00:31:15,280 --> 00:31:17,460
So one of our primary goals is,

840
00:31:17,620 --> 00:31:17,660
Hey,

841
00:31:17,660 --> 00:31:19,800
let's get stuff all the way through into prod.

842
00:31:20,360 --> 00:31:20,720
And,

843
00:31:20,720 --> 00:31:22,720
and then enablement,

844
00:31:22,760 --> 00:31:22,920
right?

845
00:31:22,980 --> 00:31:23,240
Like,

846
00:31:23,500 --> 00:31:24,500
like you said,

847
00:31:24,520 --> 00:31:25,420
it's a very short engagement,

848
00:31:25,620 --> 00:31:26,740
four to 10 weeks.

849
00:31:27,100 --> 00:31:28,520
And if you're on a four week engagement,

850
00:31:28,780 --> 00:31:29,840
that's not a lot of time,

851
00:31:29,880 --> 00:31:30,000
right?

852
00:31:30,000 --> 00:31:30,500
That's a very,

853
00:31:30,580 --> 00:31:31,460
very small amount of time.

854
00:31:31,820 --> 00:31:35,860
And so we need to make sure that in the short amount of time that we have,

855
00:31:36,420 --> 00:31:40,080
we have brought people up to speed enough that they can continue this without us.

856
00:31:40,360 --> 00:31:40,680
Right.

857
00:31:40,680 --> 00:31:42,760
So we want to have some really,

858
00:31:42,760 --> 00:31:43,180
you know,

859
00:31:43,240 --> 00:31:44,080
intense conversations.

860
00:31:44,080 --> 00:31:45,420
We want to show them,

861
00:31:45,560 --> 00:31:46,320
you know,

862
00:31:46,360 --> 00:31:46,640
the,

863
00:31:46,720 --> 00:31:47,460
the path forward,

864
00:31:47,540 --> 00:31:48,540
the light at the end of the tunnel.

865
00:31:48,680 --> 00:31:53,100
And we want to leave them with some tools to get there on their own after we're gone.

866
00:31:53,260 --> 00:31:53,380
Yeah.

867
00:31:53,440 --> 00:31:55,500
And to give you some insight into numbers,

868
00:31:55,580 --> 00:31:55,820
Richard,

869
00:31:56,200 --> 00:32:00,460
our average for replatforming is roughly 10 apps in 10 weeks.

870
00:32:00,740 --> 00:32:01,840
And those 10 apps,

871
00:32:01,920 --> 00:32:05,960
think of those 10 apps as like maybe three medium or four medium apps,

872
00:32:06,480 --> 00:32:09,520
three to four large apps and three to four small apps.

873
00:32:10,100 --> 00:32:11,700
We've done vastly more.

874
00:32:12,260 --> 00:32:14,380
And sometimes we do a little bit less,

875
00:32:14,560 --> 00:32:15,720
but that gives you an idea.

876
00:32:15,820 --> 00:32:16,760
10 apps in 10 weeks.

877
00:32:16,820 --> 00:32:22,520
That means you're basically doing one app in a week across a team of roughly three pairs

878
00:32:22,520 --> 00:32:23,540
or four pairs.

879
00:32:24,500 --> 00:32:25,880
That's how fast it goes.

880
00:32:26,000 --> 00:32:34,040
But customers often are amazed at how much gets done in 10 weeks because of the way we work.

881
00:32:34,040 --> 00:32:36,880
We work in a dedicated pair programming fashion.

882
00:32:37,100 --> 00:32:37,700
We work for,

883
00:32:38,560 --> 00:32:43,900
we have a very rigorous style of work and we do take breaks.

884
00:32:44,100 --> 00:32:48,980
But when you work in this kind of setting where you are enabling the other partner

885
00:32:48,980 --> 00:32:51,740
and you have dedicated time,

886
00:32:52,160 --> 00:32:53,540
a lot can get done.

887
00:32:54,460 --> 00:32:54,820
Yeah,

888
00:32:54,840 --> 00:32:55,380
it seems like,

889
00:32:55,440 --> 00:32:57,580
and then one of those things that you touch on there,

890
00:32:57,640 --> 00:32:58,800
it seems like at that pace,

891
00:32:59,140 --> 00:33:01,020
settling for just a pure,

892
00:33:01,320 --> 00:33:01,460
you know,

893
00:33:01,480 --> 00:33:04,740
let's just containerize our apps and call that success and move on.

894
00:33:05,040 --> 00:33:06,520
It seems like you can do better than that.

895
00:33:06,560 --> 00:33:08,240
And I think that's what we're trying to sell here,

896
00:33:08,280 --> 00:33:08,640
I think,

897
00:33:08,680 --> 00:33:11,960
which is like that alone may not give you the benefits you're looking for.

898
00:33:12,020 --> 00:33:15,420
It might make sense to have some of these apps that go much further than that.

899
00:33:15,460 --> 00:33:15,960
Is that fair?

900
00:33:16,000 --> 00:33:24,180
It seems like that lift and shift is sometimes incremental benefit versus if I'm looking for actual benefits and availability or scale or what have you,

901
00:33:24,540 --> 00:33:27,160
that does have me move a little further down that spectrum.

902
00:33:27,320 --> 00:33:27,580
Is that,

903
00:33:27,620 --> 00:33:30,820
is that how you categorize kind of positioning that to people?

904
00:33:33,620 --> 00:33:34,060
Yeah.

905
00:33:34,180 --> 00:33:34,460
I mean,

906
00:33:34,540 --> 00:33:35,280
so when,

907
00:33:35,500 --> 00:33:37,460
even when we say replatforming,

908
00:33:37,700 --> 00:33:38,360
like Sarah said,

909
00:33:38,420 --> 00:33:39,060
it's a spectrum.

910
00:33:39,620 --> 00:33:42,860
Oftentimes it lands somewhere in the middle where we have,

911
00:33:43,180 --> 00:33:44,920
where we have externalized the configuration.

912
00:33:44,920 --> 00:33:47,660
We have stored the secrets in a vault.

913
00:33:48,600 --> 00:33:49,000
We do,

914
00:33:49,480 --> 00:33:49,740
I mean,

915
00:33:49,800 --> 00:33:50,740
I to be to,

916
00:33:51,240 --> 00:33:51,880
I mean,

917
00:33:51,920 --> 00:33:52,080
we,

918
00:33:52,220 --> 00:33:56,100
we do a lot of just taking applications and moving them to,

919
00:33:56,160 --> 00:33:57,260
to cloud native.

920
00:33:57,260 --> 00:34:00,860
We do less of a pure lift and shift model.

921
00:34:01,740 --> 00:34:02,180
We,

922
00:34:02,280 --> 00:34:05,480
we prioritize how much changes we need to make based on,

923
00:34:05,700 --> 00:34:07,380
on what the customer wants as well.

924
00:34:07,460 --> 00:34:09,340
But we innovated in,

925
00:34:09,580 --> 00:34:12,500
we most of the times land on the right side of the,

926
00:34:12,500 --> 00:34:13,440
of,

927
00:34:13,640 --> 00:34:15,480
of the modernization zone.

928
00:34:18,340 --> 00:34:18,780
Sarah,

929
00:34:18,820 --> 00:34:19,440
what do you think?

930
00:34:19,560 --> 00:34:19,700
How,

931
00:34:20,040 --> 00:34:20,260
when,

932
00:34:20,340 --> 00:34:21,780
when we re-platform applications,

933
00:34:22,280 --> 00:34:24,840
where do we end up landing them for the most part?

934
00:34:26,160 --> 00:34:28,380
I think it's very different based on the application.

935
00:34:30,880 --> 00:34:32,060
And that's a hard question,

936
00:34:32,140 --> 00:34:32,280
right?

937
00:34:32,400 --> 00:34:33,480
Because the,

938
00:34:33,560 --> 00:34:35,880
the goals of each client are different.

939
00:34:35,980 --> 00:34:38,500
The goals of each application are different.

940
00:34:39,360 --> 00:34:39,720
And,

941
00:34:39,800 --> 00:34:41,340
you know,

942
00:34:41,380 --> 00:34:45,640
I think it's important that we don't always hit every goal,

943
00:34:45,960 --> 00:34:47,620
but we do show the path forward,

944
00:34:47,700 --> 00:34:47,820
right?

945
00:34:47,860 --> 00:34:48,080
We,

946
00:34:48,200 --> 00:34:51,340
we leave with the knowledge of how to get to the next step and maybe what

947
00:34:51,340 --> 00:34:52,360
those next steps are.

948
00:34:52,600 --> 00:34:53,240
Not maybe,

949
00:34:53,360 --> 00:34:54,560
definitely what those next steps are.

950
00:34:55,020 --> 00:34:55,420
So,

951
00:34:55,740 --> 00:34:56,180
you know,

952
00:34:56,220 --> 00:34:56,360
we,

953
00:34:56,440 --> 00:35:00,120
we want to get it when we have this suite of small applications,

954
00:35:00,120 --> 00:35:01,380
we want to get one application,

955
00:35:01,380 --> 00:35:02,420
you know,

956
00:35:02,420 --> 00:35:03,540
all the way through the system.

957
00:35:04,180 --> 00:35:04,540
Right.

958
00:35:04,580 --> 00:35:05,620
But then every other one,

959
00:35:05,700 --> 00:35:09,960
we get to some point where it can run on PCF.

960
00:35:09,960 --> 00:35:10,200
Right.

961
00:35:10,200 --> 00:35:12,200
But it's not necessarily done,

962
00:35:12,320 --> 00:35:12,560
done.

963
00:35:13,280 --> 00:35:13,640
And,

964
00:35:13,700 --> 00:35:14,160
and,

965
00:35:14,160 --> 00:35:15,600
and instead we leave this map,

966
00:35:15,660 --> 00:35:16,040
like we said,

967
00:35:16,100 --> 00:35:16,240
Hey,

968
00:35:16,260 --> 00:35:16,540
we've,

969
00:35:16,580 --> 00:35:19,620
we've shown you the way with this one and you have the tools,

970
00:35:19,660 --> 00:35:19,760
right?

971
00:35:19,760 --> 00:35:22,340
You have the knowledge of what we did together on the one that

972
00:35:22,340 --> 00:35:23,220
punched all the way through.

973
00:35:23,740 --> 00:35:26,060
And here's the roadmap for the others.

974
00:35:27,720 --> 00:35:28,120
So,

975
00:35:28,160 --> 00:35:29,440
so speaking of next steps,

976
00:35:29,440 --> 00:35:30,880
I interrupted the,

977
00:35:30,880 --> 00:35:33,520
the overview that we were going through of what the process is.

978
00:35:33,520 --> 00:35:33,840
And I think,

979
00:35:33,900 --> 00:35:37,480
I think we left off like maybe after event storming.

980
00:35:37,520 --> 00:35:38,180
And if not,

981
00:35:38,600 --> 00:35:39,540
I forgotten what we did.

982
00:35:39,600 --> 00:35:40,840
So maybe we can go to that part,

983
00:35:40,840 --> 00:35:44,420
but do you want to keep summarizing what the overall the,

984
00:35:44,420 --> 00:35:46,360
the dragon happy process looks like Rohit?

985
00:35:46,800 --> 00:35:47,040
Yeah.

986
00:35:47,160 --> 00:35:50,460
So the event storming may or may not happen,

987
00:35:50,620 --> 00:35:50,780
right?

988
00:35:50,820 --> 00:35:52,780
It does not happen for all applications.

989
00:35:52,780 --> 00:35:55,400
It happens for these huge system of systems,

990
00:35:55,520 --> 00:35:57,840
monolithic applications for the small,

991
00:35:57,980 --> 00:35:58,300
medium,

992
00:35:58,700 --> 00:35:59,800
large applications.

993
00:36:00,740 --> 00:36:01,740
We have,

994
00:36:02,020 --> 00:36:08,240
we have a couple of processes in our tool belt called snap and,

995
00:36:08,240 --> 00:36:10,560
and another set of automated tools where,

996
00:36:10,560 --> 00:36:12,900
so snap stands for in a snap,

997
00:36:13,120 --> 00:36:14,400
not analysis paralysis.

998
00:36:14,980 --> 00:36:18,900
So we have this process where within like roughly 15 minutes to 20 minutes

999
00:36:18,900 --> 00:36:19,860
or half an hour,

1000
00:36:19,860 --> 00:36:20,400
we get,

1001
00:36:20,520 --> 00:36:25,560
we get an understanding of how much effort it will take to re-platform the

1002
00:36:25,560 --> 00:36:26,060
application.

1003
00:36:26,680 --> 00:36:30,960
And then we also have some tools that we can run in an automated fashion.

1004
00:36:30,960 --> 00:36:35,280
We combine that expert insight from snap into automated tools and basically

1005
00:36:35,280 --> 00:36:37,820
generate a t-shirt size score for the application.

1006
00:36:38,060 --> 00:36:38,960
So the applications,

1007
00:36:38,960 --> 00:36:39,560
like I said,

1008
00:36:39,620 --> 00:36:41,400
would fall into small to medium,

1009
00:36:41,520 --> 00:36:42,120
extra large.

1010
00:36:42,260 --> 00:36:43,940
And then for the huge apps,

1011
00:36:44,620 --> 00:36:45,240
they are,

1012
00:36:45,440 --> 00:36:47,440
I categorize them as double XL and triple XL.

1013
00:36:47,620 --> 00:36:47,800
So,

1014
00:36:48,080 --> 00:36:48,240
okay,

1015
00:36:48,280 --> 00:36:49,240
you've gone through snap,

1016
00:36:49,360 --> 00:36:50,340
you've gone through PCAT.

1017
00:36:50,520 --> 00:36:54,100
you have an understanding of the modification points of that application.

1018
00:36:54,100 --> 00:36:58,820
We create a backlog and all that typically happens either in the pre-work or it

1019
00:36:58,820 --> 00:37:00,680
happens in the first couple of days of the engagement.

1020
00:37:01,020 --> 00:37:04,500
We want to start writing code as soon as possible to start the learning.

1021
00:37:04,940 --> 00:37:05,940
So the process,

1022
00:37:06,240 --> 00:37:10,800
the actual engagement begins with an inception where we drive out the objectives

1023
00:37:10,800 --> 00:37:11,700
and key results.

1024
00:37:12,200 --> 00:37:12,460
We,

1025
00:37:12,700 --> 00:37:15,100
we review the results of the snap analysis.

1026
00:37:15,100 --> 00:37:21,160
We create a backlog of all the stories for and tag them for each application.

1027
00:37:21,340 --> 00:37:27,120
We also tag the backlog of user stories and associate them with specific key

1028
00:37:27,120 --> 00:37:29,400
results so that at the end of the engagement,

1029
00:37:29,560 --> 00:37:33,020
we can track exactly how much of those key results we have completed.

1030
00:37:33,560 --> 00:37:37,760
And then essentially we start with stream in a replatforming engagement.

1031
00:37:37,980 --> 00:37:40,380
You typically start off with three or four apps,

1032
00:37:40,440 --> 00:37:41,940
depending on how many pairs you have.

1033
00:37:41,940 --> 00:37:45,260
Each pair tackles an application and starts making changes to it.

1034
00:37:45,620 --> 00:37:48,960
And then you begin the series of changes for replatforming.

1035
00:37:49,340 --> 00:37:51,740
And so typically that begins with,

1036
00:37:52,040 --> 00:37:52,260
if you,

1037
00:37:52,460 --> 00:37:53,740
if there is an app and you,

1038
00:37:53,860 --> 00:37:55,760
you inject spring boot into the app,

1039
00:37:55,900 --> 00:37:57,760
you look at some of the dependencies,

1040
00:37:57,960 --> 00:37:59,540
you remove the JNDI dependencies,

1041
00:38:00,040 --> 00:38:02,800
you go through the process of what I call as bootification.

1042
00:38:03,280 --> 00:38:10,380
Take the app to make changes to the app so that it becomes cloud native and cloud,

1043
00:38:10,580 --> 00:38:11,380
almost in some sense,

1044
00:38:11,440 --> 00:38:12,340
cloud agnostic.

1045
00:38:13,960 --> 00:38:16,660
And then typically like,

1046
00:38:17,000 --> 00:38:18,980
like I mentioned the 10 apps in 10 weeks,

1047
00:38:19,280 --> 00:38:20,880
usually our run rate is it,

1048
00:38:20,960 --> 00:38:24,380
you take a pair takes probably a week to move an app,

1049
00:38:24,740 --> 00:38:25,560
sometimes more,

1050
00:38:25,640 --> 00:38:26,220
sometimes less.

1051
00:38:26,280 --> 00:38:29,260
And we see that the velocity typically increases towards the end.

1052
00:38:29,260 --> 00:38:30,220
And towards the end,

1053
00:38:30,300 --> 00:38:31,200
we also put more focus.

1054
00:38:31,400 --> 00:38:34,260
We also may do a value stream,

1055
00:38:34,360 --> 00:38:35,320
a path to production,

1056
00:38:35,520 --> 00:38:37,060
because in some cases,

1057
00:38:37,060 --> 00:38:38,820
it's really important to get the apps to production.

1058
00:38:39,020 --> 00:38:41,260
So we figure out how to automate CI,

1059
00:38:41,340 --> 00:38:44,060
CD and to bust any of those blockers there.

1060
00:38:44,340 --> 00:38:47,940
So we also put a particular focus on getting the apps through the pipeline,

1061
00:38:48,020 --> 00:38:49,900
all the way through the environments to production.

1062
00:38:50,120 --> 00:38:51,720
So those are the things that we,

1063
00:38:52,020 --> 00:38:53,800
that kind of happened during an engagement.

1064
00:38:54,000 --> 00:38:55,760
We have mid engagement reviews,

1065
00:38:56,100 --> 00:38:57,780
end of engagement every week.

1066
00:38:57,900 --> 00:38:59,060
There is a retrospective.

1067
00:38:59,460 --> 00:39:01,120
There are iteration planning meetings.

1068
00:39:01,240 --> 00:39:01,780
There are demos.

1069
00:39:02,340 --> 00:39:09,260
We closely align with the product owners from the customer side and make sure that they accept our stories.

1070
00:39:09,520 --> 00:39:12,000
It's a very close collaboration till the very end.

1071
00:39:12,460 --> 00:39:14,400
And because we have been pair programming throughout,

1072
00:39:14,880 --> 00:39:16,420
there is no knowledge transfer at the end.

1073
00:39:16,500 --> 00:39:17,700
All the developers are enabled.

1074
00:39:18,120 --> 00:39:18,680
And after that,

1075
00:39:18,760 --> 00:39:19,860
they can sell,

1076
00:39:20,000 --> 00:39:22,900
divide and spawn other teams at the customer side.

1077
00:39:22,940 --> 00:39:23,800
And that's how it scales.

1078
00:39:24,520 --> 00:39:24,640
Yeah.

1079
00:39:24,700 --> 00:39:25,340
There's a,

1080
00:39:25,460 --> 00:39:25,620
you know,

1081
00:39:25,680 --> 00:39:25,960
as,

1082
00:39:26,100 --> 00:39:31,040
as to the point of a lot of it being sort of a process oriented and all of that.

1083
00:39:32,360 --> 00:39:35,460
It's interesting that a lot of the technical aspects you know,

1084
00:39:35,480 --> 00:39:43,320
actual coding and architectural stuff that I think people often struggle with when they're dealing with legacy sort of happens at the end of the process.

1085
00:39:43,320 --> 00:39:44,100
And there's a,

1086
00:39:44,180 --> 00:39:48,120
there's a good little vignette of that from another rookie at Liberty where he,

1087
00:39:48,120 --> 00:39:48,920
where he talks about,

1088
00:39:49,020 --> 00:39:51,820
I think a three stage MVP that they go through to,

1089
00:39:51,820 --> 00:39:52,940
to break up a,

1090
00:39:52,980 --> 00:39:54,720
an ear into smaller services.

1091
00:39:54,720 --> 00:39:56,820
And then also to like remove database dependencies.

1092
00:39:56,820 --> 00:39:57,580
And it's,

1093
00:39:57,620 --> 00:40:01,680
it's a nice overview of the technical part of how you kind of systematically do what,

1094
00:40:01,720 --> 00:40:03,600
people often feel is impossible,

1095
00:40:03,600 --> 00:40:05,120
which is to take,

1096
00:40:05,340 --> 00:40:05,740
I guess,

1097
00:40:05,780 --> 00:40:08,280
like a classic three tier application and,

1098
00:40:08,340 --> 00:40:10,380
and break it up into microservices.

1099
00:40:10,680 --> 00:40:11,360
So the,

1100
00:40:11,360 --> 00:40:12,320
the,

1101
00:40:12,320 --> 00:40:12,660
the,

1102
00:40:12,720 --> 00:40:13,540
you know,

1103
00:40:13,540 --> 00:40:14,960
sort of after that process,

1104
00:40:14,960 --> 00:40:15,820
I'm curious to hear,

1105
00:40:15,900 --> 00:40:16,080
I mean,

1106
00:40:16,080 --> 00:40:16,220
as,

1107
00:40:16,300 --> 00:40:17,520
as you keep bringing up Sarah,

1108
00:40:17,980 --> 00:40:20,020
that I,

1109
00:40:20,020 --> 00:40:21,680
and I think this is not unique,

1110
00:40:21,800 --> 00:40:22,260
but well,

1111
00:40:22,680 --> 00:40:24,440
I'll say it's unique for marketing purposes,

1112
00:40:24,440 --> 00:40:27,540
but it's one of the hallmarks of a lot of pivotal stuff is like,

1113
00:40:27,640 --> 00:40:28,640
the hope is that like,

1114
00:40:28,720 --> 00:40:31,700
you can figure out how to do this in the future after we've helped you do it.

1115
00:40:31,720 --> 00:40:36,160
And I wonder like what advice y'all give as far as like,

1116
00:40:36,620 --> 00:40:41,760
here's like the hygiene you should be maintaining so that you don't have to hire us again to fix your,

1117
00:40:41,820 --> 00:40:43,380
your sort of legacy problems.

1118
00:40:43,380 --> 00:40:51,400
Like certainly there's some sort of habits that people fell into that caused them to have something they didn't want or problems in the first place.

1119
00:40:51,400 --> 00:40:52,000
And kind of like,

1120
00:40:52,120 --> 00:40:52,640
what are the,

1121
00:40:52,760 --> 00:40:59,620
what are the pieces of advice you give them and sort of practices that they should start following on going to not fall into this,

1122
00:40:59,760 --> 00:41:01,080
this situation again?

1123
00:41:01,220 --> 00:41:01,460
Well,

1124
00:41:01,540 --> 00:41:03,320
the first one is pairing,

1125
00:41:03,480 --> 00:41:03,720
right?

1126
00:41:03,880 --> 00:41:05,540
And that's not practical in every organization,

1127
00:41:05,540 --> 00:41:07,620
but we like to encourage it where possible.

1128
00:41:08,900 --> 00:41:09,820
Because if you're pairing,

1129
00:41:09,960 --> 00:41:11,340
you've got continuous code review,

1130
00:41:11,480 --> 00:41:11,580
right?

1131
00:41:11,580 --> 00:41:12,420
You've got two problems,

1132
00:41:12,560 --> 00:41:14,560
two brains solving the same problem over time,

1133
00:41:14,620 --> 00:41:15,260
you go faster.

1134
00:41:15,960 --> 00:41:16,320
And,

1135
00:41:16,400 --> 00:41:16,780
you know,

1136
00:41:16,780 --> 00:41:21,920
a lot of people are reluctant to pair at first and they're not really sold on the benefits,

1137
00:41:21,920 --> 00:41:23,600
but once they've done it with us for a while,

1138
00:41:23,620 --> 00:41:24,220
they kind of see,

1139
00:41:24,280 --> 00:41:24,540
oh yeah,

1140
00:41:24,620 --> 00:41:25,520
I see what you're saying,

1141
00:41:25,580 --> 00:41:25,800
right?

1142
00:41:25,800 --> 00:41:26,460
About these benefits.

1143
00:41:26,920 --> 00:41:29,460
So that's,

1144
00:41:29,460 --> 00:41:29,940
that's one of,

1145
00:41:30,020 --> 00:41:30,180
you know,

1146
00:41:30,200 --> 00:41:31,100
the hygiene things.

1147
00:41:31,260 --> 00:41:33,760
If you've got two people looking at code at any given time,

1148
00:41:34,320 --> 00:41:34,580
you know,

1149
00:41:34,620 --> 00:41:35,320
right there in the moment,

1150
00:41:35,400 --> 00:41:36,260
solving the same problem,

1151
00:41:36,260 --> 00:41:42,240
you're more likely to create a good solution or to highlight the problems and then go have a conversation with your pair or with,

1152
00:41:42,460 --> 00:41:42,560
sorry,

1153
00:41:42,620 --> 00:41:43,220
with another pair.

1154
00:41:43,900 --> 00:41:45,240
So pairing also,

1155
00:41:45,440 --> 00:41:45,760
you know,

1156
00:41:45,800 --> 00:41:46,180
testing,

1157
00:41:46,380 --> 00:41:46,620
right?

1158
00:41:47,220 --> 00:41:48,300
We get into,

1159
00:41:48,620 --> 00:41:49,460
you know,

1160
00:41:49,480 --> 00:41:50,720
a lot of these systems and we see,

1161
00:41:50,900 --> 00:41:50,960
oh,

1162
00:41:50,980 --> 00:41:54,640
we've got some cucumber tests or we've got a Q18 that does manual testing.

1163
00:41:55,140 --> 00:41:56,580
And our unit tests are,

1164
00:41:56,580 --> 00:41:57,440
you know,

1165
00:41:57,520 --> 00:41:57,780
like,

1166
00:41:57,840 --> 00:41:58,180
I don't know,

1167
00:41:58,200 --> 00:41:58,440
we have,

1168
00:41:58,520 --> 00:41:59,620
we have 200 tests for,

1169
00:41:59,700 --> 00:42:00,080
you know,

1170
00:42:00,120 --> 00:42:03,140
1 million line software system.

1171
00:42:03,460 --> 00:42:04,160
And it's like,

1172
00:42:04,480 --> 00:42:04,720
oh,

1173
00:42:04,780 --> 00:42:05,300
that's,

1174
00:42:05,380 --> 00:42:06,320
that's great.

1175
00:42:06,320 --> 00:42:07,020
You know?

1176
00:42:08,180 --> 00:42:09,120
And if we can,

1177
00:42:09,180 --> 00:42:11,180
if we can instill the values of TDD,

1178
00:42:11,460 --> 00:42:11,660
right?

1179
00:42:11,760 --> 00:42:12,060
And,

1180
00:42:12,080 --> 00:42:13,660
and show you the benefits of that.

1181
00:42:14,300 --> 00:42:16,780
And that's a commitment that you're willing to make long term.

1182
00:42:17,080 --> 00:42:17,540
You know,

1183
00:42:17,540 --> 00:42:17,860
that's,

1184
00:42:17,900 --> 00:42:19,020
that's another one of those hygiene things.

1185
00:42:19,020 --> 00:42:20,900
Like it's not easy to do TDD.

1186
00:42:21,180 --> 00:42:26,260
It takes an actual mental shift and kind of a responsibility to yourself and your pair and your code.

1187
00:42:26,960 --> 00:42:28,280
But it's another,

1188
00:42:28,420 --> 00:42:29,940
one of those things that pays off long term.

1189
00:42:30,100 --> 00:42:30,780
The thing is,

1190
00:42:31,080 --> 00:42:31,920
Michael,

1191
00:42:32,180 --> 00:42:32,380
the,

1192
00:42:32,880 --> 00:42:34,260
sometimes you,

1193
00:42:34,500 --> 00:42:36,180
the 10 weeks is not enough.

1194
00:42:36,360 --> 00:42:37,540
You do have to,

1195
00:42:38,000 --> 00:42:44,720
like we also work with partners to create that long term journey for that application or suite of applications.

1196
00:42:44,880 --> 00:42:47,860
So oftentimes after app transformation is done,

1197
00:42:48,240 --> 00:42:50,500
we work with pivotal labs to,

1198
00:42:50,560 --> 00:42:52,800
to carry the long tail of the project through.

1199
00:42:52,880 --> 00:42:54,860
And then we work with customer partners as well.

1200
00:42:55,040 --> 00:42:56,400
So it's not just,

1201
00:42:56,480 --> 00:42:57,300
we come in for 10 weeks,

1202
00:42:57,320 --> 00:42:57,700
we are gone.

1203
00:42:57,960 --> 00:42:58,180
We,

1204
00:42:58,280 --> 00:43:00,280
we sometimes can do multiple engagements.

1205
00:43:00,440 --> 00:43:09,660
We like to work with labs and then with the customer preferred partners to kind of get them all the way through the journey to where they need to be.

1206
00:43:09,660 --> 00:43:11,200
There was another hygiene thing,

1207
00:43:11,340 --> 00:43:16,720
which is we maintain a cookbook and we build a cookbook while they were there as we were pairing on these problems.

1208
00:43:17,480 --> 00:43:17,760
And,

1209
00:43:17,760 --> 00:43:18,220
you know,

1210
00:43:18,280 --> 00:43:24,000
part of what we're trying to do with app transformation and what the clients are trying to do with app transformation is move a lot of applications,

1211
00:43:24,400 --> 00:43:24,540
right?

1212
00:43:24,560 --> 00:43:25,600
It's not just this one.

1213
00:43:26,160 --> 00:43:26,520
It's,

1214
00:43:26,600 --> 00:43:26,620
hey,

1215
00:43:26,640 --> 00:43:31,920
I want to identify patterns using this one as an example to make me successful in other projects,

1216
00:43:31,980 --> 00:43:32,100
right?

1217
00:43:32,100 --> 00:43:33,000
With other applications.

1218
00:43:33,700 --> 00:43:35,560
So we,

1219
00:43:35,760 --> 00:43:37,340
as we go along and we identify,

1220
00:43:37,600 --> 00:43:37,720
hey,

1221
00:43:37,780 --> 00:43:41,000
this thing was difficult or this is a pattern that we have in other applications,

1222
00:43:41,520 --> 00:43:42,480
we write it down,

1223
00:43:43,040 --> 00:43:43,700
create a cookbook,

1224
00:43:43,700 --> 00:43:46,720
and then that cookbook can get shared out with the organization,

1225
00:43:47,360 --> 00:43:47,460
right?

1226
00:43:47,560 --> 00:43:52,040
And teaching people to kind of have that discipline,

1227
00:43:52,500 --> 00:43:52,720
right?

1228
00:43:52,720 --> 00:43:57,120
Once you've identified a problem that you think other applications are going to have,

1229
00:43:57,200 --> 00:43:57,780
writing it down,

1230
00:43:57,860 --> 00:43:58,520
recording it,

1231
00:43:59,120 --> 00:44:00,820
that goes a long way,

1232
00:44:00,860 --> 00:44:01,120
I think,

1233
00:44:01,220 --> 00:44:03,420
towards being successful in the future.

1234
00:44:04,140 --> 00:44:04,420
Yeah,

1235
00:44:04,440 --> 00:44:05,740
I was going to ask you a cookbook question.

1236
00:44:05,880 --> 00:44:07,840
So you somehow teed that right up.

1237
00:44:08,180 --> 00:44:09,220
So I was going to,

1238
00:44:09,320 --> 00:44:10,020
because specifically,

1239
00:44:10,280 --> 00:44:10,560
you know,

1240
00:44:10,560 --> 00:44:11,900
there can be this mindset of like,

1241
00:44:11,960 --> 00:44:12,100
look,

1242
00:44:12,140 --> 00:44:13,200
we bought this certain tech.

1243
00:44:13,280 --> 00:44:13,840
It's really cool.

1244
00:44:13,900 --> 00:44:14,000
Hey,

1245
00:44:14,020 --> 00:44:15,200
we're just using public cloud.

1246
00:44:15,340 --> 00:44:16,280
We took some training.

1247
00:44:16,420 --> 00:44:17,200
We bought the books.

1248
00:44:17,360 --> 00:44:18,120
We're going.

1249
00:44:18,640 --> 00:44:21,180
And that obviously sometimes works for some orgs,

1250
00:44:21,180 --> 00:44:22,520
but does seem like legitimately,

1251
00:44:22,840 --> 00:44:23,140
seriously,

1252
00:44:23,140 --> 00:44:25,560
that when customers are doing app TX with us,

1253
00:44:25,560 --> 00:44:25,740
that,

1254
00:44:25,740 --> 00:44:30,020
that leads to an evolutionary or maybe even a revolutionary shift in their approach.

1255
00:44:30,020 --> 00:44:33,680
If they learn the things you just talked about around hygiene and pairing and testing,

1256
00:44:33,680 --> 00:44:36,860
but then they also learn how to keep doing it,

1257
00:44:36,860 --> 00:44:37,240
right?

1258
00:44:37,240 --> 00:44:38,460
Not just while we're there that,

1259
00:44:38,600 --> 00:44:38,720
yes,

1260
00:44:38,720 --> 00:44:39,760
we partner and we pair,

1261
00:44:39,800 --> 00:44:40,380
and that's awesome,

1262
00:44:40,380 --> 00:44:42,240
but we don't have to be there for life.

1263
00:44:42,240 --> 00:44:44,080
If we may come back and help and tune up,

1264
00:44:44,440 --> 00:44:46,540
but it seems like you're actually teaching a healthy lifestyle,

1265
00:44:46,540 --> 00:44:47,240
if you will,

1266
00:44:47,660 --> 00:44:52,160
and then leaving behind all the things you need to keep going versus making them codependent on us.

1267
00:44:52,220 --> 00:44:52,520
Is that a,

1268
00:44:52,520 --> 00:44:53,480
is that a fair characterization?

1269
00:44:54,740 --> 00:44:56,060
I think that is very fair.

1270
00:44:56,180 --> 00:44:57,020
And that's something that I,

1271
00:44:57,100 --> 00:45:00,380
I actively strive to do with every pair that I have is teach them like,

1272
00:45:00,980 --> 00:45:01,080
Hey,

1273
00:45:01,100 --> 00:45:01,420
let's,

1274
00:45:01,580 --> 00:45:02,380
let's ask questions,

1275
00:45:02,380 --> 00:45:02,560
right?

1276
00:45:02,560 --> 00:45:03,520
It's okay not to know.

1277
00:45:03,520 --> 00:45:03,820
That's,

1278
00:45:03,880 --> 00:45:05,400
that's a really hard thing for people,

1279
00:45:05,540 --> 00:45:10,880
especially the more senior they are to kind of do sometimes,

1280
00:45:10,880 --> 00:45:11,100
you know,

1281
00:45:11,100 --> 00:45:14,340
there's this pressure that we have to know everything and we can't show weakness.

1282
00:45:14,340 --> 00:45:14,620
Right.

1283
00:45:14,640 --> 00:45:17,940
And so we're going to go off into a hole and research something and then come back with a

1284
00:45:17,940 --> 00:45:20,480
solution instead of just,

1285
00:45:20,740 --> 00:45:21,000
you know,

1286
00:45:21,000 --> 00:45:22,040
kind of being more upfront and saying,

1287
00:45:22,100 --> 00:45:22,260
gosh,

1288
00:45:22,280 --> 00:45:22,780
I don't know.

1289
00:45:24,660 --> 00:45:27,440
And I guess I should say not just senior people.

1290
00:45:27,540 --> 00:45:27,680
It's,

1291
00:45:27,700 --> 00:45:28,280
it's everybody.

1292
00:45:30,260 --> 00:45:31,940
I see that with a lot of junior people too,

1293
00:45:31,960 --> 00:45:32,080
right?

1294
00:45:32,080 --> 00:45:32,480
That was a,

1295
00:45:32,600 --> 00:45:33,960
that was a bad characterization on my part.

1296
00:45:34,020 --> 00:45:34,480
Sorry about that.

1297
00:45:34,980 --> 00:45:36,380
But yeah,

1298
00:45:36,380 --> 00:45:36,940
teaching people,

1299
00:45:37,080 --> 00:45:37,400
like you said,

1300
00:45:37,420 --> 00:45:40,380
to kind of have a healthy mindset and just,

1301
00:45:40,880 --> 00:45:43,320
being transparent and being empowered to say,

1302
00:45:43,440 --> 00:45:43,600
Hey,

1303
00:45:43,660 --> 00:45:44,020
this is,

1304
00:45:44,500 --> 00:45:44,780
you know,

1305
00:45:44,800 --> 00:45:45,940
anybody can raise their hand and say,

1306
00:45:45,980 --> 00:45:46,080
Hey,

1307
00:45:46,100 --> 00:45:46,420
this is,

1308
00:45:46,560 --> 00:45:49,080
this is something that's missing from what we've done so far.

1309
00:45:49,180 --> 00:45:49,540
Or,

1310
00:45:50,160 --> 00:45:51,240
you know,

1311
00:45:51,240 --> 00:45:52,480
I think this is a better solution,

1312
00:45:52,480 --> 00:45:52,780
right?

1313
00:45:52,800 --> 00:45:53,980
Or I'm worried about this or,

1314
00:45:54,300 --> 00:45:54,400
you know,

1315
00:45:54,460 --> 00:45:54,720
whatever,

1316
00:45:54,900 --> 00:45:56,060
bringing up those questions,

1317
00:45:56,280 --> 00:45:57,680
not knowing,

1318
00:45:57,780 --> 00:46:02,840
being able to explore and you just being a little bit more transparent with,

1319
00:46:03,100 --> 00:46:03,400
you know,

1320
00:46:03,420 --> 00:46:05,600
yourself and your team is,

1321
00:46:05,740 --> 00:46:06,280
goes a long way.

1322
00:46:06,340 --> 00:46:06,440
I mean,

1323
00:46:06,460 --> 00:46:06,720
that's,

1324
00:46:06,760 --> 00:46:09,540
that's sort of wishy-washy and not technical,

1325
00:46:09,780 --> 00:46:10,460
but,

1326
00:46:10,540 --> 00:46:11,720
it's,

1327
00:46:11,720 --> 00:46:12,280
it's a huge,

1328
00:46:12,320 --> 00:46:13,220
it makes a huge difference,

1329
00:46:13,260 --> 00:46:13,380
right?

1330
00:46:13,380 --> 00:46:14,940
If everybody's driven by fear,

1331
00:46:15,360 --> 00:46:16,920
fear of losing their job,

1332
00:46:17,040 --> 00:46:19,260
fear of not making their date,

1333
00:46:19,460 --> 00:46:19,740
whatever,

1334
00:46:20,260 --> 00:46:23,420
your team is not going to be very effective.

1335
00:46:24,100 --> 00:46:24,500
Right.

1336
00:46:25,140 --> 00:46:25,540
Yeah.

1337
00:46:25,540 --> 00:46:26,260
But at the same time,

1338
00:46:26,260 --> 00:46:28,900
I think what I hear from you and Rohit throughout this talk is that,

1339
00:46:29,020 --> 00:46:29,120
again,

1340
00:46:29,120 --> 00:46:31,480
this is still a very personalized approach.

1341
00:46:31,480 --> 00:46:32,400
You don't come in,

1342
00:46:32,680 --> 00:46:35,740
drop down a 400 pound cookbook on someone's desk and go,

1343
00:46:35,820 --> 00:46:36,460
go at it.

1344
00:46:36,480 --> 00:46:37,320
Like ride the tiger.

1345
00:46:37,420 --> 00:46:37,880
Here we go.

1346
00:46:38,200 --> 00:46:39,280
I think from the sounds of it,

1347
00:46:39,280 --> 00:46:44,920
you're describing something that from the start is still very tailored to that company's sort of personnel,

1348
00:46:45,260 --> 00:46:46,280
their tech problems,

1349
00:46:46,340 --> 00:46:46,860
their challenges.

1350
00:46:46,860 --> 00:46:48,900
And then what you do leave behind is,

1351
00:46:48,900 --> 00:46:51,460
is the sort of recipes you've worked on together,

1352
00:46:51,460 --> 00:46:51,740
right?

1353
00:46:51,760 --> 00:46:53,900
not just a generic collection of things that,

1354
00:46:54,000 --> 00:46:55,120
that they may or may not use.

1355
00:46:56,000 --> 00:46:56,360
Yeah,

1356
00:46:56,420 --> 00:46:56,840
exactly.

1357
00:46:57,100 --> 00:46:58,100
And that's where having,

1358
00:46:58,340 --> 00:46:58,500
you know,

1359
00:46:58,500 --> 00:46:59,060
for us,

1360
00:46:59,140 --> 00:46:59,480
we,

1361
00:46:59,600 --> 00:47:04,900
we maybe bring the process and the experience of the technical replatforming and all that to the pair.

1362
00:47:05,060 --> 00:47:07,440
But what they bring is knowledge of their system,

1363
00:47:07,560 --> 00:47:07,680
right?

1364
00:47:07,720 --> 00:47:08,720
Knowledge of their applications,

1365
00:47:08,920 --> 00:47:09,800
knowledge of their company,

1366
00:47:10,380 --> 00:47:12,220
knowledge of other applications in the company.

1367
00:47:12,540 --> 00:47:13,120
And so,

1368
00:47:13,460 --> 00:47:13,760
you know,

1369
00:47:13,940 --> 00:47:14,180
our,

1370
00:47:14,260 --> 00:47:16,440
our pairs are usually the people that are like,

1371
00:47:16,520 --> 00:47:16,620
hey,

1372
00:47:16,680 --> 00:47:17,680
this is a good recipe,

1373
00:47:18,260 --> 00:47:18,540
right?

1374
00:47:18,580 --> 00:47:19,400
Like we've got,

1375
00:47:19,500 --> 00:47:21,980
we've got 50 applications that use the same patterns.

1376
00:47:22,100 --> 00:47:22,200
Like,

1377
00:47:22,240 --> 00:47:22,320
well,

1378
00:47:22,360 --> 00:47:22,500
great,

1379
00:47:22,540 --> 00:47:23,840
let's write a recipe about it,

1380
00:47:23,840 --> 00:47:24,460
right?

1381
00:47:24,580 --> 00:47:26,400
And something that we think might be a good recipe,

1382
00:47:26,480 --> 00:47:26,780
they're like,

1383
00:47:26,860 --> 00:47:27,080
yeah,

1384
00:47:27,100 --> 00:47:27,520
this is,

1385
00:47:27,680 --> 00:47:27,860
you know,

1386
00:47:27,880 --> 00:47:28,540
I don't think so,

1387
00:47:28,700 --> 00:47:28,880
right?

1388
00:47:28,880 --> 00:47:29,820
This is just,

1389
00:47:29,960 --> 00:47:30,680
we just did this,

1390
00:47:30,740 --> 00:47:31,520
this one time.

1391
00:47:32,260 --> 00:47:33,460
So it really is a,

1392
00:47:33,480 --> 00:47:35,400
an intense collaboration and,

1393
00:47:35,580 --> 00:47:41,040
and the cookbook that comes out of it is designed to be useful to that organization,

1394
00:47:41,040 --> 00:47:41,640
right?

1395
00:47:41,680 --> 00:47:42,940
And their suite of applications.

1396
00:47:43,200 --> 00:47:43,340
Yeah.

1397
00:47:43,400 --> 00:47:47,080
And this is a second order derivative effect to the cookbook,

1398
00:47:47,420 --> 00:47:48,760
the CICD pipelines.

1399
00:47:49,320 --> 00:47:49,880
The,

1400
00:47:50,040 --> 00:47:52,680
we've seen customers then create centers of excellence,

1401
00:47:52,680 --> 00:47:53,440
right?

1402
00:47:53,540 --> 00:47:53,820
That,

1403
00:47:53,980 --> 00:47:58,780
and then create like a factory there where all the teams come through the,

1404
00:47:58,880 --> 00:48:00,720
factory and create hubs,

1405
00:48:01,120 --> 00:48:03,060
like almost like a hub and spoke model.

1406
00:48:03,460 --> 00:48:05,820
So once we see this wave of,

1407
00:48:05,820 --> 00:48:06,380
of,

1408
00:48:06,380 --> 00:48:11,680
of momentum getting generated after a successful engagement where other teams kind of build

1409
00:48:11,680 --> 00:48:12,480
on that success.

1410
00:48:12,640 --> 00:48:12,720
Well,

1411
00:48:12,740 --> 00:48:13,120
that's great.

1412
00:48:13,180 --> 00:48:13,300
Well,

1413
00:48:13,320 --> 00:48:14,220
I'm glad we had the,

1414
00:48:14,260 --> 00:48:16,620
the two of you on to give an overview of this.

1415
00:48:16,640 --> 00:48:17,120
It's like,

1416
00:48:17,180 --> 00:48:19,680
it can seem like a huge bundle of things,

1417
00:48:19,680 --> 00:48:22,160
but I think we condensed it down pretty well with y'all's help.

1418
00:48:22,580 --> 00:48:23,960
So before we leave,

1419
00:48:24,160 --> 00:48:24,920
you know,

1420
00:48:24,960 --> 00:48:28,600
if you could pick like one or two things to point people at,

1421
00:48:28,800 --> 00:48:29,100
if they,

1422
00:48:29,200 --> 00:48:30,960
if they're interested in more,

1423
00:48:31,400 --> 00:48:31,500
I,

1424
00:48:31,620 --> 00:48:31,780
you know,

1425
00:48:31,840 --> 00:48:32,580
whatever you might like,

1426
00:48:32,620 --> 00:48:34,580
whether it's technical or,

1427
00:48:34,580 --> 00:48:34,940
or,

1428
00:48:34,940 --> 00:48:37,140
or more meat wary or whatever,

1429
00:48:37,140 --> 00:48:37,580
like,

1430
00:48:37,600 --> 00:48:38,040
what do you think,

1431
00:48:38,160 --> 00:48:42,560
what do you think some good materials are when it comes to how people are doing app transformation

1432
00:48:42,560 --> 00:48:43,640
to dig into more?

1433
00:48:43,640 --> 00:48:44,000
Yeah.

1434
00:48:44,000 --> 00:48:44,020
Yeah.

1435
00:48:44,140 --> 00:48:47,120
There is pivotal.io slash replatforming.

1436
00:48:47,460 --> 00:48:48,220
You could,

1437
00:48:48,320 --> 00:48:53,560
you could head on there and kind of see what customers we have worked with.

1438
00:48:54,020 --> 00:48:54,500
What,

1439
00:48:54,640 --> 00:48:56,180
what are sort of the key outcomes?

1440
00:48:56,180 --> 00:49:02,840
See if you are into like single page or two page briefs or white papers or webinar links,

1441
00:49:02,840 --> 00:49:04,400
that's the place to kind of land.

1442
00:49:05,500 --> 00:49:07,440
Talk to your neighborhood,

1443
00:49:07,760 --> 00:49:10,480
pivotal platform architect or rep.

1444
00:49:10,620 --> 00:49:12,860
if you want more specific help,

1445
00:49:13,220 --> 00:49:13,600
we have,

1446
00:49:13,640 --> 00:49:15,000
we have done talks at,

1447
00:49:15,160 --> 00:49:15,780
I think SpringOne,

1448
00:49:15,900 --> 00:49:16,640
which you referenced,

1449
00:49:16,820 --> 00:49:17,060
Michael,

1450
00:49:17,340 --> 00:49:19,160
maybe we could put that in the show notes.

1451
00:49:20,320 --> 00:49:22,420
And then yeah,

1452
00:49:22,560 --> 00:49:25,880
overall we are very active in the community as well.

1453
00:49:26,700 --> 00:49:27,740
So yeah,

1454
00:49:27,800 --> 00:49:28,140
if you,

1455
00:49:28,140 --> 00:49:29,360
if you have any interest,

1456
00:49:29,580 --> 00:49:29,800
please,

1457
00:49:29,940 --> 00:49:30,540
please reach us,

1458
00:49:30,620 --> 00:49:32,200
please reach us to pivotly,

1459
00:49:32,240 --> 00:49:33,500
any of the pivotly channels.

1460
00:49:34,060 --> 00:49:35,600
We are more than,

1461
00:49:35,820 --> 00:49:43,180
we are more than eager to help you on your journey on an established and get that roadmap going for you.

1462
00:49:43,440 --> 00:49:43,640
For,

1463
00:49:43,820 --> 00:49:44,500
for me,

1464
00:49:44,720 --> 00:49:46,640
I was first starting,

1465
00:49:46,840 --> 00:49:47,760
you know,

1466
00:49:47,760 --> 00:49:50,300
my work with app transformation right before SpringOne,

1467
00:49:50,300 --> 00:49:50,940
in 2017.

1468
00:49:51,520 --> 00:49:53,620
And so going to the talks at SpringOne,

1469
00:49:53,640 --> 00:49:55,480
2017 was really helpful for me.

1470
00:49:56,080 --> 00:49:59,160
So that's kind of where I would say start because that's where I started.

1471
00:50:00,100 --> 00:50:03,520
But there are a lot of really interesting talks about,

1472
00:50:03,520 --> 00:50:04,740
you know,

1473
00:50:04,860 --> 00:50:05,860
carving up your application,

1474
00:50:06,120 --> 00:50:06,740
replatforming,

1475
00:50:07,360 --> 00:50:09,740
using some of the architectural patterns,

1476
00:50:09,840 --> 00:50:09,980
right?

1477
00:50:10,000 --> 00:50:12,720
With the Netflix OSS that,

1478
00:50:12,820 --> 00:50:14,400
that I think are solid and,

1479
00:50:14,440 --> 00:50:15,960
and I end up using every day.

1480
00:50:16,200 --> 00:50:16,300
Oh,

1481
00:50:16,340 --> 00:50:16,880
that sounds good.

1482
00:50:16,940 --> 00:50:17,060
Yeah.

1483
00:50:17,060 --> 00:50:18,940
I was just watching those this morning and thinking like,

1484
00:50:18,980 --> 00:50:19,180
man,

1485
00:50:19,240 --> 00:50:19,560
we have,

1486
00:50:20,120 --> 00:50:21,500
we put a lot of resources,

1487
00:50:21,760 --> 00:50:25,280
thankfully into posting recordings of sessions that we have,

1488
00:50:25,460 --> 00:50:26,060
which is nice.

1489
00:50:26,480 --> 00:50:26,780
We should,

1490
00:50:26,860 --> 00:50:28,220
we should calculate one year,

1491
00:50:28,420 --> 00:50:29,260
one year,

1492
00:50:29,380 --> 00:50:29,680
sometime,

1493
00:50:29,820 --> 00:50:31,500
the total number of hours we have out there.

1494
00:50:31,740 --> 00:50:33,280
I don't know what we do with that,

1495
00:50:33,480 --> 00:50:34,440
but it seems like,

1496
00:50:34,520 --> 00:50:37,400
that seems like the kind of thing you would have one slide with the number on it,

1497
00:50:37,400 --> 00:50:38,540
and you could post about it.

1498
00:50:38,800 --> 00:50:40,560
I'll put the interns on that this summer.

1499
00:50:40,560 --> 00:50:41,120
We'll be set.

1500
00:50:43,240 --> 00:50:44,100
There you go.

1501
00:50:44,640 --> 00:50:45,920
The army of interns.

1502
00:50:46,460 --> 00:50:46,800
Well,

1503
00:50:47,080 --> 00:50:48,040
you know,

1504
00:50:48,180 --> 00:50:49,540
if there's any of those interns listening,

1505
00:50:49,800 --> 00:50:53,640
and you're not aware of where you can find the back catalog of episodes,

1506
00:50:54,200 --> 00:50:57,500
if you're interested in pursuing other great episodes,

1507
00:50:57,500 --> 00:50:59,280
and maybe even not so great ones,

1508
00:50:59,340 --> 00:51:00,800
if you're just looking to fill your time,

1509
00:51:01,300 --> 00:51:02,560
of Pivotal Conversations,

1510
00:51:02,560 --> 00:51:06,180
you can go to soundcloud.com slash Pivotal Conversations,

1511
00:51:06,500 --> 00:51:08,720
and there's all sorts of episodes there,

1512
00:51:08,940 --> 00:51:10,500
and more or less every Thursday,

1513
00:51:10,660 --> 00:51:12,020
we keep referring to show notes.

1514
00:51:12,340 --> 00:51:16,740
We'll post those show notes at pivotal.io slash podcast,

1515
00:51:17,240 --> 00:51:22,100
and also I believe if you're interested in a kind of thorough overview

1516
00:51:22,100 --> 00:51:23,560
of all the replatforming,

1517
00:51:23,740 --> 00:51:24,820
aptX stuff we have,

1518
00:51:24,860 --> 00:51:28,160
you can also go to pivotal.io slash replatforming.

1519
00:51:28,420 --> 00:51:29,560
No hyphen in there,

1520
00:51:29,900 --> 00:51:31,060
just replatforming,

1521
00:51:31,640 --> 00:51:32,460
and with that,

1522
00:51:32,580 --> 00:51:33,760
thanks again to our guests,

1523
00:51:33,880 --> 00:51:35,160
and we'll see everyone next time.

1524
00:51:35,400 --> 00:51:35,800
Bye-bye.
