Transcript: Predictions and Reflections: One Year Anniversary of the How Many CTOs Does It Take? Podcast
0:00 Scott We will find a way to fit this into the patterns we already have,
0:03 Scott even though we think it's flipping everything up right now.
0:23 Brad Welcome, everybody,
0:24 Brad to another episode of the How Many CTOs Does It Take podcast.
0:27 Brad My name is Brad Hefta-Gaub, and my trusty co-host is,
0:32 Scott Scott Porad.
0:34 Scott How are you, my trusty co
0:35 Brad -host? I am doing fantastic.
0:37 Brad How are you doing?
0:38 Scott I'm doing good as well.
0:40 Scott We have an occasion to celebrate.
0:41 Brad I was going to say,
0:42 Brad did you know, did you know what today,
0:46 Brad the day that we're recording this podcast,
0:48 Brad is?
0:49 Scott is our birthday,
0:50 Brad It's our birthday.
0:52 Scott our podcast birthday.
0:53 Brad Our podcast birthday was exactly a year ago today on
0:58 Scott Happy February birthday to us.
0:59 Brad 18th, 2025 that we released the first episode of this little shindig we call a podcast.
1:06 Scott Yeah.
1:07 Scott It's been fun.
1:08 Brad It's been fun, hasn't it?
1:10 Scott Yeah, I guess so.
1:11 Scott What's happened in the last year?
1:12 Brad What so much has happened in the last year,
1:15 Brad hasn't it?
1:16 Scott I don't know. It hasn't been a lot. I can only think of one thing that's happened in the last year.
1:20 Brad Everything that's happened.
1:21 Scott Well, let's just recap it.
1:22 Scott We interviewed some people.
1:24 Brad Yes.
1:25 Scott Because we had some vexing questions of engineering management.
1:29 Brad Yes.
1:30 Brad Like the ball of mud.
1:31 Scott I came into this podcast,
1:33 Scott that was the most pressing thing on my mind was, what do we do about some of these problems like tech debt and balls, things like that.
1:43 Brad Yeah.
1:43 Scott And to be truthful, what I learned is I don't think anybody knows.
1:48 Brad Nobody knows how to solve that problem.
1:51 Scott I mean, we didn't interview everybody.
1:53 Brad Yeah.
1:53 Scott But we interviewed some smart people and talked to some smart people and it seems like I guess there's only one answer,
2:01 Scott which is just you put your head down and go to work and just refactor this stuff.
2:04 Scott There's no real secret to it.
2:06 Brad Yeah,
2:06 Brad I think that like that's that's what I feel like I I kind of take away from all the conversations we had in that regard is it's like lots of people have advice on how not to get to the ball of mud.
2:16 Scott Yeah.
2:17 Brad Right.
2:18 Brad It's there's nobody that has any advice on what to do.
2:20 Brad What to do if you unfortunately already have the ball of mud.
2:23 Scott Yeah.
2:24 Scott Now,
2:25 Scott you know that I'm in the business right now of trying to untangle a ball of mud.
2:28 Brad Yeah.
2:30 Scott And I have observed maybe that there is a role or a function that we don't have in our industry that we need.
2:38 Brad Tell me more.
2:39 Scott I'll just call it product manager.
2:40 Scott I'm not sure it's really product manager.
2:43 Scott So, you know, if you have a bunch of features you want to add to your product,
2:47 Scott you have product managers who go out there and interview the customers and the stakeholders and try to figure out.
2:52 Scott how to build it and work with designers and collaborate with engineers and ultimately in theory it ends up in a spec and an engineer goes and builds it right when you want to say refactor a system because it's you know doesn't work well or brittle or whatever that whole part that important work of like okay what exactly are the problems what are the possible solutions let's consider them etc etc the engineers just kind of do it
3:18 Scott or the engineering managers or whomever people just kind of do it but
3:21 Brad Yeah.
3:22 Scott it's takes time and energy and we might be better at unwinding these balls of mud if we had people who specialize in that
3:31 Brad Yeah.
3:31 Scott I suppose it could be architects type architect types,
3:36 Scott right?
3:37 Scott But there's also, you know, product managers bring with them sort of a, at least in our industry, sort of a project management skill set also to
3:44 Brad Yeah.
3:44 Scott sort of shepherd something along.
3:46 Scott And that's not something that often our engineering architect types of.
3:51 Brad I'm getting two strong reactions from what you're saying here.
3:55 Scott Tingly?
3:56 Scott You're getting tingly?
3:56 Brad Yeah, I'm getting some tingling. So the first one is.
3:58 Brad One is we just had one of our one of our posts that are on our social media literally today just kind of went a little viral and it was this post where you and I was from a couple episodes ago where we were talking about interviewing for engineers in the age of AI and
4:13 Scott Yeah.
4:14 Brad and the clip was basically kind of you and I talking about how like really being able to untangle vague business problems and then.
4:22 Brad You know, kind of demonstrating your ability as an engineer to to to understand a vague business problem and then turn it into actionable steps.
4:29 Brad That Yeah. was kind of what you and I were talking about in that clip.
4:32 Brad And there was a it went viral with a bunch of a couple of different people basically kind of reacting with,
4:38 Brad well,
4:39 Brad my my product managers can't even do that. They can't even untangle vague business problems,
4:44 Brad you
4:45 Scott Yeah.
4:45 Brad know, and so I'm just getting this.
4:48 Brad this tingling feeling about you kind of talking about like how there's this gap there that like kind of really being good at understanding business problems and being able to kind of like capture them and in my own like fractional CTO experience like I run into this all the time right like I you know got multiple clients that I've either you know engaged with or talked to where their problems are almost always like
5:13 Brad Oh, I have a, you know, the founder visionary CEO that's like, I have a vision for what I want, but then they struggle at kind of like putting it down on paper.
5:21 Brad And then if you can't put it down on paper in some form that then can be digested by engineers,
5:26 Brad then of course what the engineers are going to build is you're not going to be happy with it.
5:29 Brad You know, you're going to be dissatisfied.
5:31 Brad And so like, I think there's a real, that's, that's a real thing.
5:35 Scott I want to go into that, but I want to clarify something I said,
5:38 Scott which is to me, it's actually more on the things that don't have a business or they have business impact.
5:45 Scott Let me give a concrete example.
5:47 Scott This is the best one I can think of at the moment. We are currently refactoring our authentication system.
5:52 Brad Yep.
5:53 Scott classic company that's 15 years old we have a homegrown authentication system now there are off-the-shelf services we can use and we're going to switch right and so to get from a to b there are a number of steps you got to go through to get there we have four different customer types at TaskRabbit so we have to think about each of their use cases and we have to build it with the new system we have to migrate people over so on and so forth
6:19 Scott but when we're done nothing will really be different than what we have now right
6:23 Brad Yep. Yep.
6:24 Scott to the user that should be it'll appear a little bit different because it's it's gonna but like conceptually like it's still
6:30 Brad In fact, if it acts different,
6:32 Brad it almost is a problem.
6:34 Scott That's right.
6:35 Brad Yeah,
6:35 Scott That's
6:35 Brad you probably
6:35 Scott right.
6:35 Brad broke something if it acts different.
6:37 Scott Yeah,
6:37 Scott it's still going to be, you know, username,
6:39 Scott password,
6:39 Scott text message with a code kind of situation, right?
6:42 Scott So, but underneath the covers, there's going to be, it's going to be more flexible.
6:48 Scott So, and then what I was observing today,
6:50 Scott I was looking at this plan and I noticed some features creeped in there.
6:53 Scott We want to add social login,
6:55 Scott we want to add this and that.
6:56 Scott But the main point is forget the stuff that creeped in there.
7:00 Scott Just going and saying, well, wait a second, what is all the stuff that our auth system does now? What are the requirements for figuring that out and then making the plan forward and then breaking that into milestones and deliverables? That's real work and
7:11 Brad Yeah.
7:11 Scott it's a soft skill.
7:12 Scott It requires some technical skill,
7:16 Scott but it also requires the skill of really being able to.
7:20 Scott project manage and to some degree product manage so
7:22 Brad I will say the second tingly feeling that I had that I mentioned I had multiple is this is I remember we could our producer can find the you know and link to the episode where we talked about this but I remember us having this conversation where one of the things I said to you was I think that the challenge of the ball of mud is so many people don't know all the functionality that's in the ball of mud.
7:44 Brad and and
7:45 Scott Yes, that's
7:46 Brad so like that's one of the reasons we're all afraid to sort of refactor is we're afraid that we're going to miss out on something that we didn't realize was a feature that was in there and and
7:57 Scott right.
7:57 Brad potentially there are a bunch of features that are in there that literally nobody uses and don't matter anymore but you're just you kind of get this paralysis where you don't know or you don't have you don't know if people are using it or worse you don't even know that it
8:10 Brad know that it exists since you're just afraid of the stuff the unknown that is in there that's 10 years old that how could you nobody remembers it but somebody's surely using it
8:20 Scott To add on to that, here's a way that we do ourselves a disservice.
8:24 Scott As engineers,
8:26 Scott we say, oh, authentication sucks.
8:30 Brad Right.
8:30 Scott it's terrible to work with okay what sucks about it oh it's just it's it's garbage okay um what specifically about it is garbage well it doesn't follow any standards oh okay now we're now we're cooking with gas right so i think we do ourselves a disservice of engineers of not being
8:50 Scott actually descriptive of the real problems right and what i've observed is often when you get to the real problems when you get from it sucks to it's not standards-based then you can get into oh now we can solve this right now we know we can get to a solution for this because we can oh we need a standards-based thing okay let's let's go do that uh
9:10 Brad Yeah,
9:10 Brad totally.
9:11 Scott i want to go back to what you're saying about that thing that went viral i played
9:16 Scott So the first time yesterday was something that GitHub has published called spec kit.
9:21 Brad Yeah.
9:22 Scott It's
9:22 Brad Yeah.
9:23 Scott labeled spec kit.
9:24 Brad Yeah, it's one of the SDD things out there,
9:26 Brad the software or spec driven development things out there.
9:30 Scott Yep.
9:30 Brad Spec is
9:30 Scott It's
9:30 Brad one of one.
9:30 Scott one of the SDD things out there.
9:32 Brad Yeah.
9:32 Scott Essentially, if I was to interpret what it's doing, it
9:36 Brad Hold
9:36 Scott is
9:36 Brad on a second. Wait a second. I just want to make sure we're clear.
9:39 Brad We're 15 minutes into the conversation and
9:42 Scott Yeah.
9:42 Brad we're about to start talking about.
9:44 Scott The second theme from this year.
9:48 Scott The second theme from this year for me, Brad,
9:50 Scott I think you were ahead of me on this, as I would say a year ago,
9:53 Scott February,
9:54 Scott whatever,
9:55 Scott a year ago,
9:55 Scott I was still in the, say I was interesting,
9:59 Scott let's see what it does.
10:01 Scott i don't know my it's unclear how much of an impact it's going to have maybe
10:06 Brad Yeah.
10:06 Scott we'll have some i mean it'll definitely make a difference but
10:09 Brad Yeah.
10:09 Scott like how much and i think i have come to now february later oh boy not sure we're gonna have i'm not sure this industry is going to be here it'll be here but like i'm not sure what it's going to look like in five years like this is this is
10:26 Scott I'm going to use two words kind of with a slash crazy cool.
10:30 Scott Yeah.
10:30 Scott it's wild what's happening out there right now that's where i've come to yeah
10:33 Brad But you know what's interesting is we had remember like in one of our early episodes, we had Michael Natkin on and what he basically described and he had a blog post that he he wrote that kind of went like this was like more than a year ago.
10:46 Brad He had this blog post that kind of went a little viral about how he was using prompting and what he was doing was was now is what people call STD, but he didn't call it that.
10:55 Brad right but he basically had you know he had this template of like hey i'm building this i'm building the following thing here's the things create for me a task list in the task list make sure that you have clear acceptance criteria for each task and so this was a set of these were essentially he had figured this out i don't think he was unique in this but he'd kind of figured out this model of like overly prescript make make sure that before the agents try to write any code at all
11:21 Brad at all, they're really focused on the high quality spec of what success looks like and what the acceptance criteria are.
11:30 Scott Well,
11:31 Scott it goes right back to that comment that you were saying on that post.
11:34 Scott Even the product managers don't do this.
11:36 Brad Yeah.
11:36 Scott But when the robots are not there in the room with you or on Slack with you and can't ask you, what did you mean by this or use their judgment to say, oh, I think I knew what he meant by.
11:47 Scott date picker whatever
11:48 Brad Yeah, exactly.
11:48 Scott um i'll just grab this date picker library you have to be very specific
11:54 Brad Yeah.
11:54 Brad Well,
11:55 Brad it's interesting,
11:55 Brad too.
11:55 Brad I've seen a couple of posts recently.
11:57 Brad So one,
11:58 Brad STD is obviously the big trend lately.
12:01 Brad And what I think is interesting is like as we look back on the year,
12:05 Brad I think that the themes around how do you use AI effectively and the speed with which.
12:12 Brad The teams that are using it effectively are starting to get results is very much driving around this notion of call it SDD or call it like plan mode or call it like, you know, clear.
12:29 Brad clear outcome-based instructions to the agent.
12:31 Brad That's really what this is about.
12:33 Scott Mm
12:33 Brad And,
12:33 Scott -hmm.
12:34 Brad you know, as I have said, I'm a big believer in, you know, like I think the challenges of the teams that are going to struggle with AI or the ones that are going to succeed with AI are really going to be the ones that have,
12:48 Brad the ones that succeed are going to be the ones that have infrastructure that would allow human developers.
12:53 Brad to write 3000 lines of new code every day, right?
12:57 Scott Mm
12:57 Brad Like, and if
12:57 Scott hmm.
12:58 Brad you, if you can't handle a human developer writing,
13:01 Brad you know, 10,
13:02 Brad 300 line pull requests a day, then you're not going to be able to handle what true agentic programming is capable of doing.
13:11 Scott Yeah,
13:11 Scott we're going to see another fork in the road, too, though.
13:14 Scott I'm seeing it already,
13:15 Scott which is the work that our team is doing where it's essentially greenfield, just tremendous AI productivity.
13:22 Brad Yeah.
13:23 Scott And then the work that's the brownfield work where they're having to go into the existing system.
13:28 Scott We haven't got there yet.
13:30 Scott One of our similar people right now are working on trying to create the context and rules for our existing environment. Can we...
13:38 Scott extract from the existing system what these things are but that's going to be a real k-shape also to
13:44 Brad Yeah.
13:45 Scott use your expression which is company it's it's actually in that i wonder if it's going to change this dynamic so i've been asked so many times in my career when things take too long would it be better to start from scratch
13:56 Scott And
13:56 Brad I
13:56 Scott the answer
13:56 Brad think
13:57 Scott is
13:57 Brad the
13:57 Scott always no.
13:57 Brad answer that answer up till now has been no, the answer going forward may become yes.
14:03 Brad So
14:03 Scott Maybe
14:03 Brad yeah,
14:04 Scott tell me yes.
14:04 Brad so so again,
14:06 Brad like if we look back on the last year of this podcast,
14:09 Brad like
14:10 Brad all of the technical debt um human systems problems like we talk a lot about that and then we've talked about it in the context of this radical transformation with ai yeah
14:21 Scott Yeah,
14:22 Scott I would say the thing that has finally become clear to me in the last year is it is going to completely transform this industry.
14:32 Scott Now, here's something interesting.
14:34 Scott You know, I've worked in a bunch of startups,
14:36 Scott Brad,
14:36 Scott and I've worked every and I've always worked in startups.
14:41 Scott I'm not in a startup right now, but I've mostly worked in startups my career.
14:44 Scott And usually when you're doing a startup type of thing,
14:48 Scott it's something which is new. Right.
14:52 Scott I was early working on gig economy.
14:54 Scott I was early working on social media,
14:56 Scott user-generated content.
14:57 Scott I was early in e-commerce,
14:58 Scott all those kinds of things.
14:59 Scott And at the time you're doing it, you think it's very novel.
15:04 Scott But what happens over time, and I've seen this happen over and over again,
15:07 Scott is each of these things starts to get fit into an existing pattern.
15:12 Scott Right.
15:13 Scott And it turns out, oh, they're not all that we thought they were special,
15:16 Scott but it turns out they're not all that different from a bunch of other things that happened before. Right.
15:21 Brad Yeah.
15:21 Scott I mean, a gig economy marketplace, it's still a marketplace. It's still essentially like commerce on one end and fulfillment on the other end. Right.
15:29 Brad Yep.
15:29 Scott User generated content, social media. It's basically just an advertising business. You're selling impressions and engagement and things like that. Right. And so.
15:37 Scott The thought that comes to my mind lately is we think our industry is being transformed.
15:45 Scott But is it really?
15:47 Scott Or are we going to look back and find a way to fit this into all the
15:51 Brad Right.
15:51 Scott patterns and practices?
15:53 Scott Maybe this is what you were touching on a minute ago with the 3000s lines of code.
15:57 Scott Are we going to say, no, it's not that different. We just need to fit it into all the things organically learned as an industry.
16:04 Scott I mean, that's what,
16:04 Scott here's what I'm going to get at.
16:06 Scott Okay,
16:06 Scott we're talking about the year in review.
16:07 Scott I'm going to talk about the year ahead for a second.
16:09 Scott Here's what we're going to learn over the next year.
16:11 Scott This is my prediction.
16:12 Scott It predicts the show.
16:13 Scott My prediction is in a year from now,
16:15 Scott it will make a big difference, but we will learn it's still going to fit into our industry,
16:22 Scott right?
16:23 Scott All the things that we've organically learned over the last 75 years.
16:27 Scott not you and me 75 years but as an industry 75 years this isn't something different it's just the next version of it and it's probably a good frame for people to be thinking about it you've been talking you talked about it in terms of the engineer who wrote 3 000 lines of code or i think were we talking about
16:43 Scott ALDC recently.
16:45 Brad Oh, we haven't talked about that yet.
16:47 Scott We haven't talked about that yet. We talked about that on our future podcast.
16:50 Brad Yeah, we're going to talk about that on a future podcast.
16:52 Brad We'll have to hold off on that.
16:55 Brad Yeah.
16:55 Scott tease teaser for everybody prediction this year there will be a thing called ALDC out there in the world so my point is we will find a way to fit this into the patterns we already have even though we think it's flipping everything up right now
17:12 Brad Yeah, totally. And you know what's interesting is so I literally just got forwarded a new YouTube video for I don't know if you ever watch Nate Jones.
17:23 Brad He's a actually Seattle guy and he does like AI news and kind of like the latest in AI coding and his his podcast from today that came out just today was his video was about like the five levels of using a AI in coding.
17:38 Brad you know and he kind of and he kind of talks about like the notion of like level one is just like you know fancy autocomplete right and you know and then level two is much more like you're kind of giving more
17:53 Brad you know almost like full tasks and letting it write some code level three is treating it like a junior engineer and you're kind of managing it uh level four kind of goes up from that um but then level and so i think that like where i'm seeing like and basically this guy's making the case that like
18:11 Brad Most developers aren't getting past level two, right?
18:16 Brad The teams that are seeing high,
18:18 Brad high performance,
18:18 Brad they're more at level three.
18:20 Brad But there's very few, there's just a couple firms out there that are operating at what he describes level five,
18:28 Brad which is lights out software development factory,
18:31 Brad where the humans are only giving specifications and.
18:38 Brad verifying results and they're
18:40 Scott Mm
18:40 Brad not
18:40 Scott -hmm.
18:40 Brad writing the code and they're not reviewing the code and they're not and and you know they're they and those that that notion of that lights out software factory that works only if the owners of the factory you know the directors of the factory have a clear understanding of what a software factory looks like
19:04 Scott Mm-hmm.
19:04 Brad And so to your point,
19:06 Brad like, I think you're right.
19:07 Brad I think that what we'll see is this is kind of what I've been talking about this K-shaped economy,
19:12 Brad like the people that really understand how to make a software factory will be able to have a software factory that is lights out, operated by robots and a handful of a handful,
19:25 Brad very small number,
19:26 Brad you know, less than three, three or less.
19:30 Brad managers,
19:31 Brad but it will work only in the context that those three managers really do understand what it means to have a software factory.
19:41 Brad And had they had a thousand human beings working for them, they would have to solve the problems of how do you have a software factory with a thousand engineers writing code 24-7 around the clock.
19:52 Scott First of all, I love that expression lights out software factory.
19:55 Scott That's cool.
19:55 Scott Okay,
19:56 Scott so here's a question I have about that.
19:58 Scott If you had a thousand humans
19:59 Scott There would be some sort of enterprise architecture design function which said, okay, you're going to work on this piece of the system and you're going to work on this piece of the system. And here's how all the pieces of the system are going to work together to contribute to this whole overall thing.
20:17 Scott In the Lights Out software factory,
20:19 Scott does that function exist or do we just let the robots figure out the whole thing?
20:25 Brad That's a great question.
20:27 Brad And I haven't watched the whole video yet because I was watching it right before you started this call.
20:33 Scott Okay, I'm going to propose the answer to that.
20:35 Brad Yeah,
20:35 Brad I would love to hear what you think the answer to that question is.
20:38 Scott If you want a ball of mud,
20:40 Scott then you let the robots do it.
20:43 Scott Think of it. If you have a thousand engineers and no overall architecture and just said.
20:52 Scott So here's your code base,
20:53 Scott go build this thing.
20:54 Scott You'd end up with a ball of mud.
20:56 Scott And if you said, okay, well, we're going to build some sort of distributed service oriented kind of thing.
21:04 Scott And okay,
21:05 Scott you 20 agents over here, I want you to go build this piece and you're going to talk to these other parts.
21:10 Scott Here's how you're going to communicate to these other parts. And so there does need to be some layer on top now.
21:17 Scott It might still be a human instructing an AI to design that layer.
21:21 Brad Yeah,
21:21 Scott But I think there is going to be layer or layers atop those thousand robots so that you don't end up with a giant ball of mud.
21:32 Brad I think I agree with half of what you're saying and disagree with the other half.
21:36 Brad So
21:36 Scott Okay.
21:36 Brad the part that I agree with is that if you don't have a clear architecture.
21:43 Brad then you're gonna end up with a ball of mud like i that that feels like
21:47 Brad very i feel like it'd be hard for anybody to argue with that point right you and i kind of played around with kind of dabbling around that when we a couple episodes ago we talked about the question of like does it matter if it's a ball of mud if the agents are able to write the code and understand it does it matter right and i kind of said well it still definitely matters because the humans need to read it right so i'm now taking the stance that well if if level five
22:13 Brad If lights out software factory doesn't have humans reading the code anymore,
22:18 Brad then,
22:18 Brad okay,
22:20 Brad does the ball of mud matter?
22:22 Brad I think the ball of mud still matters.
22:24 Brad I think you cannot,
22:24 Brad you don't want a ball of mud. If your factory is producing ball of mud,
22:27 Brad I think that's a bad thing.
22:28 Brad So I agree with that statement. You need architecture to not have a ball of mud.
22:33 Brad The part that I maybe disagree with you is, or and maybe you maybe you won't argue with me too much on this because you did hint at maybe the architecture architecture is is developed by the AI with the guidance of the of the humans.
22:46 Scott Yeah.
22:47 Brad And so I think that that's what.
22:51 Brad I think the answer is the answer here is that you need to make sure your specification truly encompasses everything that matters for your software to come out the other end to match your business needs.
23:06 Brad And so a good example of this would be if you fail to include in your specification the scale and the latency and the,
23:16 Brad you know.
23:17 Brad If you don't say scale and latency in your specification,
23:21 Brad then the AI will not bother to make it scalable with low latency.
23:26 Scott Right.
23:26 Brad Right.
23:27 Brad And,
23:28 Brad you know, and by the way, as we kind of look back on the year in review,
23:32 Brad right,
23:32 Brad we had a great conversation with Greg Conklin where he was talking about like his experiences at large scale companies and how if he had it all to do over again, like what were the things that he would want to make sure.
23:44 Brad Want to make sure he did in the early,
23:45 Brad early days of a venture.
23:47 Brad And one of those things that he called out on was make sure you're really clear with your engineering team, whether it's the robots or the humans, make sure you're really clear about what your non-negotiables are.
24:00 Brad And he gave the example of like,
24:02 Brad I think this was when he was at.
24:06 Brad Groupon or something like that where you know kind of they they they had some kind of a performance they were dealing with some performance problem and like the the senior architects were like well wait a second if if I'd known that like latency was a hard requirement I would never have designed it this way
24:23 Scott Right, right.
24:23 Brad Right?
24:24 Brad I didn't know that was one of the requirements,
24:26 Brad you know?
24:27 Scott Well,
24:27 Scott I think what I take from that is there is always a design function and an implementation function,
24:35 Scott right?
24:36 Scott And often that happens in the same brain.
24:39 Scott But as you get more and more coders, there are human coders or robot coders working on it.
24:47 Scott You still have to have both of those functions. And I think where you end up with the ball of mud is largely when you don't have a design function or when your design function is weak.
24:57 Brad Or if you're, I agree with that, and I would add to that a variant of your design function is weak is it's underspecified, right?
25:07 Brad And if it's underspecified, then that means the engineer has to fill in the underspecified components.
25:13 Brad And if that is a human engineer filling in the underspecified components,
25:18 Brad then maybe they're going to make pattern choices that result in a ball of mud. If it's a...
25:26 Brad robot that's filling in the underspecified components we we get to blame it for hallucinating when in fact it was just filling in the underspecified components yeah
25:36 Scott I've hallucinated before too.
25:38 Scott Okay,
25:38 Brad that's
25:38 Scott so you're actually giving me, I just had an insight that I never quite had before.
25:43 Scott And maybe that's because I'm not that bright, but you talked about how, you know, balls of mud come when things are underspecified.
25:52 Scott And another reason balls of mud come is when there is time pressure for engineers and they choose to take anti-patterns in order to get it done.
26:01 Scott In a world where effectively the time to produce code becomes zero or something approaching
26:07 Brad Because
26:07 Scott it,
26:07 Brad we have a lights out software factory.
26:10 Scott yeah,
26:10 Scott there is a project happening at our work right now, which I have not validated this yet,
26:15 Scott but an engineer using Spectrum and development.
26:19 Scott says he did a thing that was scheduled to take four months in three days and
26:25 Brad Yeah.
26:25 Scott he was about to hand it off to some other people and he was like he said i'm not going to do that actually i'm going to it only took three days i'm going to start over and go sit down and pair with those people we can all do it together because
26:37 Brad Yeah.
26:37 Scott three days is basically it's going to take us six days now it's still whatever
26:41 Brad Totally.
26:41 Scott 15
26:42 Brad I
26:42 Scott weeks
26:42 Brad think that's
26:42 Scott faster
26:42 Brad the... By
26:43 Scott than we thought
26:43 Brad the way.
26:44 Brad Kudos to that. That sounds like a fantastic idea.
26:47 Brad Like,
26:47 Scott Yeah.
26:47 Brad I mean, the benefit of not just shipping the three days, but then using that as the pair programming learning experience for the people that would have tried to do it in four months.
26:57 Scott Yep.
26:57 Brad Man,
26:58 Brad that's gold.
26:59 Scott And I believe he spent two of those three days getting the spec right,
27:03 Brad Of course.
27:04 Scott interacting,
27:05 Scott using spec kit,
27:06 Scott interacting with it to define that.
27:07 Scott So my point is, if the cost of code becomes basically zero,
27:13 Scott if suddenly the anti-pattern of I was being pushed to get this done faster, so I hacked it together,
27:21 Scott and now I've got, say,
27:23 Scott dependencies between two parts of my system.
27:25 Scott systems that shouldn't exist any longer,
27:27 Scott that goes away.
27:29 Brad Yeah.
27:30 Scott That's kind of interesting.
27:32 Scott When we think about tech debt and balls of mud,
27:35 Scott one potentially something we get from AI is one of the biggest problems we face as an engineering industry goes away.
27:46 Scott the pressure and there's still gonna be impatience and people want to get stuff done faster i'm sure three days wasn't fast enough for the stakeholder but the fact is if it's three days or four days it's so much faster than it was
27:58 Brad I'm seeing this over and over and over again with the teams that I work with. I have like visionary founder type people that are like,
28:05 Brad I want and they invent a thing.
28:07 Brad Right.
28:07 Scott Mm
28:08 Brad Like I need the following.
28:09 Brad And like the I mean, Scott,
28:12 Brad you and I have talked like so many times we've talked about this challenge of the estimate.
28:16 Brad Right.
28:17 Brad And it's like
28:18 Scott -hmm.
28:18 Brad the golden triangle. Right. Like quality,
28:20 Brad cost,
28:21 Brad you know, features.
28:23 Brad Right. And I am now seeing that the ideators cannot keep up with the ability for.
28:32 Brad a well-trained engineer using AI to implement their ideas.
28:36 Brad I have this, like all the teams I'm working with, they are cranking out functionality that the ideators thought would be like hard, right?
28:45 Scott Yeah.
28:45 Brad And that maybe even a year ago would have taken the team a sprint to do something.
28:52 Brad Now it's one developer is doing that same level of effort.
28:57 Brad in a day and they can get 10 of the one developer can now get 10 of those scale things done.
29:03 Brad you know uh in in a sprint where it used to be the whole team would take a sprint to do it and you know it's funny you yeah and you and it's funny again like harkening back to previous episodes right i remember the time where you and i talked about this where it's like if you just get more and more efficient then if you know if you're using story points to measure like you know you get more and more story points done it's just like well
29:27 Brad isn't it really just a case that the story points kind of scale to be bigger and bigger concepts like it's a it's a it's like a gas it's going to fill to it's going to fill the space allotted to it like the faster we can build stuff the more stuff people are going to demand that we build yeah
29:42 Scott This reminds me of kind of an old story, but I'll cut to the chase and then I'll tell a story.
29:48 Scott The estimate for everything is going to be two weeks.
29:52 Scott Okay.
29:53 Scott So long time ago, my first engineering manager job,
29:56 Scott I worked on the front end of a website.
29:59 Scott I worked on drugstore.com, which ultimately became Walgreens.com.
30:03 Scott People were always coming to me asking me for stuff.
30:06 Scott And after I did this job for a while, this is my first engineering manager job, but after I did it for a while, I think I just started always giving the answer two weeks because
30:13 Brad Ha, ha, ha, ha.
30:14 Scott people wouldn't come with a spec or anything.
30:17 Scott They'd just be like, how long will it take to do this?
30:19 Scott do this thing and I'll be like I don't know two weeks and then finally I give an answer two weeks to a woman who was a good work friend at the time I haven't talked to her in a long time Julie Johnston she says hey every time I come in here and ask you for something you say two weeks I think you're bullshitting me and I said look Julie nothing takes a day and nothing around here really ever takes more than a month
30:42 Scott So if you're going to come in here with a sentence or a paragraph of what you want,
30:46 Scott two weeks is a good enough answer for you, right?
30:48 Scott Like it's close enough. It might take us three days. It might take us 17 days.
30:51 Scott I don't know.
30:53 Scott Two weeks is good enough. And so we're approaching this world where everything's going to be two weeks. Literally,
30:58 Scott it's going to be less than two weeks. It's going to be one week.
31:00 Brad well yeah okay i have two two uh riffs
31:03 Scott One day.
31:04 Brad two riffs off that first first riff is i remember
31:07 Brad When I was first an engineering manager,
31:10 Brad I had a mentor of mine pull me aside and he goes,
31:14 Brad whenever a developer gives you an estimate,
31:16 Brad if
31:17 Scott Mm-hmm.
31:17 Brad that estimate includes the phoneme two,
31:21 Brad then it's a bullshit estimate. And I'm like, what do you mean? He goes,
31:25 Brad yeah, two weeks,
31:26 Brad two days,
31:27 Brad I'll have it to you tomorrow.
31:30 Brad I'll be done today.
31:32 Brad They're all bullshit.
31:36 Scott That's good.
31:36 Scott That's good.
31:38 Brad well the other thing that's funny is that that i have noticed that some of the ai tools um you know like uh plan mode with cursor or plan mode with anti-gravity will will sometimes the plan mode includes like if you give it a big enough thing it'll
31:53 Scott It'll give you an estimate.
31:54 Brad give you estimates and it's so ridiculous because the estimates literally will say things like oh phase one is one to two days and it's like i click the fucking build button
32:04 Brad And it's done in an hour,
32:05 Brad so it's like its estimates are so off base,
32:08 Brad you know.
32:09 Scott It's true.
32:10 Scott It would be nice if it estimated how long this would ordinarily take.
32:14 Scott So, well, this comes back to the SDD thing for a second, which is if the cost of developing the software is zero,
32:21 Scott the pressure is on the spec.
32:25 Brad All the pressure should be on the spec.
32:26 Scott You know, then this begs a question,
32:28 Scott which is if you've got this role in your organization called product manager whose job is to specify the thing that the engineer builds,
32:37 Scott like how is that going to work? Are they just going to sit with the STD bot and clarify their spec that way? Do they need the engineer even involved?
32:45 Scott Or like, what's going to happen there?
32:47 Brad I don't know if you and I talked about this already,
32:49 Brad but I feel like one of the sort of like memes that I'm starting to hear more and more of is essentially all these jobs start to morph into a job that is very close to being like a product manager,
33:02 Brad right?
33:03 Scott Yes.
33:03 Brad So product, like a product manager using a high quality,
33:08 Brad you know.
33:10 Brad software lights out software factory methodology is indistinguishable from an engineer using a lights out software factory methodology
33:19 Scott That's fair.
33:21 Scott One of the engineering managers at our company, Tom Osowski,
33:24 Scott who I think maybe you've talked to before,
33:25 Scott that's what he's been playing with.
33:27 Scott He took essentially,
33:29 Scott you know, we use a system called augment,
33:31 Scott which is like cursor to cursor.
33:33 Scott He plugged it into Jira.
33:35 Scott He plugged it into Confluence. He plugged it into Google Drive and a bunch of other stuff,
33:40 Scott you know, non-technical system,
33:42 Scott GitHub,
33:43 Scott of course, with our code.
33:44 Scott And he's been marveling at like, what does this mean for the job lines,
33:50 Scott for the lines that we have, the roles and responsibilities, because now I can go, he did something interesting. He said, look,
33:57 Scott find our company goals for this year.
34:00 Scott and tell
34:00 Brad Yeah,
34:00 Scott me the
34:00 Brad yeah
34:01 Scott top five tickets that my team should be working on right and I don't know if the answer was exactly right it was close enough and
34:09 Scott Then that's pretty interesting if the AI can do the prioritization for you
34:14 Brad I think, yeah,
34:15 Brad for sure.
34:15 Brad And like, how many times do you think you could sit down with like a visionary product CEO type person where, you know, you'd have those conversations around like,
34:24 Brad oh, what do we trade off for this new feature that you just came up with that you want to build?
34:29 Brad And it's like,
34:30 Brad hey,
34:30 Brad dude, you got to prioritize this stuff.
34:32 Brad Like you need to someone needs to prioritize this stuff.
34:35 Brad Well, guess what?
34:37 Brad The AI probably is actually better at prioritizing a gigantic bucket of tasks than the average human is because the human doesn't have the patience, right?
34:46 Brad Like every time you ever go to a triage or prioritization meeting,
34:50 Brad right?
34:50 Brad Like everybody burns out in the first, you know, 20 minutes of that because humans struggle at such a hard, it's so hard for humans to like look at giant lists of things and to think rationally.
35:02 Brad about how to prioritize them.
35:05 Scott Well, yes.
35:06 Scott And I mean, you just.
35:10 Scott triggered me a little bit, not really triggered me, but I am trying to
35:13 Brad This is one of the most triggering things that a CTO can remember and think about is how many times they've been in prioritization meetings where the product owners or the CEO visionary is just unable to prioritize.
35:27 Brad Everything's the top priority.
35:30 Scott Well, yeah, it's interesting.
35:32 Scott I would say the trigger is actually two ways.
35:34 Scott The immediate reaction was,
35:36 Scott I'm actually doing this bit of work right now to try and convey some priorities for this big project we're working on and just expressing it in a succinct way so that people can digest it. But also.
35:52 Scott um with enough details that it's meaningful to them i don't think i found the answer yet but it's very difficult right because um we have about probably eight or ten work streams on this project and each work stream is a roadmap of its own with a year you know a year-long roadmap on each work stream and um how you end up with this huge huge thing if you do it in a gantt chart it's massive and it's just very confusing
36:17 Scott But here's the other place.
36:18 Scott This is very cynical.
36:20 Scott And if the other people who I work with at TaskRabbit are listening,
36:24 Scott I'm just I'm making this up for entertainment purposes.
36:27 Scott I want them to know that when I used to get very worked up about those prioritization conversations earlier in my career.
36:35 Scott And now I do not at all.
36:39 Scott because i view it as like this is great you guys can sit here and discuss how many prior ones and prior zeros you want but the fact is we only have so much capacity and
36:49 Brad Yep.
36:49 Scott notwithstanding the ai conversation that we might be growing our capacity we've only got so much capacity so you can debate this till the cows come home but at a certain point
36:59 Scott So there's the next project up and you're going to have to pick what it is.
37:02 Brad Yep.
37:02 Scott And so maybe I'm cynical,
37:06 Scott but I've just found that trying to trying to getting emotionally invested in that prioritization conversation is not ever proven successful to me because,
37:14 Scott like you said, people have a hard time with it.
37:16 Scott Now,
37:17 Scott I enjoy and happy to contribute to it on like a let's think about strategically,
37:22 Scott where do we want to be investing in all those things.
37:24 Scott But mentally,
37:25 Scott I sort of treat it more like a Kanban board,
37:27 Scott which is like this is great that you want to do all this stuff. But at a certain point, some team or some project is going to finish and then we're going to choose the next one to start working on.
37:35 Scott And that's the best we can do.
37:37 Brad Yeah.
37:38 Scott And that's I guess that's my advice to all the CTOs out there is like, don't get too worked up because the reality of this comes back to sort of what Zuckerberg says about code wins arguments.
37:47 Scott It's not exactly the same spirit of it. But at the end of the day, someone's just going to.
37:50 Scott It's going to start coding and that's the point at which you have to decide the next P1.
37:54 Brad I had a I had a early,
37:56 Brad early in my career,
37:57 Brad I had a when I was first an engineering manager, I had a mentor that effectively said something like that to me and it was he was a business owner.
38:04 Brad So it was it was good to hear this from a business owner. It wasn't like he was an engineer that was like saying this,
38:08 Brad but he basically was like,
38:09 Brad Brad,
38:10 Brad like just don't worry about it. The engineers work for you.
38:13 Brad like they're
38:14 Scott The whole
38:15 Brad gonna follow
38:15 Scott session.
38:15 Brad you you know they're gonna follow you so you know help out collaborate but don't get so worked up about you know this or that
38:26 Scott Well, I think the thing you said about, I want to harp on that word collaborate for a second. I do think it's important to have a plan over time.
38:33 Scott I personally,
38:34 Scott I believe that a Gantt chart is the best way to express that plan.
38:39 Scott And I think that's actually really important. And I think it's important to recognize you can change that plan at any time you want.
38:45 Scott There's a cost of changing it. And if you're doing.
38:48 Scott if you've broken down your projects into small deliverables the cost gets smaller and smaller
38:52 Scott so I don't think there are people who want to go the extreme other way and say well we're just going to do Kanban we're just going to pull the next ticket off the board no I think you have to have a plan businesses need to know what to expect is coming right
39:04 Brad Yep, but for sure.
39:05 Scott I've never been in a place where we haven't tried to plan more than we could actually do
39:10 Scott And I used to get really wound up about that.
39:13 Brad Well,
39:13 Scott So,
39:13 Brad and I also think
39:14 Scott yeah.
39:14 Brad that you and I, you and I have both spent a lot of time in startups and one of the challenges of a startup is that you don't know what you don't know. Right. And so you don't want to get too, you don't want to plan too far in the future because your strategic priorities are going to change.
39:29 Scott I mean, you can't.
39:31 Scott All right. I'm at a more mature company now and we can plan for the future because there's stability.
39:35 Scott But when you're earlier, it's just like you don't even know what's happening next week.
39:39 Scott And you have to build it and grow it. You start out, hey,
39:42 Scott we're doing a one-week sprint, and you build your capability.
39:44 Scott Well, look, we've gone way, way off of a year in review and off predictions.
39:52 Scott You got a final prediction for the coming year?
39:55 Brad Let's see,
39:56 Brad prediction for the coming year.
39:57 Brad I've said it already.
39:58 Brad I'll say it again.
39:59 Scott we're going to see more and more more and more of a K-shaped economy that's
40:05 Brad Yeah.
40:05 Scott what I think we're going to see I think we're going to see the halves the halves are going to crush it and they're going to just really perform and the have-nots are going to fall further and further behind yes
40:14 Brad And so the interesting question for the coming year will be, if you're starting a company,
40:21 Brad it's easy to be a half.
40:24 Brad The question is if you're, well,
40:26 Scott Well,
40:26 Brad let's
40:26 Scott yeah,
40:26 Brad not call it a company,
40:27 Brad if you're starting a software project,
40:30 Scott I think it's easy to be have if you've got the right engineering mindset.
40:34 Brad oh,
40:34 Brad of course, of course,
40:35 Brad but there's no impediments to be,
40:37 Brad well,
40:37 Brad there's, you know, there's not a lot of impediments, but I think the interesting question in the year ahead will be if you're an existing project or company,
40:45 Brad whatever,
40:46 Brad how do you become a half?
40:48 Scott How do you get into the top half that K?
40:50 Brad Yeah.
40:51 Scott I think we're going to see I think we're going to see organizations that have good,
40:56 Scott strong engineering methodologies.
40:58 Scott They're going to find ways to jump up to that top half of the K and and they're going to become the halves.
41:04 Scott So even if you got legacy code base,
41:06 Scott I think we're going to see I am
41:08 Brad very Yeah.
41:08 Scott bullish. I am very bullish on the software agents are going to get better and better at looking at legacy code because they spent all their time looking.
41:17 Scott I'm looking at legacy code.
41:18 Brad Yeah,
41:19 Brad that has to be the piece. I was looking at something similar to spec kit called Agent OS,
41:24 Brad and it has a feature in there.
41:28 Brad I can't remember what it's called,
41:30 Brad but where it's trying design specifically for this problem.
41:35 Brad We're going to try to look at your code and try to reverse engineer rules and context from what you have.
41:42 Brad that's a real problem and it's actually interesting because it's a real problem with the big company staff and so it'll be interesting to see if the Googles and Facebooks of the world come out with some tooling to help us with that because they've got balls of mud too right
41:55 Scott Yeah, for sure.
41:57 Scott For sure.
41:57 Brad Um,
41:58 Brad so it'll be interesting to see if they start to come out with some tooling to help us with that because we need it very badly.
42:04 Scott So there you go. You helped me come up with a refined prediction.
42:07 Scott One,
42:07 Scott I've been saying it in K-shaped economy,
42:09 Scott but my other prediction is you're going to see some breakout legacy companies with large legacy code bases that have provable demonstrable top of the K performance gains.
42:21 Brad Yeah.
42:22 Brad All right.
42:23 Scott So there you go.
42:24 Brad That's it. Year one has been fun,
42:26 Brad Brad.
42:26 Scott It's been a super fun year. I'm so glad we started doing this. I love getting together with you every week and talking and picking your brain and learning from your wisdom and just sharing this time.
42:36 Scott It's been so much fun.
42:37 Brad I feel 100% the same way.
42:39 Brad And I'm excited because we have informally and we've not said this to anybody, to the 39 people who are listening,
42:45 Brad we've not said this.
42:47 Brad We've kind of made it a mission for ourselves to bring on more guests this year.
42:50 Brad this year and
42:51 Scott Yeah.
42:52 Brad I am looking forward to that as well to seeing we brought on some guests last year but we weren't really systematic about it when we thought about it and now we've got our production staff so
43:03 Scott Our producer has been just cranking out the guest invites.
43:08 Brad I'm looking forward to meeting some folks this
43:09 Scott Yeah,
43:09 Brad year do
43:10 Scott it's going to be fun.
43:11 Scott All right, everybody,
43:12 Scott remember to rate,
43:12 Scott review,
43:13 Scott and subscribe.
43:14 Brad you think anybody does that
43:16 Scott I mean, at least five people did.
43:19 Brad All right.
43:20 Brad Thank you, Brad.
43:21 Brad I'll talk to you next week.
43:22 Scott All right. Talk to you next week. Bye.
43:25 Scott This episode of How Many CTOs Does It Take Podcast was edited by Saffron Epigal.
43:30 Scott Our theme song was AI Generated by Brad.
43:33 Scott Please follow us on all the social media platforms at at howmanyctospod.
43:38 Scott You can find us on YouTube,
43:40 Scott LinkedIn,
43:41 Scott Instagram,
43:42 Scott Facebook,
43:42 Scott Threads, X,
43:43 Scott TikTok,
43:44 Scott and Patreon,
43:45 Scott or at our website at howmanyctospod.com.
43:49 Scott And remember to rate,
43:51 Scott review,
43:51 Scott and subscribe on the podcast platform of your choice.
43:55 Scott Thanks for listening.