📺 Develpreneur YouTube Episode

Video + transcript

Scope Creep in Software Projects: Causes, Consequences, and How to Prevent It

2025-08-12 •Youtube

Detailed Notes

Scope creep is one of the most common — and costly — challenges in software development. In this episode of Building Better Developers with AI, Rob Broadhead and Michael Meloche explain what scope creep is, why it happens, and proven ways to prevent it from derailing your projects.

You’ll learn: * The difference between scope creep, feature creep, and healthy iteration * Real-world examples of how uncontrolled changes can damage timelines, budgets, and morale * Practical steps to define requirements, set checkpoints, and manage change requests

📖 Read the blog version: https://develpreneur.com/scope-creep-explained/

Transcript Text
[Music]
He's loud.
And we are back and we are
uh let me go where did I put
too many screens too many okay so this
one we're going to do mastering scope
creep navigating the hidden challenges
in software development and this is
going to be
our AI version of this hidden challenges
so this will be interesting I thought we
had talked about scope creep a little
bit before but I Guess that was maybe
that season. So, we'll see what it says.
Um, it looks like Oh, good. I'm back to
my uh Let me do it this way. Let me do
it so I can read a little better because
this is a little bright. Oh, actually,
it is brighter. But let me do it this
way. If I brighten this up.
No, I like this monitor better. Sorry.
Sorry, folks. Because now I'm going to
be looking over here a little bit and I
don't want to move on. I guess I No, I
don't want to do that. Um,
so it starts with great podcast topics.
This is we're back to one of those. It's
in it's in a good mood today. So we'll
see how it goes. Um, let's just dive
right in. Go. Oops. We're going to start
with three this too. Oh, we're going to
go back. Those
uno. Ola. We are back again. This is
building better developers, the
developer podcast where we well for one
word are multilingual and not very well.
I am Rob Redhead, one of the founders of
developing building better developers.
Also the founder of RB Consulting where
we help you do business better. We do it
by helping you leverage technology for
your business. Now, there's a lot of
companies out there, don't want to throw
shade, but they're going to just
give you a solution. They're going to
say, "Here's our stack. Here's our
solution. Here's our vendors. Here's our
products." Or they're going to be a
vendor that's like, "Here, buy our
stuff." And what we do is we we've
played around with all of that. We've
worked with that for big and small
companies and through simplification,
integration, automation, innovation,
we're going to work with you to find a
way to craft your own specific recipe
for success, help you build a product, a
technology roadmap, maybe even a product
road map and either hand that to you for
you guys to take it and run or we can
stand beside you, work with you, we can
help you build a team. However that
needs to be implemented, we have the
resources to do that. So, we're going to
help you leverage technology better, and
we want to do it in a way that allows
you to move forward with the best ROI on
one of these most expensive pieces of
your business. Good thing, bad thing.
Literally, uh those of you that are
watching, uh those of you are not, shame
on you. Um you can watch us on the on
YouTube. Those are watching will know
that I have a little monitor, little
side monitor. Well, played around with
these for a while as part of my being a
remote developer. And uh for my laptop,
I worked with a couple things.
Initially, I had a nice big like thing
that you can mount on a laptop. I've got
two extra screens. It was pretty cool.
Only problem is I want to travel a lot
and those were heavy. So, I went to a a
lighter monitor. And in doing so,
I have now like got my got one cuz one
for my wife cuz it it worked out. Uh her
laptop only supported one monitor
anyways. So I got that, went back and
got the other one. So good thing is I
got my other monitor today. Uh a good
bad thing as part of this is the first
one I got was when these were first
coming out and it wasn't that long ago.
They were first being released and they
were 200 bucks a piece. Well, a little
less than 200 bucks a piece. When I went
to get the second one, they're like 65
bucks a piece. So, if I had waited a
month and a half or whatever it is, I
would have saved myself money. But the
good news is the good part is I did save
myself some money. And what's also good
is I still have for my own little laptop
a slightly better highly, you know, more
geek cred than Michael has for his
laptop thing that he carries around at
least last I checked. But he's going to
let us know about that. But more
importantly, let us know about him as he
introduces himself.
Hey everyone, my name is Michael
Malashsh. I'm one of the co-founders of
developer building better developers.
I'm also the owner of Envision QA. We
help startups and growing companies
build better software faster and with
fewer problems. Our software covers
software development, quality assurance,
test automation, and release support.
Companies come to us when they want to
avoid delays, reduce bugs, and launch
with confidence. Whether you're building
your first MVP or scheduling a live
product, we make sure your software is
reliable, efficient, and ready for
growth. Check us out at envisionqa.com.
Oh, good thing, bad thing. Well,
actually, first I'll take get a little
throw out there. So, I have two uh 48 in
ultrawide curve monitors for my desktop
slashie laptop for my workstation. And
when I do have my laptop, it is just my
laptop. I don't carry the other things
with me because if I do need the
screens, I'll just go home and plug in
and basically have this big humongous
wall of screens. U anyway, digress. Good
thing, bad thing. Uh kind of the same.
Uh allin-one today. Uh wife came out to
the river yesterday, turned on the
water, had everything set up. We were
going to spend the week out since the
weather's nice and enjoy the river. And
our water pressure dropped within an
hour to nothing. We thought they turned
the water off because we didn't pay the
bill. Nope. paid the bill. Come to find
out, we had a broken pipe in the middle
of the yard. Took uh the plumber 48
hours to get out here to look at it.
Good news is they finally found it after
3 hours of digging around. Uh patched it
and I have water again after let's see,
I've been at this location. So, I've
been here for over 9 hours with no water
today. So, it it's been an interesting
day.
Well, the day is going to get more
interesting because we're going to go
back to uh sorry if I do dove right into
this, but this is our season where we
are taking a past season and we're going
to do it with AI. So, we take a topic,
throw it out to Chat GPT and say, "Hey,
what would you do if you were going to
create a podcast like this?" And uh we
start going. So, this time the title
we're going back to is Mastering Scope
creep, navigating the hidden challenges
in software development. And this is
back to the responses that's given in
the past where it's saying great podcast
topic that taps into a very real
pain point for developers, managers, and
even clients. It's also a perfect match
for your podcast theme of building
better developers below our ideas for
structuring the episode suggested
segments and discussion angles that
could engage your audience. So,
uh, they add a couple of podcast episode
title ideas, but let's just dive right
into the structure itself.
Item one, and I think this is back to
going to give us eight. So, we'll see
how far we get through this. What is
scope creep and why it happens? Define
it in plain terms with real world
examples. Differentiate scope creep
versus iteration or agile flexibility.
stakeholders. Who introduces creep?
Clients, developers, or managers?
Oh, wow. Scope creep.
I think I want to tackle the scope creep
versus iteration or agile flexibility
because
this is where I think a lot of people
get lost. Scope creep is when and and
this is my term. So if you look it up in
Wikipedia or something like that, if
it's exactly like my term, then let me
know because I need to charge them money
or something like that. But this is my
thoughts on it.
Scope creep is when we have defined
requirements
and we agree to the requirements and we
start working on the requirements and
now the requirements change. Scope creep
is essentially changing requirements.
Now this is different from uh iteration
which is where we go through with a
requirement. We complete it essentially
we review it we iterate and now we have
a new or a evolved requirement. So that
would be more the iteration side and
then on the uh agile flexibility side is
where in there when you get into ads
where we have requirements
from the from the start we'll say and
then as we go into a sprint we have
requirements the requirements that we
have at the start may evolve so that by
the time we get into a sprint and we're
actually working on that requirement it
may have evolved may changed may have
even you know disappeared it may be
brand new things like that scope creep
in that sense is not so agile
flexibility means that as we're going
through we can create new requirements
as we're going we can evolve what we are
building as we are working down that
agile path that's not the same as scope
creep scope creep and agile would be
that we set a uh requirement we say it's
done essentially and then we move or as
we get almost to done we move the
goalpost
So the easiest way to think of scope
creep is moving the goalpost. Scope
creep is more about changing what done
is essentially or what completing that
requirement is or what that requirement
entails as opposed to going back and
saying all right we're going to we're
rewriting the requirement and sort of a
little bit of it's not starting from
scratch but if you get that idea it's
sort of the idea of instead of changing
the requirement when you're almost done
change the requirement before you step
into it and it is very much a a squishy
you know type of area, but I think it's
something that we do want to make sure
that we understand when there's there's
a difference between being flexible or
saying that, hey, this is a bad
requirement and rewriting the
requirements versus scope creep, which
is really like stretching that
requirement out and making it into
something that wasn't originally
intended to be. Like I said, this is lot
of places we can go here, so I'll be
interested to hear what are your
thoughts on this.
Yeah. So,
it's interesting with scope creep
because scope creep
can to me I've also heard feature creep
and feature creep to me is different
than scope creep but they're kind of the
same. Um,
and there are also you mentioned
requirements. So as like you gave a good
explanation about scope creep but with
scope creep as you're working on the
project as you're working on features
you can run into issues where a feature
that was agreed upon for the
requirements
if that was 6 months ago depending upon
where you're at in the development cycle
that feature might not be there anymore.
So you could even run into a place where
hey you're actually building something
that is not that meant to be there
anymore. So you've run into a
requirement change and you are
essentially
it's not necessarily scope creep but
you've kind of diverged. You've gone
down a path a rabbit hole doing a
feature that was agreed to initially but
isn't there anymore and that's
it it it is it is similar to moving that
goalpost but it is not just moving the
goalpost away. You've kind of oh instead
of going in the straight line you've
kind of gone around the town. you're
building a bypass when you need to just
build the tunnel through the town. So
that's one of the things you got to be
careful of with scope creep and feature
creep is you have to make sure that you
do regular checkpoints. Rob talks about
agile and scrum all the time and is
perfect for this. But a lot of companies
even though they're trying to do scrum
or maybe they're not even doing scrum or
agile, they run into situations where we
talk about this once
right up to tickets and then just go off
and expect the developers to do it. And
if you don't do regular checkpoints to
make sure that hey, are we on track? Are
these requirements still fresh or have
they gone stale? And you could
essentially end up with a different type
of scope creep being meaning that you're
working on a project that really doesn't
exist anymore or has changed so
drastically that your scope is you're
working on features that are outdated
and that sometimes is the case is that
you end up in a situation where you are
you're building to the wrong you're
building to the wrong target. Um, that's
where I do I I very much agree that it
is important to do those regular
check-ins to make sure that are we
agreed that we're working on the same
path. For example, if you think of of
driving on the road going from point A
to point B, it may be that there are,
you know, that along that road, it makes
sense to follow that road. Those are
the, you know, that is the features
essentially that you're going. The creep
may be somewhere along the way that
you're like, hey, we need to, you know,
take a bathroom break or something like
that. that is not really as much of a
feature creep as more of like, hey,
we're gonna go take three days and we're
going to go have a vacation somewhere
else is really the the effect of a a
feature creep or a scope creep. The next
one, how scope creep affects developers,
burnout from
uh burnout from endless changes,
confusion about goals and ownership,
missed deadlines and technical debt,
loss of confidence in estimates and
planning.
Oh boy, that is those are all actually
really good uh issues. I think I want to
go with the estimate side because I
think this is a
this is an area where it is it almost
becomes I mean I hate to say it this way
but it almost becomes the equivalent of
a self-fulfilling prophecy. I have been
in situations where you've got a
customer that is uh whoever the customer
is, it could be internal, it could be
external, however it is, they are
driving the product that we're building
software for this customer and they're
sometimes it's they're not totally sold
on it in the first place because they
think it's going to run over or it's
going to be late or it's going to slip
or all the politics that can happen. And
what ends up happening is in some of
these is you have people that are this
customer doesn't really know where
they're going. They don't really
understand what they want to do
and then they start feature creeping is
they basically scope creep says they're
say hey we need um you know it's like we
need this report. This is so often this
where it starts. We need this report. We
need these five items and we need them
displayed this way. Cool. All right, we
have it and now we're going to push that
out there. And they see it and they say,
"Oh, wait. We need this other piece of
data. Oh, can we summarize that data?
Can we add totals? Can we uh we want to
be able to sort stuff? We want to be
able to filter. We want to be able to
run this for certain criteria that
initially were not included. You know,
initially it was like we just want to
run it for dates." And they're like,
"No, we want to run it for dates, but we
also want to run it for specific
customer or only specific employees or
specific blah, you know, all of that
kind of stuff." And next thing you know,
this little ritty report that should
have taken 3 hours and maybe did
initially now has taken 3 weeks because
the goal keeps changing. Everything
keeps moving and now everybody's
complaining. It's like, hey, this should
have been done a long time ago. Yes, it
actually was done a long time ago, but
then everything changed and those
changes make they cost more to change
than it would have had they been there
initially. because now this stuff that
you built for you built the solution for
one thing and now there's all this extra
stuff that's gets added on and the next
thing you know you're in a a death march
because of a you know a report or
something like that. So I think those
are where it gets really frustrating on
both sides because the developers get
frustrated because their estimates are
crap because as soon as they put it out
there they're held to the estimate but
now the requirement they estimated
against is different and so they know
that they're going to lose. they know
that they, you know, or if they change
it, then it's like, why do you keep
changing it? Well, because the goalpost
keeps moving. And on the customer side,
they're sitting there going, "Why do we
even ask for estimates?" Because we
never get an estimate that means
anything. They estimated 3 hours and now
it's 3 weeks later. And so, you end up
with this like everybody's pointing
fingers and stuff like that. And so,
scope creep can be very devastating in
that kind of sense as far as just the
trust, the estimation, the the planning,
the milestones. Uh I'm I don't know how
many projects I've been in that were,
you know, failing or failures that you
can point to changing requirements. And
before I pass it to Michael, I will give
the like the the epitome of bad like
this is going to go bad in that kind of
sense of bad requirements are these
kinds of projects where somebody is
like, hey, I need you to make eBay but
for dog food, you know, or something
like that where they they're like, well,
just take this this thing and I just
want to make it, but I want to make it
slightly differently and that's the
requirements or just use the existing
app as a requirement. ments and just
make something else that looks like that
but only better. You know, there's
there's too much wiggle room in there.
There's too little definition. And so,
whatever you're initially going to look
at, whatever you're initially going to
estimate, you're pro unless you're
really really good at like mocking that
thing up and spending a lot of time in
that estimation phase and basically
halfway building the solution or more,
then you're going to miss it because
you're going to have a different picture
in your head. So that being said, where
do you want to go on this one?
>> Well, you kind of touched on three of
the four bullet points, so I will go
with the one you didn't touch on, which
was burnout from endless changes.
Because literally everything you laid
out, you know, talking about the
confusion about goals and ownership and
missing deadlines and technical debt and
the loss of confidence in estimating and
planning, all those things lead to
burnout. You know, from developers
perspective, we've talked about being in
firefighting mode. This is not
firefighting mode. this is
I am working on a ticket and you know
I've agreed to the requirements of this
ticket and it's only going to take me a
day to get it done and next thing you
know you are 4 days into it 6 days into
it two weeks into it is like a
neverending death march when the hell is
this going to get done when are you
going to quit changing the requirements
of this ticket so that I can actually
complete something which goes back to
before you commit to a ticket. Make sure
that your tickets or the requirements
have a clear definition of done. What is
it that they want? If it changes at that
point, the ticket needs to close. Write
up a new ticket and define what
specifically it is that the new change
wants. Trying to cram it all into one
ticket is so much scope creep that you
don't you basically start out with
apples and you end up with oranges. You
the ticket never is what it was at the
beginning. Sometimes it is. Sometimes it
is simply okay what we thought this
change was going to be. You run into a
blocker or a situation where you can't
implement what it was or the way the
ticket was written up. You can't
actually implement it that way.
Sometimes that requires a pivot and an
update to the requirements of the
ticket. Sometimes that happens. That's
not necessarily scope creep. that is,
oh, this should have been a discovery
ticket because we found something that
wasn't there. So, in a sense, you could
keep that ticket open, re-update the
requirements to what it needs to be, or
really close that ticket, create a new
ticket based on your findings as to what
it is you need to do, and then focus on
that reestimate on the new requirements.
So, if you don't do this, you run into
again those situations where you're just
on that death march. You it's like
you're working on it. You think you're
done. Oh, you're told it's not done.
Well, why is it not done? Well, because
it needs this, this, or this. Well, that
wasn't in the ticket. Well, it needs to
be done. And you get into those loop
back scenarios where you just can't get
done. And burnout. I it it just is so
prevalent that it it these are the types
of tickets that will cause burnout. If
you find yourself running into like low
energy or, hey, I don't really want to
do this anymore or, man, I've been
really at this for a couple days, take a
time out, take a step back, revisit the
requirements of the ticket, and maybe
have a quick conversation with your
manager of like, hey, we need to reset
this ticket. Either close this ticket
and create a new one or really redefine
what it needs to be done and get it
done.
>> Yeah. Sometimes that's the when you
catch yourself in this situation that is
the best thing is to just like take a
deep breath step back and I' I've been
in projects where we've done that as a
group as a project group and said this
is we're we're churning we're stuck in a
rut something like that and it's better
to say okay let's step back let's look
at what we really want to get done let's
reassess some of these things and maybe
some of these things are a scope creep
let's just define them say okay we've
hacking on this thing for the last three
sc sprints. Let's step back. Let's
actually figure out what this needs to
be or pause it for a while. Go move to
something else while somebody else
researches it so we can get something
that is is much more stable. Um, in a
short bit here because I don't want to
go too long because this go really long.
Stories from the trenches. Share real
examples from your experience or
listeners that one project that never
ended or we rebuilt the same feature
three times. The we rebuilt the same
feature three times I'm going to say is
something I have run into multiple times
and it is a a warning that I have and
this uh I've seen this in many types of
projects the ones that happen a lot
anything that requires mapping or
integration
that there is this danger that includes
scraping projects that also recruits
anything that's a an ERP, uh, a CRM.
And the the problems with these projects
that are scope creep kinds of things.
Too often I found a customer comes in
and they're really not ready for that
tool yet. And when the implementation
begins, the right questions are not
asked and those don't surface until it's
later in the project. And now you have
to change things and sometimes rewrite
things. I will just because this was a
specific one. I'm going to I will talk
about a specific project that was like
this. We went in uh it should have been
a very straightforward project should
have been this is what it should have
been done in three four weeks something
like that. The whole point was the
customer knew what their data was. There
was a vendor that knew where that data
needed to go. All we needed to do was
pull the qu pull the data and then use
the mappings that the vendor said we
were going to use. Well, it turns out
that the vendor really didn't know what
the heck they were talking about. And
they were counting on us to tell them
where the data is supposed to go when it
was like, "No, you're supposed to tell
us. We don't know that system. We don't
know your system. We're you're supposed
to know this. You're the expert." That 3
to four week project. Um I wrapped up on
it I think nine months later something
like that. We were still going through
things. We had ended up changing
multiple times how we approached it
because the integration that we had
built we were assured that this was
going to work and then we found out that
no actually that that the target product
did not support that and then and it
goes actually to a report as well. there
was a certain report that they needed.
They're like, "Sure, we're going to give
you that, but they weren't giving it to
them in the way that it was needed." And
so, you ended up with all of these like,
"We changed the mappings, we changed the
approach, we changed the format, we
changed the structure, we changed stuff
over and over and over again." And it
was one of these things that should have
been a oneanddone, and we ended up doing
it over and over and over again. And
really it wasn't so I mean it was scope
creep but the real problem was is that
the scope never really got defined
properly. Everybody was thinking
somebody else is going to take care of
it and it didn't. And so that is a
warning. I will say that as a cautionary
tale to any of these bigger kind of
projects and integration kind of
projects where there is the where you
hear the word mapping involved then make
sure that the people that are involved
on the source and the destination of
those mappings understand what they're
doing. They're clear on who owns what
and how that needs to go because that
process doing the mapping often is the
biggest time sync the biggest part of
the development effort. The rest of it
is actually pretty straightforward. is
getting those mapping rights and any
translations between the two
uh in roughly 60 seconds or less. I
guess I'll give you a little bit of
time. So what's one give a if you can
give a quick example from your
experience.
>> So it wasn't so much scope creep but
illdefined expectations from a manager.
Uh I had built a modulebased
application. This was before containers
and all this, but I basically built a
containerized application that the
manager likes so much instead of using
the model and building on it. It was
copy and paste the project here, spin up
another project here, copy paste, do
this. We did that six times and then
when one feature that was common to all
of them had to change, we had to go
through every application essentially
redo it multiple times instead of having
one common application. It it was the
worst. I don't want to say it was
self-imposed scope creep by a management
decision because if your software isn't
built to scale or it's if you try to
treat it like a cookie cutter, you could
run into a situation where you get into
those uh situations where the project
never ends because one feature change
based that they think is a easy
requirement is not. It is something that
really should apply. If you have six
applications and it's a feature in all
six, you need to take that and multiply
it by six because it may not be a simple
change.
That is boy that is that is its own
little problem there is that the idea of
a simple change. Um too often I have
seen that as you know oh this is
something really and developers do it
just as well where it's like oh yeah
it's a simple and then it's not because
it gets underestimated and it really is
probably related to scope creep. Uh what
is not scope creep is you sending us an
email at info developneur.com. We have
had that requirement forever. That is
like that goes way way back. That goes
back dozens maybe hundreds of episodes.
Love to hear from you. Give us your
feedback. What do you think? What do you
like? What do you dislike? Uh and
obviously with any of these, what are
some examples you'd like to throw out
there? Because the real world stuff is
always very useful to us. And even
though it may be, you know, we may be on
to a different topic, it is uh we always
can find time if we need to. If you have
something interesting, we will swing
back around and just bring that up and
say, "Hey, by the way, here's a
flashback or we can use it as bonus
material for the YouTube side." So those
of you that are on the a out on the
audio version listening to podcast, we
also have the we have our YouTube
channel developing our channel and we
have all the stuff out there. We always
have uh pre and post show stuff
including every show we end with bonus
material basically unless we started
with a ton of bonus material then we
don't double up too much. You can also
reach us at X uh there's developer
developer.com is the best place to go
out on that site. You've got access to
all of our content, all of our past
episodes, all of our if you want to go
out to YouTube and look at it there. Uh
all of our presentations, just tons and
tons and tons and tons of content. It is
amazing how much stuff is out there. I
look at it sometimes, I'm like, "Oh my
gosh, we have I've forgotten more stuff
than we have, you know, than I can think
of that we've put out there." So, check
that out. Uh Facebook, we have a
developer page. Wherever you find our
all of the fine podcast products, you
can find uh developing our podcast. If
you find somewhere and you're not
getting it, let us know. We'll make sure
we get hooked up there. That being said,
we do appreciate you and your time. Go
out there and have yourself a great day,
a great week, and we will talk to you
next time.
Bonus material. Uh I am going to go do
like a super fast read through these
because we didn't get really far at all.
Uh, so four and I and then just pick one
whatever and you got in front of you. So
you can pick something where you want to
go after I read through this and I'll
see what I want to do. How to recognize
scope creep early subtle warning signs.
Can we just add one more thing? Frequent
changes without updated timelines. No
clear acceptance criteria or
documentation. How to put push back
without burning bridges. Soft skills for
saying no constructively. How to involve
project managers or product owners when
and how to renegotiate timelines or
budgets. Process and tools to prevent
it. Define scope up front. Clear user
stories. Definition of done. Agile
board. Sprint planning. Change control.
Versioning. Milestone check-ins and
backlog management. Documenting
assumptions. Mindset shift. Treat scope
creep as a symptom. What is the client
client really trying to say? Use it to
improve product vision or communication.
Good scope change is not the same as bad
scope creep. Developer tips. Personal
tactics at work. How to manage energy
and focus in evolving projects. Keep a
change log or scope journal. Estimate
with buffers. Create your own guard
rails as a developer. Uh there's a lead
magnet called action ideas. And we will
go with oh bonus segment ideas.
Roleplay. Clients asked to change scope
midsprint. How do you respond? Q&A. Take
listener questions about real life scope
chaos or tool highlight tools like
notion linear or jira that help. So what
do you want to throw out there for your
bonus?
>> Uh where was it? Um yeah. So, I like the
process uh where is it? Process tools
six. There it is. Process and tools to
to prevent it. Which kind of goes with
the bonus thing, you know, agile boards
like Miro, um Atlassian, uh Jira,
Trello. Use boards, use storyboards,
write up, you know, kind of brainstorm.
Don't just go into writing tickets
sometimes. Sometimes it takes walking
through the idea. Um, a lot of times
when I'm working with managers or
customers, I will pull out a sheet of
paper. I'll pull out my iPad. You know,
you bring up some type of drawing tool,
notepad, whatever, and you just start
kind of flowing through your ideas. You
draw it out, or you just kind of walk
through scenarios and situations on how
the application's going to work. So, you
can kind of flush out the direction or
the feature that you're trying to build.
So, there's a lot of things out there.
find what works for you, but sometimes
pen and paper work great or just simple
like notes or notepad and just start
kind of typing out your thoughts or just
um if you use ASKI docs or markdown,
throw up a little markdown script as
you're writing out u kind of the
requirements and then translate that
into a wiki that you have for your notes
for your developers.
Yeah, I think I want to those are those
are all great and I think I want to sort
of that leads well into what I want to
talk about which is not specifically
mentioned but is a clickable demo. Uh, I
have found that this is a great way for
you to get stuff in front of your
customers much like, you know, drawing a
picture and things like that, but it's
also a way to get it in front of them
and and make it real. Yes, it's nice to
use uh Figma and all those kinds of
stuff and build these things out and do
them pretty and sometimes you can do
that and put enough information into it
to give them a good clickable demo. But
what I like about one that is a what
I'll call a
evolving or a true clickable demo, one
that we often use is that we actually
build the demo. And this is a framework
going forward. So what they're going to
see is they're going to see the
evolution, especially in agile, this
works great is they're going to see the
evolution of the solution of the
application and you're going to be able
to put it in front of them. You're going
be able to get them a feel for what is
it? What is it like to sit there with
this application? What is the navigation
like? what is some of the get some
sample data in there so it starts
looking real to them because those are
the things that then they're going to
say well wait a minute I don't see this
or that value is never going to look
like that or that could never be exist
with that over there
those things are invaluable to avoiding
scope creep or at least getting the
scope creep covered sooner rather than
later so I think highly recommend it if
you have not done it, then give it a
shot. Uh, it's a lot of people are big
on the whole MVP thing and and stuff
like that. That's really not that far
off from the idea of a clickable demo.
Um, as always, if you want to if you if
you wonder how that will look, shoot me
an email at info developer.com or like,
you know, hit me up on the RB-SNS site,
schedule a call. I I have no problem
spending 30 minutes sitting down with
somebody and just saying like, here's
some things you can do. here's some
questions you want to ask. Here's how
you want to approach a clickable demo
because you're not necessarily going to
spend you're not going to get everything
done at once. And there's definitely
concerns in there about like having
something that's too ugly or too pretty
or not complete enough or too complete.
And there's there's a lot of caveats on
in that. But happy to try to get more
people to do this and get better at it.
Uh because also I think it'd be nice for
customers to have more of a feel like
what to expect in a clickable demo,
which is one of the key things you have
to do is set those expectations up
front. Just like we try to set
expectations to have like a certain
amount of length for our episodes, and
we're not terribly good at that. I mean,
I guess we're within 15 to 45 minutes an
episode over the all of these. So, we
have some reasonable faximile of of a
standard, even though we do move them
around a lot. But we appreciate your
time whether we go a little short or a
little long. We are going to wrap this
one up and we will be back before you
know it to run into our next episode
where we're going to continue learning
more about how to build a better
developer with AI. Well, really just
some AI input on our thoughts, but you
know how it goes. As always, appreciate
your time. All that you have done to
just like hang out with us. Feedback is
awesome. Love you guys. Have a good one
and we will talk to you next time.
[Music]
Transcript Segments
1.35

