Rewrite Your SaaS Code (The Simple Way)
Episode Stats
Words per minute
192.71704
Harmful content
Misogyny
1
sentences flagged
Toxicity
6
sentences flagged
Hate speech
2
sentences flagged
Summary
In this episode, I share with you the thinking process to decide if you should do the big rewrite or refactor your code base. I m gonna give you some different thoughts, some examples, and the 5 rules to make sure you don t end up back in the same place that you are now as you rewrite your whole codebase.
Transcript
00:00:01.120
serial entrepreneur, investor, and creator of SaaS Academy.
00:00:07.940
if you should do the big rewrite or refactor your code base.
00:00:14.380
I'm gonna give you some different thoughts, some examples,
00:00:17.120
and specifically at the end, I'm gonna share with you
00:00:19.200
how to get access to my code base remodeler framework.
00:00:22.800
It's a worksheet that not only talks about the metrics
00:00:25.160
you should be monitoring to know if it's a today thing,
00:00:28.040
It's gonna talk about the prioritization strategy
00:00:33.040
as well as the five rules to make sure you don't end up
00:00:39.240
as you rewrite or refactor your whole code base.
00:00:44.000
So fun fact, most people don't know this, but I started my career as a developer.
00:01:00.680
I'm technical. I used to write code. I wrote code for over a decade. I taught myself how to
00:01:06.000
code when I was 17. I started in Perl, did ColdFusion for some of you OGs around, eventually
1.00
00:01:11.920
.NET, Microsoft Stack, and kind of fell in love with Ruby
00:01:16.080
and Rails and kind of, you know, web and all that fun stuff.
00:01:19.940
But my first few companies, we did a lot of work
00:01:23.000
refactoring, recoding, and really rebuilding new platforms
00:01:28.260
for a lot of the world's largest companies, the Fortune 500.
00:01:32.240
So I have the experience of like what they said
00:01:35.200
it would take, you know, in regards to the engineering team
00:01:41.640
I probably did, you know, 12 rewrites in my career
00:01:49.300
and I had to extract and build my own methodology
00:01:52.080
for when it makes sense versus when it doesn't.
00:01:59.900
but slowly cleaning up and modernizing your code base
00:02:04.980
And if you're non-technical, this can be a big question.
00:02:07.680
It's literally, you know, when you've got like,
00:02:09.900
do I put off launching anything new to my client base
00:02:15.640
which I've discovered is probably more like a year
00:02:17.540
or even worst case, two years, sometimes three years.
00:02:27.420
because they kept trying to stick everything into it.
00:02:33.940
and I've had to do big, big refactoring projects there,
00:02:40.160
So, and the reason why is I believe that if there is,
00:02:44.700
if your core data structure is gonna stay the same, okay?
00:02:48.260
And there have been situations, we bought a company
00:03:07.140
but for the most part, you're gonna wanna refactor.
00:03:21.140
years of not having a competitive product in the market.
00:03:36.380
you should first off acknowledge that this code
00:03:41.240
and you have a team and this is a tough decision
00:03:49.900
you should understand that there's certain parts of it
00:03:53.860
And I know, you know, maybe it's your part-time CTO
00:03:59.860
you know, technical people will always come in and say,
00:04:02.800
we can't do this because we don't have a modern platform.
00:04:09.980
on the core data structure or security vulnerabilities
00:04:13.840
that can't be fixed through upgrading different components
00:04:40.660
So most people think I'm going to refactor this whole thing.
00:04:44.580
And then what you do is you start working down that path
00:04:51.480
And you know, so it's not even like I've got to rewrite
00:04:56.880
But now you're like thinking of like innovation.
00:05:02.040
And then your engineers will say like two weeks.
00:05:07.480
It's the fact that you just delayed the whole project.
00:05:21.120
which is probably the five most powerful articles
00:05:34.680
sorry, scratch that on a refactor, not a rewrite,
00:05:43.900
than probably anybody working on your code base,
00:05:45.960
the top minds from some of the best companies in the world
00:05:50.360
Have you ever heard of like Facebook version four
00:05:54.940
And I've seen like, man, one time I asked my coaching clients,
00:05:57.520
I have hundreds of coaching clients in SaaS Academy,
00:05:59.640
And I asked them, how many of you still have an older version
00:06:07.000
had like a classic version and then the new version.
00:06:09.900
Trying to maintain two code bases and being competitive
00:06:12.860
when you've got a bunch of kids that want a Combinator
00:06:15.320
that've got millions of dollars in funding,
0.99
00:06:19.200
So think small when you go to rewrite or refactor.
0.99
00:06:26.220
you don't need to rewrite, you need to refactor.
00:06:40.500
great marketing strategy brought in 10 times more customers.
00:06:45.920
what part of the code base is gonna completely melt.
00:07:31.860
if we 10X in the load or the capacity of our system?
00:07:43.040
And the reason why is so many of you are building products
0.95
00:07:59.740
or partners are upset because it's totally buggy
00:08:03.640
and what happens is you now have made a commitment
00:08:08.280
I would highly recommend that you just keep iterating
00:08:22.180
And think about like, to me, when I think of product management, there's three core areas.
00:08:26.360
There's the business needs, there's the customer's needs, and then there's technical needs.
00:08:30.400
And all three need to be considered in regards to the limited resources we have on our engineering teams
00:08:38.320
So it can't be just business needs all the time.
00:08:40.700
And it can't just be, you know, paying down technical debt.
00:08:43.760
It has to be all three considered and be quiet when you're doing this
00:08:48.240
so you don't set expectations that you can't pull back
00:08:58.820
there's a thing called software development life cycle,
00:09:13.520
If you've never heard of Scrum, go check that out.
00:09:16.840
the most standard, maybe you're doing some pair programming,
00:09:19.700
that kind of stuff, but you know, it's your code base,
00:09:22.020
it's your Git flow, check that, those terms again,
00:09:24.560
I'm gonna link up some of my favorite resources below,
00:09:31.700
and I can usually tell people's maturity of their code base
00:09:34.900
based on the frequency that they push to production
00:09:37.840
and test coverage that they have on their code base.
00:09:42.160
then you probably don't have a good life cycle,
00:09:44.320
And I would highly recommend that you not only implement it,
00:09:48.080
but respect it, especially if you're the founder
00:09:50.840
and not push people out of fast, you know, hot fixes.
00:09:54.940
If you have a conversation with your team every week
00:09:57.000
about hot fixes, then you're clearly moving way too fast.
00:10:01.020
You need to slow down to fix and respect your life cycle.
00:10:24.160
As I mentioned at the beginning of this episode,
00:10:30.360
It's a framework to think about the, first off,
00:10:39.740
I'm also gonna share with you the prioritization framework
00:10:49.900
And then finally, the five principles of development
00:10:56.240
into this exact same spot that you found yourself in
00:10:59.240
into the future, because if you don't fix that,
00:11:01.400
then you're just gonna rewrite or refactor your code base
00:11:04.220
and end up in the same place in two or three years.
00:11:08.860
to download your copy of my code base remodeler.
00:11:12.040
And if you like this video, be sure to subscribe,
00:11:13.680
leave a comment and click that like button, smash it.