[Music]

27.119

He's loud.

29.359

And we are back and we are

33.84

uh let me go where did I put

38.64

too many screens too many okay so this

40.32

one we're going to do mastering scope

42.399

creep navigating the hidden challenges

44.96

in software development and this is

48.399

going to be

51.36

our AI version of this hidden challenges

54.079

so this will be interesting I thought we

55.68

had talked about scope creep a little

57.28

bit before but I Guess that was maybe

59.76

that season. So, we'll see what it says.

62.64

Um, it looks like Oh, good. I'm back to

65.04

my uh Let me do it this way. Let me do

68.08

it so I can read a little better because

69.439

this is a little bright. Oh, actually,

71.04

it is brighter. But let me do it this

72.4

way. If I brighten this up.

76.24

No, I like this monitor better. Sorry.

80.08

Sorry, folks. Because now I'm going to

81.28

be looking over here a little bit and I

82.88

don't want to move on. I guess I No, I

84.479

don't want to do that. Um,

86.88

so it starts with great podcast topics.

89.119

This is we're back to one of those. It's

90.56

in it's in a good mood today. So we'll

93.36

see how it goes. Um, let's just dive

95.84

right in. Go. Oops. We're going to start

97.759

with three this too. Oh, we're going to

99.119

go back. Those

101.36

uno. Ola. We are back again. This is

104.88

building better developers, the

106.079

developer podcast where we well for one

109.119

word are multilingual and not very well.

113.119

I am Rob Redhead, one of the founders of

115.36

developing building better developers.

117.119

Also the founder of RB Consulting where

119.36

we help you do business better. We do it

122.64

by helping you leverage technology for

124.88

your business. Now, there's a lot of

126.399

companies out there, don't want to throw

127.92

shade, but they're going to just

130.56

give you a solution. They're going to

131.84

say, "Here's our stack. Here's our

133.68

solution. Here's our vendors. Here's our

135.36

products." Or they're going to be a

136.56

vendor that's like, "Here, buy our

137.92

stuff." And what we do is we we've

140.56

played around with all of that. We've

141.84

worked with that for big and small

143.36

companies and through simplification,

145.52

integration, automation, innovation,

147.28

we're going to work with you to find a

148.8

way to craft your own specific recipe

151.76

for success, help you build a product, a

154.48

technology roadmap, maybe even a product

156.4

road map and either hand that to you for

158.879

you guys to take it and run or we can

161.12

stand beside you, work with you, we can

162.64

help you build a team. However that

164.4

needs to be implemented, we have the

166.48

resources to do that. So, we're going to

168.319

help you leverage technology better, and

170.56

we want to do it in a way that allows

172.239

you to move forward with the best ROI on

175.92

one of these most expensive pieces of

178.239

your business. Good thing, bad thing.

181.599

Literally, uh those of you that are

183.519

watching, uh those of you are not, shame

185.68

on you. Um you can watch us on the on

188.159

YouTube. Those are watching will know

190.159

that I have a little monitor, little

192

side monitor. Well, played around with

194.72

these for a while as part of my being a

196.64

remote developer. And uh for my laptop,

199.36

I worked with a couple things.

201.2

Initially, I had a nice big like thing

203.599

that you can mount on a laptop. I've got

205.2

two extra screens. It was pretty cool.

207.04

Only problem is I want to travel a lot

209.2

and those were heavy. So, I went to a a

211.44

lighter monitor. And in doing so,

216.08

I have now like got my got one cuz one

219.44

for my wife cuz it it worked out. Uh her

222.72

laptop only supported one monitor

224.56

anyways. So I got that, went back and

226.64

got the other one. So good thing is I

228.159

got my other monitor today. Uh a good

231.519

bad thing as part of this is the first

233.92

one I got was when these were first

235.76

coming out and it wasn't that long ago.

237.439

They were first being released and they

238.48

were 200 bucks a piece. Well, a little

239.84

less than 200 bucks a piece. When I went

241.599

to get the second one, they're like 65

243.599

bucks a piece. So, if I had waited a

246.239

month and a half or whatever it is, I

247.599

would have saved myself money. But the

249.2

good news is the good part is I did save

251.68

myself some money. And what's also good

253.84

is I still have for my own little laptop

257.199

a slightly better highly, you know, more

259.919

geek cred than Michael has for his

261.759

laptop thing that he carries around at

263.6

least last I checked. But he's going to

265.36

let us know about that. But more

266.4

importantly, let us know about him as he

268.16

introduces himself.

270

Hey everyone, my name is Michael

271.36

Malashsh. I'm one of the co-founders of

272.72

developer building better developers.

274.639

I'm also the owner of Envision QA. We

277.199

help startups and growing companies

279.04

build better software faster and with

281.52

fewer problems. Our software covers

283.68

software development, quality assurance,

285.44

test automation, and release support.

287.84

Companies come to us when they want to

289.44

avoid delays, reduce bugs, and launch

291.759

with confidence. Whether you're building

293.44

your first MVP or scheduling a live

295.68

product, we make sure your software is

297.36

reliable, efficient, and ready for

299.12

growth. Check us out at envisionqa.com.

302.8

Oh, good thing, bad thing. Well,

304.16

actually, first I'll take get a little

305.84

throw out there. So, I have two uh 48 in

309.84

ultrawide curve monitors for my desktop

313.28

slashie laptop for my workstation. And

316.8

when I do have my laptop, it is just my

318.72

laptop. I don't carry the other things

320.08

with me because if I do need the

321.6

screens, I'll just go home and plug in

322.96

and basically have this big humongous

324.72

wall of screens. U anyway, digress. Good

328.24

thing, bad thing. Uh kind of the same.

330.479

Uh allin-one today. Uh wife came out to

334.479

the river yesterday, turned on the

336

water, had everything set up. We were

337.68

going to spend the week out since the

339.12

weather's nice and enjoy the river. And

341.759

our water pressure dropped within an

343.759

hour to nothing. We thought they turned

345.759

the water off because we didn't pay the

347.12

bill. Nope. paid the bill. Come to find

349.28

out, we had a broken pipe in the middle

351.12

of the yard. Took uh the plumber 48

354.16

hours to get out here to look at it.

356.56

Good news is they finally found it after

358.639

3 hours of digging around. Uh patched it

361.52

and I have water again after let's see,

364.24

I've been at this location. So, I've

366.479

been here for over 9 hours with no water

369.199

today. So, it it's been an interesting

372.16

day.

374.479

Well, the day is going to get more

376

interesting because we're going to go

377.759

back to uh sorry if I do dove right into

380.96

this, but this is our season where we

382.56

are taking a past season and we're going

384.88

to do it with AI. So, we take a topic,

386.88

throw it out to Chat GPT and say, "Hey,

390.4

what would you do if you were going to

391.68

create a podcast like this?" And uh we

394

start going. So, this time the title

396.16

we're going back to is Mastering Scope

398

creep, navigating the hidden challenges

399.759

in software development. And this is

402.08

back to the responses that's given in

404.08

the past where it's saying great podcast

406.319

topic that taps into a very real

410.96

pain point for developers, managers, and

412.8

even clients. It's also a perfect match

414.4

for your podcast theme of building

415.919

better developers below our ideas for

418.08

structuring the episode suggested

419.84

segments and discussion angles that

421.919

could engage your audience. So,

425.599

uh, they add a couple of podcast episode

427.84

title ideas, but let's just dive right

430.88

into the structure itself.

434.319

Item one, and I think this is back to

437.199

going to give us eight. So, we'll see

438.24

how far we get through this. What is

440.08

scope creep and why it happens? Define

442.24

it in plain terms with real world

444

examples. Differentiate scope creep

446.4

versus iteration or agile flexibility.

449.28

stakeholders. Who introduces creep?

451.36

Clients, developers, or managers?

454.96

Oh, wow. Scope creep.

458.4

I think I want to tackle the scope creep

460.56

versus iteration or agile flexibility

464.4

because

465.919

this is where I think a lot of people

467.919

get lost. Scope creep is when and and

472.16

this is my term. So if you look it up in

475.12

Wikipedia or something like that, if

477.199

it's exactly like my term, then let me

479.599

know because I need to charge them money

480.879

or something like that. But this is my

482.96

thoughts on it.

484.879

Scope creep is when we have defined

487.28

requirements

488.8

and we agree to the requirements and we

491.759

start working on the requirements and

494.08

now the requirements change. Scope creep

497.44

is essentially changing requirements.

499.599

Now this is different from uh iteration

502.8

which is where we go through with a

505.52

requirement. We complete it essentially

509.199

we review it we iterate and now we have

512

a new or a evolved requirement. So that

515.519

would be more the iteration side and

517.599

then on the uh agile flexibility side is

522.159

where in there when you get into ads

524.64

where we have requirements

528.16

from the from the start we'll say and

531.04

then as we go into a sprint we have

533.04

requirements the requirements that we

535.68

have at the start may evolve so that by

538.959

the time we get into a sprint and we're

541.839

actually working on that requirement it

543.76

may have evolved may changed may have

545.519

even you know disappeared it may be

547.04

brand new things like that scope creep

549.44

in that sense is not so agile

551.2

flexibility means that as we're going

552.64

through we can create new requirements

554.64

as we're going we can evolve what we are

556.72

building as we are working down that

558.8

agile path that's not the same as scope

560.8

creep scope creep and agile would be

562.399

that we set a uh requirement we say it's

566.72

done essentially and then we move or as

570.08

we get almost to done we move the

572.8

goalpost

574.399

So the easiest way to think of scope

577.92

creep is moving the goalpost. Scope

579.68

creep is more about changing what done

582.64

is essentially or what completing that

585.839

requirement is or what that requirement

588.399

entails as opposed to going back and

592.08

saying all right we're going to we're

593.519

rewriting the requirement and sort of a

595.92

little bit of it's not starting from

597.279

scratch but if you get that idea it's

598.88

sort of the idea of instead of changing

601.839

the requirement when you're almost done

603.44

change the requirement before you step

605.04

into it and it is very much a a squishy

608.399

you know type of area, but I think it's

610.72

something that we do want to make sure

613.2

that we understand when there's there's

614.88

a difference between being flexible or

617.6

saying that, hey, this is a bad

618.959

requirement and rewriting the

620.079

requirements versus scope creep, which

623.12

is really like stretching that

624.88

requirement out and making it into

626.48

something that wasn't originally

628.16

intended to be. Like I said, this is lot

631.2

of places we can go here, so I'll be

632.64

interested to hear what are your

633.6

thoughts on this.

635.12

Yeah. So,

637.839

it's interesting with scope creep

639.36

because scope creep

641.44

can to me I've also heard feature creep

644.959

and feature creep to me is different

646.64

than scope creep but they're kind of the

648.959

same. Um,

651.36

and there are also you mentioned

653.44

requirements. So as like you gave a good

656.56

explanation about scope creep but with

658.8

scope creep as you're working on the

660.8

project as you're working on features

662.959

you can run into issues where a feature

665.519

that was agreed upon for the

667.2

requirements

668.8

if that was 6 months ago depending upon

670.88

where you're at in the development cycle

673.36

that feature might not be there anymore.

675.12

So you could even run into a place where

677.2

hey you're actually building something

678.88

that is not that meant to be there

681.44

anymore. So you've run into a

682.88

requirement change and you are

685.76

essentially

687.68

it's not necessarily scope creep but

689.12

you've kind of diverged. You've gone

690.48

down a path a rabbit hole doing a

693.12

feature that was agreed to initially but

694.8

isn't there anymore and that's

697.36

it it it is it is similar to moving that

700

goalpost but it is not just moving the

702.72

goalpost away. You've kind of oh instead

705.519

of going in the straight line you've

707.2

kind of gone around the town. you're

708.64

building a bypass when you need to just

710.72

build the tunnel through the town. So

713.6

that's one of the things you got to be

714.88

careful of with scope creep and feature

716.959

creep is you have to make sure that you

719.92

do regular checkpoints. Rob talks about

722.32

agile and scrum all the time and is

724.32

perfect for this. But a lot of companies

727.12

even though they're trying to do scrum

729.12

or maybe they're not even doing scrum or

731.519

agile, they run into situations where we

735.279

talk about this once

738.16

right up to tickets and then just go off

740.24

and expect the developers to do it. And

742.399

if you don't do regular checkpoints to

744.48

make sure that hey, are we on track? Are

746.88

these requirements still fresh or have

750.079

they gone stale? And you could

751.519

essentially end up with a different type

753.2

of scope creep being meaning that you're

755.04

working on a project that really doesn't

757.519

exist anymore or has changed so

759.36

drastically that your scope is you're

762

working on features that are outdated

765.44

and that sometimes is the case is that

767.839

you end up in a situation where you are

771.04

you're building to the wrong you're

772.639

building to the wrong target. Um, that's

774.48

where I do I I very much agree that it

777.36

is important to do those regular

778.8

check-ins to make sure that are we

780.24

agreed that we're working on the same

781.68

path. For example, if you think of of

784.24

driving on the road going from point A

786.16

to point B, it may be that there are,

789.04

you know, that along that road, it makes

791.839

sense to follow that road. Those are

793.6

the, you know, that is the features

795.279

essentially that you're going. The creep

796.88

may be somewhere along the way that

798

you're like, hey, we need to, you know,

800.399

take a bathroom break or something like

802.24

that. that is not really as much of a

804.88

feature creep as more of like, hey,

806.56

we're gonna go take three days and we're

808

going to go have a vacation somewhere

809.36

else is really the the effect of a a

811.68

feature creep or a scope creep. The next

814.959

one, how scope creep affects developers,

818.639

burnout from

821.279

uh burnout from endless changes,

823.279

confusion about goals and ownership,

825.519

missed deadlines and technical debt,

827.76

loss of confidence in estimates and

829.76

planning.

831.36

Oh boy, that is those are all actually

834.399

really good uh issues. I think I want to

837.68

go with the estimate side because I

839.519

think this is a

842.959

this is an area where it is it almost

845.279

becomes I mean I hate to say it this way

847.12

but it almost becomes the equivalent of

849.199

a self-fulfilling prophecy. I have been

851.519

in situations where you've got a

852.959

customer that is uh whoever the customer

856

is, it could be internal, it could be

857.199

external, however it is, they are

859.519

driving the product that we're building

861.68

software for this customer and they're

865.04

sometimes it's they're not totally sold

868.16

on it in the first place because they

869.76

think it's going to run over or it's

871.279

going to be late or it's going to slip

872.639

or all the politics that can happen. And

876.399

what ends up happening is in some of

878.399

these is you have people that are this

880.24

customer doesn't really know where

882.72

they're going. They don't really

884.24

understand what they want to do

886.8

and then they start feature creeping is

889.68

they basically scope creep says they're

891.6

say hey we need um you know it's like we

894.88

need this report. This is so often this

897.68

where it starts. We need this report. We

899.839

need these five items and we need them

902.16

displayed this way. Cool. All right, we

906

have it and now we're going to push that

908.16

out there. And they see it and they say,

909.6

"Oh, wait. We need this other piece of

911.92

data. Oh, can we summarize that data?

914.639

Can we add totals? Can we uh we want to

917.519

be able to sort stuff? We want to be

918.959

able to filter. We want to be able to

920.16

run this for certain criteria that

922

initially were not included. You know,

923.92

initially it was like we just want to

925.199

run it for dates." And they're like,

926.16

"No, we want to run it for dates, but we

927.68

also want to run it for specific

928.959

customer or only specific employees or

931.199

specific blah, you know, all of that

932.959

kind of stuff." And next thing you know,

935.04

this little ritty report that should

937.12

have taken 3 hours and maybe did

939.36

initially now has taken 3 weeks because

942.959

the goal keeps changing. Everything

945.04

keeps moving and now everybody's

946.24

complaining. It's like, hey, this should

947.76

have been done a long time ago. Yes, it

950.16

actually was done a long time ago, but

951.68

then everything changed and those

954.72

changes make they cost more to change

957.759

than it would have had they been there

958.959

initially. because now this stuff that

960.88

you built for you built the solution for

963.279

one thing and now there's all this extra

965.44

stuff that's gets added on and the next

967.199

thing you know you're in a a death march

969.44

because of a you know a report or

971.36

something like that. So I think those

973.279

are where it gets really frustrating on

975.759

both sides because the developers get

978.48

frustrated because their estimates are

980.079

crap because as soon as they put it out

981.92

there they're held to the estimate but

983.839

now the requirement they estimated

985.6

against is different and so they know

987.759

that they're going to lose. they know

988.959

that they, you know, or if they change

990.32

it, then it's like, why do you keep

991.519

changing it? Well, because the goalpost

993.68

keeps moving. And on the customer side,

996.56

they're sitting there going, "Why do we

998.16

even ask for estimates?" Because we

999.519

never get an estimate that means

1000.72

anything. They estimated 3 hours and now

1002.32

it's 3 weeks later. And so, you end up

1004.639

with this like everybody's pointing

1006.24

fingers and stuff like that. And so,

1007.759

scope creep can be very devastating in

1010.56

that kind of sense as far as just the

1013.12

trust, the estimation, the the planning,

1016.32

the milestones. Uh I'm I don't know how

1019.279

many projects I've been in that were,

1022

you know, failing or failures that you

1024.799

can point to changing requirements. And

1028.079

before I pass it to Michael, I will give

1029.76

the like the the epitome of bad like

1034.4

this is going to go bad in that kind of

1036.16

sense of bad requirements are these

1038.319

kinds of projects where somebody is

1039.76

like, hey, I need you to make eBay but

1044.24

for dog food, you know, or something

1046.64

like that where they they're like, well,

1048.64

just take this this thing and I just

1050.88

want to make it, but I want to make it

1052.08

slightly differently and that's the

1054.4

requirements or just use the existing

1056.72

app as a requirement. ments and just

1059.28

make something else that looks like that

1060.64

but only better. You know, there's

1062.32

there's too much wiggle room in there.

1064.32

There's too little definition. And so,

1067.2

whatever you're initially going to look

1068.48

at, whatever you're initially going to

1069.919

estimate, you're pro unless you're

1071.919

really really good at like mocking that

1074.799

thing up and spending a lot of time in

1076.799

that estimation phase and basically

1079.36

halfway building the solution or more,

1082

then you're going to miss it because

1083.36

you're going to have a different picture

1084.799

in your head. So that being said, where

1087.919

do you want to go on this one?

1089.28

>> Well, you kind of touched on three of

1091.2

the four bullet points, so I will go

1092.799

with the one you didn't touch on, which

1094.4

was burnout from endless changes.

1096.559

Because literally everything you laid

1098.32

out, you know, talking about the

1099.36

confusion about goals and ownership and

1101.12

missing deadlines and technical debt and

1102.799

the loss of confidence in estimating and

1104.64

planning, all those things lead to

1107.52

burnout. You know, from developers

1110

perspective, we've talked about being in

1111.919

firefighting mode. This is not

1113.6

firefighting mode. this is

1116.799

I am working on a ticket and you know

1119.44

I've agreed to the requirements of this

1121.36

ticket and it's only going to take me a

1123.36

day to get it done and next thing you

1125.28

know you are 4 days into it 6 days into

1128.88

it two weeks into it is like a

1131.36

neverending death march when the hell is

1133.919

this going to get done when are you

1135.76

going to quit changing the requirements

1137.44

of this ticket so that I can actually

1139.6

complete something which goes back to

1142.88

before you commit to a ticket. Make sure

1145.039

that your tickets or the requirements

1147.44

have a clear definition of done. What is

1150.4

it that they want? If it changes at that

1153.039

point, the ticket needs to close. Write

1154.559

up a new ticket and define what

1157.12

specifically it is that the new change

1159.2

wants. Trying to cram it all into one

1162.16

ticket is so much scope creep that you

1165.36

don't you basically start out with

1167.36

apples and you end up with oranges. You

1169.919

the ticket never is what it was at the

1173.12

beginning. Sometimes it is. Sometimes it

1175.44

is simply okay what we thought this

1178.799

change was going to be. You run into a

1180.64

blocker or a situation where you can't

1183.52

implement what it was or the way the

1186.08

ticket was written up. You can't

1187.76

actually implement it that way.

1189.44

Sometimes that requires a pivot and an

1192.559

update to the requirements of the

1194.24

ticket. Sometimes that happens. That's

1196.72

not necessarily scope creep. that is,

1199.28

oh, this should have been a discovery

1201.039

ticket because we found something that

1202.96

wasn't there. So, in a sense, you could

1205.52

keep that ticket open, re-update the

1207.6

requirements to what it needs to be, or

1210.559

really close that ticket, create a new

1212.32

ticket based on your findings as to what

1214.96

it is you need to do, and then focus on

1217.2

that reestimate on the new requirements.

1220.48

So, if you don't do this, you run into

1223.12

again those situations where you're just

1225.039

on that death march. You it's like

1226.72

you're working on it. You think you're

1228.4

done. Oh, you're told it's not done.

1230.799

Well, why is it not done? Well, because

1232.48

it needs this, this, or this. Well, that

1234.48

wasn't in the ticket. Well, it needs to

1236.08

be done. And you get into those loop

1239.2

back scenarios where you just can't get

1242.4

done. And burnout. I it it just is so

1248.4

prevalent that it it these are the types

1250.96

of tickets that will cause burnout. If

1253.2

you find yourself running into like low

1255.84

energy or, hey, I don't really want to

1258

do this anymore or, man, I've been

1260.559

really at this for a couple days, take a

1262.799

time out, take a step back, revisit the

1265.2

requirements of the ticket, and maybe

1266.72

have a quick conversation with your

1267.919

manager of like, hey, we need to reset

1270

this ticket. Either close this ticket

1271.52

and create a new one or really redefine

1274.4

what it needs to be done and get it

1276.559

done.

1278.88

>> Yeah. Sometimes that's the when you

1281.36

catch yourself in this situation that is

1283.76

the best thing is to just like take a

1285.28

deep breath step back and I' I've been

1288.96

in projects where we've done that as a

1290.88

group as a project group and said this

1292.799

is we're we're churning we're stuck in a

1296.72

rut something like that and it's better

1298.32

to say okay let's step back let's look

1300.4

at what we really want to get done let's

1302.159

reassess some of these things and maybe

1304.08

some of these things are a scope creep

1305.44

let's just define them say okay we've

1308.799

hacking on this thing for the last three

1310.799

sc sprints. Let's step back. Let's

1313.52

actually figure out what this needs to

1314.88

be or pause it for a while. Go move to

1317.76

something else while somebody else

1318.96

researches it so we can get something

1320.32

that is is much more stable. Um, in a

1323.36

short bit here because I don't want to

1325.2

go too long because this go really long.

1326.88

Stories from the trenches. Share real

1329.36

examples from your experience or

1330.64

listeners that one project that never

1332.48

ended or we rebuilt the same feature

1334.799

three times. The we rebuilt the same

1337.679

feature three times I'm going to say is

1342.96

something I have run into multiple times

1346.32

and it is a a warning that I have and

1349.84

this uh I've seen this in many types of

1353.28

projects the ones that happen a lot

1355.36

anything that requires mapping or

1357.679

integration

1359.2

that there is this danger that includes

1361.6

scraping projects that also recruits

1364.24

anything that's a an ERP, uh, a CRM.

1369.44

And the the problems with these projects

1372.559

that are scope creep kinds of things.

1375.6

Too often I found a customer comes in

1379.12

and they're really not ready for that

1381.12

tool yet. And when the implementation

1383.84

begins, the right questions are not

1385.44

asked and those don't surface until it's

1388.159

later in the project. And now you have

1389.679

to change things and sometimes rewrite

1391.919

things. I will just because this was a

1394.64

specific one. I'm going to I will talk

1396.159

about a specific project that was like

1399.2

this. We went in uh it should have been

1402.96

a very straightforward project should

1405.039

have been this is what it should have

1406

been done in three four weeks something

1408

like that. The whole point was the

1410.64

customer knew what their data was. There

1412.88

was a vendor that knew where that data

1415.12

needed to go. All we needed to do was

1418.159

pull the qu pull the data and then use

1421.12

the mappings that the vendor said we

1423.039

were going to use. Well, it turns out

1425.039

that the vendor really didn't know what

1426.559

the heck they were talking about. And

1429.84

they were counting on us to tell them

1432.559

where the data is supposed to go when it

1434.48

was like, "No, you're supposed to tell

1436.159

us. We don't know that system. We don't

1438

know your system. We're you're supposed

1439.84

to know this. You're the expert." That 3

1442.72

to four week project. Um I wrapped up on

1447.44

it I think nine months later something

1450.32

like that. We were still going through

1451.919

things. We had ended up changing

1455.2

multiple times how we approached it

1458.08

because the integration that we had

1460.159

built we were assured that this was

1462.32

going to work and then we found out that

1464.32

no actually that that the target product

1468.159

did not support that and then and it

1471.2

goes actually to a report as well. there

1472.88

was a certain report that they needed.

1474.32

They're like, "Sure, we're going to give

1475.44

you that, but they weren't giving it to

1477.2

them in the way that it was needed." And

1479.039

so, you ended up with all of these like,

1481.279

"We changed the mappings, we changed the

1482.88

approach, we changed the format, we

1484.799

changed the structure, we changed stuff

1486.88

over and over and over again." And it

1488.96

was one of these things that should have

1490

been a oneanddone, and we ended up doing

1492.4

it over and over and over again. And

1495.44

really it wasn't so I mean it was scope

1497.279

creep but the real problem was is that

1499.2

the scope never really got defined

1501.919

properly. Everybody was thinking

1504

somebody else is going to take care of

1505.44

it and it didn't. And so that is a

1508.559

warning. I will say that as a cautionary

1510.48

tale to any of these bigger kind of

1512.64

projects and integration kind of

1514.32

projects where there is the where you

1516.159

hear the word mapping involved then make

1519.2

sure that the people that are involved

1521.039

on the source and the destination of

1522.799

those mappings understand what they're

1524.24

doing. They're clear on who owns what

1526.4

and how that needs to go because that

1528.4

process doing the mapping often is the

1530.96

biggest time sync the biggest part of

1533.44

the development effort. The rest of it

1534.88

is actually pretty straightforward. is

1536.799

getting those mapping rights and any

1538.48

translations between the two

1541.6

uh in roughly 60 seconds or less. I

1544.4

guess I'll give you a little bit of

1545.44

time. So what's one give a if you can

1547.12

give a quick example from your

1548.48

experience.

1549.36

>> So it wasn't so much scope creep but

1554.159

illdefined expectations from a manager.

1557.36

Uh I had built a modulebased

1560.4

application. This was before containers

1562.32

and all this, but I basically built a

1564.24

containerized application that the

1566.24

manager likes so much instead of using

1569.52

the model and building on it. It was

1572.159

copy and paste the project here, spin up

1574.48

another project here, copy paste, do

1576.4

this. We did that six times and then

1579.52

when one feature that was common to all

1581.919

of them had to change, we had to go

1583.6

through every application essentially

1585.36

redo it multiple times instead of having

1587.52

one common application. It it was the

1590.64

worst. I don't want to say it was

1594.72

self-imposed scope creep by a management

1597.279

decision because if your software isn't

1600

built to scale or it's if you try to

1602.88

treat it like a cookie cutter, you could

1604.559

run into a situation where you get into

1606.48

those uh situations where the project

1608.32

never ends because one feature change

1611.84

based that they think is a easy

1613.76

requirement is not. It is something that

1616.32

really should apply. If you have six

1619.039

applications and it's a feature in all

1620.64

six, you need to take that and multiply

1622.4

it by six because it may not be a simple

1624.96

change.

1626.88

That is boy that is that is its own

1629.44

little problem there is that the idea of

1631.76

a simple change. Um too often I have

1635.039

seen that as you know oh this is

1637.12

something really and developers do it

1638.64

just as well where it's like oh yeah

1640.48

it's a simple and then it's not because

1642.64

it gets underestimated and it really is

1644.48

probably related to scope creep. Uh what

1646.88

is not scope creep is you sending us an

1649.039

email at info developneur.com. We have

1651.44

had that requirement forever. That is

1653.919

like that goes way way back. That goes

1656.32

back dozens maybe hundreds of episodes.

1659.84

Love to hear from you. Give us your

1661.44

feedback. What do you think? What do you

1663.6

like? What do you dislike? Uh and

1665.84

obviously with any of these, what are

1667.919

some examples you'd like to throw out

1669.36

there? Because the real world stuff is

1671.44

always very useful to us. And even

1672.799

though it may be, you know, we may be on

1674.64

to a different topic, it is uh we always

1677.76

can find time if we need to. If you have

1680

something interesting, we will swing

1681.679

back around and just bring that up and

1682.96

say, "Hey, by the way, here's a

1684.399

flashback or we can use it as bonus

1686.799

material for the YouTube side." So those

1689.12

of you that are on the a out on the

1690.96

audio version listening to podcast, we

1692.96

also have the we have our YouTube

1694.88

channel developing our channel and we

1697.12

have all the stuff out there. We always

1698.72

have uh pre and post show stuff

1701.44

including every show we end with bonus

1703.919

material basically unless we started

1705.6

with a ton of bonus material then we

1707.12

don't double up too much. You can also

1709.52

reach us at X uh there's developer

1713.12

developer.com is the best place to go

1715.84

out on that site. You've got access to

1717.6

all of our content, all of our past

1718.96

episodes, all of our if you want to go

1720.72

out to YouTube and look at it there. Uh

1722.799

all of our presentations, just tons and

1724.88

tons and tons and tons of content. It is

1727.52

amazing how much stuff is out there. I

1729.52

look at it sometimes, I'm like, "Oh my

1730.96

gosh, we have I've forgotten more stuff

1734

than we have, you know, than I can think

1735.44

of that we've put out there." So, check

1738.399

that out. Uh Facebook, we have a

1740.72

developer page. Wherever you find our

1743.76

all of the fine podcast products, you

1746.24

can find uh developing our podcast. If

1748.32

you find somewhere and you're not

1749.6

getting it, let us know. We'll make sure

1751.039

we get hooked up there. That being said,

1753.84

we do appreciate you and your time. Go

1755.76

out there and have yourself a great day,

1757.44

a great week, and we will talk to you

1760.399

next time.

1762.64

Bonus material. Uh I am going to go do

1766.08

like a super fast read through these

1768.24

because we didn't get really far at all.

1771.039

Uh, so four and I and then just pick one

1773.76

whatever and you got in front of you. So

1775.2

you can pick something where you want to

1776.32

go after I read through this and I'll

1777.84

see what I want to do. How to recognize

1779.2

scope creep early subtle warning signs.

1781.2

Can we just add one more thing? Frequent

1783.679

changes without updated timelines. No

1785.52

clear acceptance criteria or

1786.799

documentation. How to put push back

1788.799

without burning bridges. Soft skills for

1790.88

saying no constructively. How to involve

1793.12

project managers or product owners when

1794.96

and how to renegotiate timelines or

1796.64

budgets. Process and tools to prevent

1798.64

it. Define scope up front. Clear user

1801.6

stories. Definition of done. Agile

1803.919

board. Sprint planning. Change control.

1805.76

Versioning. Milestone check-ins and

1807.52

backlog management. Documenting

1809.6

assumptions. Mindset shift. Treat scope

1812.399

creep as a symptom. What is the client

1815.039

client really trying to say? Use it to

1817.12

improve product vision or communication.

1818.88

Good scope change is not the same as bad

1821.279

scope creep. Developer tips. Personal

1824.159

tactics at work. How to manage energy

1826

and focus in evolving projects. Keep a

1828.08

change log or scope journal. Estimate

1830.24

with buffers. Create your own guard

1832.08

rails as a developer. Uh there's a lead

1834.399

magnet called action ideas. And we will

1837.039

go with oh bonus segment ideas.

1838.72

Roleplay. Clients asked to change scope

1840.559

midsprint. How do you respond? Q&A. Take

1843.039

listener questions about real life scope

1844.72

chaos or tool highlight tools like

1847.2

notion linear or jira that help. So what

1850.24

do you want to throw out there for your

1852.08

bonus?

1853.679

>> Uh where was it? Um yeah. So, I like the

1856.64

process uh where is it? Process tools

1860.799

six. There it is. Process and tools to

1863.12

to prevent it. Which kind of goes with

1864.799

the bonus thing, you know, agile boards

1867.279

like Miro, um Atlassian, uh Jira,

1872

Trello. Use boards, use storyboards,

1876.72

write up, you know, kind of brainstorm.

1879.279

Don't just go into writing tickets

1880.88

sometimes. Sometimes it takes walking

1882.559

through the idea. Um, a lot of times

1885.679

when I'm working with managers or

1887.919

customers, I will pull out a sheet of

1890

paper. I'll pull out my iPad. You know,

1892.48

you bring up some type of drawing tool,

1894.32

notepad, whatever, and you just start

1896.159

kind of flowing through your ideas. You

1898.08

draw it out, or you just kind of walk

1899.679

through scenarios and situations on how

1901.919

the application's going to work. So, you

1904

can kind of flush out the direction or

1905.76

the feature that you're trying to build.

1908.64

So, there's a lot of things out there.

1911.84

find what works for you, but sometimes

1915.039

pen and paper work great or just simple

1918.08

like notes or notepad and just start

1920.72

kind of typing out your thoughts or just

1923.84

um if you use ASKI docs or markdown,

1927.44

throw up a little markdown script as

1929.679

you're writing out u kind of the

1931.919

requirements and then translate that

1933.36

into a wiki that you have for your notes

1935.519

for your developers.

1939.2

Yeah, I think I want to those are those

1941.679

are all great and I think I want to sort

1943.279

of that leads well into what I want to

1945.76

talk about which is not specifically

1948.159

mentioned but is a clickable demo. Uh, I

1952.32

have found that this is a great way for

1956.08

you to get stuff in front of your

1958

customers much like, you know, drawing a

1960.399

picture and things like that, but it's

1963.279

also a way to get it in front of them

1966.08

and and make it real. Yes, it's nice to

1969.84

use uh Figma and all those kinds of

1972.32

stuff and build these things out and do

1973.6

them pretty and sometimes you can do

1975.2

that and put enough information into it

1978.08

to give them a good clickable demo. But

1980.399

what I like about one that is a what

1982.32

I'll call a

1984.399

evolving or a true clickable demo, one

1987.12

that we often use is that we actually

1989.12

build the demo. And this is a framework

1992.64

going forward. So what they're going to

1994.48

see is they're going to see the

1995.679

evolution, especially in agile, this

1997.6

works great is they're going to see the

1998.72

evolution of the solution of the

2000.88

application and you're going to be able

2002.559

to put it in front of them. You're going

2003.519

be able to get them a feel for what is

2006.08

it? What is it like to sit there with

2007.76

this application? What is the navigation

2009.44

like? what is some of the get some

2011.519

sample data in there so it starts

2013.2

looking real to them because those are

2016

the things that then they're going to

2017.12

say well wait a minute I don't see this

2020.159

or that value is never going to look

2021.919

like that or that could never be exist

2024.24

with that over there

2026.64

those things are invaluable to avoiding

2030.96

scope creep or at least getting the

2032.32

scope creep covered sooner rather than

2034.88

later so I think highly recommend it if

2037.76

you have not done it, then give it a

2040.88

shot. Uh, it's a lot of people are big

2043.2

on the whole MVP thing and and stuff

2045.6

like that. That's really not that far

2047.919

off from the idea of a clickable demo.

2050.639

Um, as always, if you want to if you if

2054.079

you wonder how that will look, shoot me

2055.919

an email at info developer.com or like,

2058.159

you know, hit me up on the RB-SNS site,

2061.599

schedule a call. I I have no problem

2064.24

spending 30 minutes sitting down with

2065.599

somebody and just saying like, here's

2066.96

some things you can do. here's some

2068.159

questions you want to ask. Here's how

2070.079

you want to approach a clickable demo

2072.72

because you're not necessarily going to

2073.839

spend you're not going to get everything

2075.04

done at once. And there's definitely

2076.56

concerns in there about like having

2078.32

something that's too ugly or too pretty

2079.919

or not complete enough or too complete.

2081.839

And there's there's a lot of caveats on

2083.679

in that. But happy to try to get more

2087.28

people to do this and get better at it.

2090

Uh because also I think it'd be nice for

2091.679

customers to have more of a feel like

2093.359

what to expect in a clickable demo,

2095.919

which is one of the key things you have

2097.28

to do is set those expectations up

2099.28

front. Just like we try to set

2101.28

expectations to have like a certain

2103.52

amount of length for our episodes, and

2105.76

we're not terribly good at that. I mean,

2107.2

I guess we're within 15 to 45 minutes an

2110.4

episode over the all of these. So, we

2113.2

have some reasonable faximile of of a

2116.079

standard, even though we do move them

2117.52

around a lot. But we appreciate your

2119.599

time whether we go a little short or a

2121.839

little long. We are going to wrap this

2124.24

one up and we will be back before you

2126.72

know it to run into our next episode

2128.56

where we're going to continue learning

2129.76

more about how to build a better

2131.2

developer with AI. Well, really just

2134.32

some AI input on our thoughts, but you

2136.72

know how it goes. As always, appreciate

2138.56

your time. All that you have done to

2140.24

just like hang out with us. Feedback is

2142.72

awesome. Love you guys. Have a good one

2144.56

and we will talk to you next time.

2148.87

[Music]