📺 Develpreneur YouTube Episode

Video + transcript

Software Development Requirements: Staying True to Specifications

2024-05-30 •Youtube

Detailed Notes

Welcome to another captivating episode of "Building Better Developers." Join your hosts, Rob Broadhead and Michael Meloche, as they delve into the intricate world of software development and share their hard-earned wisdom from the frontlines. Today's topic is a familiar challenge that developers often face: the delicate balance between adhering strictly to software development requirements and unleashing one's creative prowess.

Read more: https://develpreneur.com/software-development-requirements-staying-true-to-specifications

Stay Connected: Join the Developreneur Community

We invite you to join our community and share your coding journey with us. Whether you’re a seasoned developer or just starting, there’s always room to learn and grow together. Contact us at [email protected] with your questions, feedback, or suggestions for future episodes. Together, let’s continue exploring the exciting world of software development.

Transcript Text
[Music]
and so I'll do this so that you can cut
this real easy
and we'll do a 3 two one and then
hopefully you can Tech check that out as
well so welcome back we are just
cruising right along and thinking about
our next episode uh one of the things
we're doing is we're playing around with
some actually utilizing you uh just
behind the scenes stuff utilizing some
Ai and other editing type tools to see
if we can find ways to more easily and
automatically edit the uh the cuts from
episode toep episode and where we start
and stop our uh our podcast which we've
talked about that we had an episode a
while back how you can use Visual and
audio cues that are going to be things
that are going to help you in that
editing process but right now we're
going to think about our uh we're going
to do our brainstorming process and
figure out what is our next topic that
we want to cover for the podcast once
again you can see that we spent a lot of
time going into this behind the scenes
beforehand we've really scripted this
sucker out and you know we know exactly
what we're going to say or
not thoughts for this episode so the
last one we kind of talked about you
know the Don't Panic
situations talked about communication
last week we've got a little bit of
Theos what was that have we touched on
silos
uh we probably have but we can
definitely touch on silos what are you
thinking uh I was thinking like
communicate like interdepartmental
Communications like we've talked about
software working with our teams working
with the customer but we haven't really
talked about working with multiple teams
within an
organization
oh yeah that becomes a that's an
interesting like hand you like talking
about like handoff points and stuff like
that kind of um and kind of working with
different departments like collabor
collaboration with different departments
and the customer like in some
cases for example in my current position
I don't ever see my end customer I don't
know who they are what they are I have
an idea what they do based on what our
requirements are but we never see them
so we're kind of writing in a
vacuum and we have QA we have marketing
people we have sales people but we're
kind of heads down we have our product
manager and product owner and that's
it well those are yeah that's that's
actually
it's that's almost with blinders on
that's actually like coding when you
don't get the W you don't have it's just
coding the requirements at that point
it's a and that's where you just sort
of that goes that really goes
into I think what we touch on them
regularly is sort of like the you know
you're going to have to ask questions
when you get requirements if a lot of s
you got to you got to read through it
think through it and then you got to
make sure you're asking questions about
it like okay like this is what the
requirement says but what does that
really mean as far as like you know what
kind of what are the constraints you
know and it's it's really walking
through a requirement and how do I know
what a requirement is how do I Define a
requirement how do I vet or test a
requirement and then how do I translate
that into you it gets into the
development side of okay how do we take
that and and implement it and because
our biggest problem is we literally have
to write to the requirements like
correct we can't add anything and if
it's implied we have to go
back yeah that's a
um I think that's probably a good one is
is we could talk about writing the
requirements when it's writing to
requirements and this actually this
actually gets
into um like fixed bid and other things
like that is it's like okay what where
do I stop what what makes this a
requirement and and it does I think
really gets into like you know you take
it word for word um but I think that's a
good one is is handling those situations
so and if it's not all right we'll have
a crappy episode but I I think we'll
find a way to make it work hello and
welcome back we are just cruising run
along in season 21 I do believe it is of
the building better developers
developing or podcast we are into a
season where we're this season we're
really just going through some of the
trials and tribulations that we have as
developers myself I hit them on a
regular basis my name is Rob Broadhead
one of the founders of develop andur I
also am a founder of RB Consulting and
go out and do software development all
the time and so that's where I run into
some of these Road bumps and such one of
which we're going to talk about today
which we're going to get into
working specifically towards a
requirement like fulfilling to the
letter in a sense a requirement but
before I do that one of the requirements
is that iow Michael to introduce himself
on the other side so go ahead and do
that hey everyone I'm Michael MOS I'm a
co-founder of develop preneur and
founder of Envision Q8 where we help
small Healthcare clinicians and small
businesses uh build software and test
their and improve their software through
testing so this is a I want to talk
about this time is a actually is one of
these things it could be a very big
topic but we're going to narrow it down
and the idea originally we talked about
and those that are because we do have a
YouTube channel you could watch us as
well as listening to us uh those that
were listening watching beforehand
though that we we got into this a little
bit because it started at building stuff
in silos and this is you know when
you're building software and you don't
have access to the End customer where
you're
software is basically down to your
writing code to requirements it's not
really a developer side this is almost
going backwards it's not better
developers these are people that are
just and sometimes you have to do this
because sometimes it's a fixed bid
project or there's certain priorities
and things like that and maybe you don't
know all of them but they've listed them
out effectively in the requirements
they've given those to you and said we
need to do a b c d that's it that's this
is the challenge is because we usually
are going to look at AB c and d and
we're going to have a vision and it's
not going to be the same as what they
have and as we get into it we're going
to see because we're developers we're
going to see where we could do this or
we could do that or we could do this
other thing one of the most frustrating
customers I've ever had was one that did
not want us to change the code other
than exactly the minimal changes to the
code to do that task and the code was
atrocious and they knew it it was like
there was all kinds of CRA it was like
it was hard to read Because there'd be
like there'd be two lines of code and
then there'd be five blanks lined and
then a line of code and then there a
couple blank lines and then a line of
code and then sometimes it'd be spread
out and some it all be jammed up just
visually it made you like your head spin
a little bit and they knew this but they
didn't want to change
anything and you may be in those
situations maybe you're like DOD or
something like that where it's like you
don't know why you're doing it all you
know is that this is the
requirement and so those are the
situations I want to talk about today is
when you have a requirement or you know
a hard list of requirements like this is
the task you're supposed to do this gets
into something that's very near and dear
to Michael's heart because he mentions
it probably every episode
is look at the requirement and then make
sure you clearly understand it do not be
afraid to Kickback questions what
however you can do those to say okay you
gave me these requirements but here's
some things that I need to have
clarification on you're not saying that
their requirements are no good or that
they can't be done or anything like that
what you're trying to do is you're
trying to make sure that you understand
the scope and the
context and then when you get and so
that should give you the start is make
sure you understand very clearly if you
can don't be like sometimes the best way
to do it is to essentially verbalize
back whether it's through an email or
whatever to say okay you sent me these
requirements and so you basically
respond back with the design or
something along those lines that say
okay this is what I'm going to build or
this is what I'm going to code or this
is what I'm going to create it's going
to do this and this and this and it may
be that that's there maybe that's you're
just adding to that ticket because
you're saying okay let's make sure that
I know what the uh the criteria are to
say that it's done what are the
validation criteria to say that this
works what are the things that this you
know what are the various inputs and
what are the acceptable outputs walk
through that data this is where you have
to get really
detailed because what you don't want to
do is anything that's beyond what's in
that requirement because you don't know
and I will tell a nice little story too
this is a shared person we know you
don't know what effect that's going to
have on something else so if you go
outside of the if you color outside of
the lines in a situation like this it
could be a problem
now I'm going to give you an example
that is more than you probably are going
to get into in this kind of situation
but an example of not of going outside
the lines we had a situation uh somebody
that we were working with a developer
the the requirements were pretty simple
it was we need to we need to give a
response we need to have a popup I think
it was a popup window or it was a you
know message bar kind of thing that says
that when you you know save something or
edit something that you get a response
back that says hey you know I saved it
you know this has been saved this is
this was a successful transaction that
was essentially the the gist of it it's
like hey on this application we've got
five places that we do these actions we
need to have some sort of we need to
have a confirmation so the user knows
that it you know that it
occurred guy that did this developer was
like young and go getet her and wanted
to show stuff off so first off he turned
it into a little popup window cool okay
you want to do a pop window instead of a
status bar that's all right that's fine
that wasn't in the requirement that
still works that shows them something
now the problem is starting with just
that window is that now that means
somebody may have to click to continue
on and maybe they don't want to do that
so if you're thinking about that don't
do it unless there's something implied
and or ask a question and say hey I'm
thinking about doing this with your
original design say this is what I'm
going to do let's make sure that this
conforms to the requirements if it
doesn't say give me a popup if it just
says show us status then you just show
us status on the screen in some way form
or fashion don't add the popup error
number one error number two is his popup
was in text that was like little blinky
lights that nobody likes Blinky lights
they did in like 1970 when there was a
first web page came out when Al Gore
created the first web page since then
nobody wants little blinking lights
around their
messages so that was also an error
because it's like you can do it but that
doesn't mean you should the other thing
he did which is actually a really
interesting little tweak that we need to
consider along with the pop-up box is
that he had it fade away after five
seconds is it would flash the text up
and it would fade away and everything
would go away so if you turned away if
you hit save and you turned away and you
look back you may not see that message
at
all our boss read him the riot act over
that stuff because he's like I don't
like these I don't like this look and
you can't do that because people aren't
going to be able to see it and it it
totally blindsided him because he was
going into a meeting thinking he was
goingon to get a big pat on the back and
a I don't know Kudos or Rays or promoted
to CEO or whatever it was he thought it
was all good our boss did not ripped him
a new one and it is because and it's his
fault and it's it is his fault because
he had requirements and decided to color
out of the lines and that was not part
of it now if you're a designer if you're
something where they say hey go make
this work we want you to build something
that impresses us then you may do some
of that but even then even if you're not
in a silo think about what may impress
those people or ask them about it or
give them some options so that you're
not putting something in front of them
that they end up not liking because you
don't want to spend a lot of time
building something that isn't going to
work or isn't going to fit the
requirement ments so look at the
requirements be clear and then if you
have an itch to do anything that is not
part of the requirement it's like it's
it's like the old what would Jesus do
it's like what would the requirement do
look at the requirement and say does
that thing that you're building does
that exactly match the requirement and
if not don't do it ask a question see if
this is needed or or if you're trying to
help them say would it be helpful if we
can do that because sometimes you're
going to clap back and say no sometimes
they're going oh I didn't think about
that yes let's adjust the requirement
your thoughts on that while I close
windows that are being rained in on yeah
so the first thing that came to mind on
that I I I know I keep bringing this up
but it goes back to that um swinging
roller coaster cartoon that's on the
internet for software development where
it the initial request from the user is
they want a tree swing and it goes from
every concept of wooden plank swing
putting it on a tree cutting the tree in
half building for a roller coaster not
supporting it
Etc requirements are important but the
other thing that's interesting in this
conversation is Rob mentioned is if you
are doing this as a fixed bid or you're
doing this as a contractor or you are
working in a silo for an
organization anything you do costs time
which cost you money so if you have a
requirement that really should take five
minutes and you spend an hour because
you do all this extra stuff that the
customer didn't ask for one yes you
might impress them but two you just did
a whole bunch of work that you're not
going to get paid for the other flip
side of that is anything you work on
make sure you understand what it is that
you're trying to do as Rob mentioned we
had this friend that did the little
popup
window think about the user experience
as well as the requirements is what
you're going to do going to impact the
end you user in a positive way or in a
way that meets the requirements because
you could do something that is really
cool really neat within the scope of the
requirements but still not meet the need
of the
customer so I wantan to I do want to hit
on that one thing that that Michael
mentioned because it really is it goes
back to these when we're not in uh as
Silo when we get
assignments part of the thing that we
look at from the requirements is um
which is very helpful for us as well
feedback and estimate if they haven't
given you an estimate then feed
something back of hey this is going to
take an hour two hours a day a week
whatever it's going to be or look at and
take into account what their estimate is
if they give you something and they say
okay here's your work for the week then
you know that they're expecting it's
going to take a week that can help you
figure out how much you're supposed to
add in even if it's not an as Silo and I
have dealt with this a lot of times with
people as a as a manager as well of
developers is to say okay this is what
you're going to do I'm expecting it back
today or in an hour I don't expect I
expect you get these 10 things done
today so that should help somebody know
or help you know if there's like you
know it's like this is your daily to-do
list if you're stuck on you if it's got
five items and you're stuck on the first
one for seven hours probably not going
to get it all done unless those other
things are super easy so one if there's
something that seems like it's going to
blow up that it's like that you're
chasing it it's like this seems way more
complicated than I thought it was don't
be afraid to feed that back and say hey
this is this is a concern this is not
where it's supposed to go that's part of
this part of why agile is what it is
when you do a daily standup and say hey
this was supposed to be you know two
days of work roughly I'm into my my
whole first day and I'm not even nowhere
started on this things like that is feed
that back because it may be that either
you've misunderstood the requirement or
the people that are creating requirement
may not understand what that means and
particularly with a customer this may be
something like oh if it's going to take
you know I thought it was just going to
take you five minutes if it's not going
to take you five minutes I don't need it
there's you it allows people to properly
prioritize and it helps you to think
through like what is really expected out
of this if if it's something where
you've got like you know very strict
requirements and it's it's you know
something where it's like oh that's pin
lines a code if I do it a certain way
then it's like okay and you only have
time to do those 10 lines of code then
that's what you do now obvious yeah
obvious well it's not obviously but it
should be included that you're going to
have you know you're going to do some
testing and some validation and stuff
like that as well so nothing gets done
like that at least not completely done
um but that is a that is a really
important thing to think about is what
is the
the scope and the expectations of what
you're building as well because you
don't want to be in a situation where
you run especially these days with the
the mobile development kind of stuff we
do the remote development that we do
where we're out there somewhere we get
some requirements if we go away for a
week and come back and we're nowhere
close to end but they thought we were
done with those requirements four days
ago then that's going to be a problem so
we want to make sure that we're clear
also on uh the scope and the level of
effort that's going to be involved with
what we do
and with that also something we haven't
really talked about here you know if
you're in this Silo environment you
might not be the only one the software
you could be working on could have
multiple different teams multiple
different silos working on this
application so your potentially your
changes could impact someone else or
someone else's changes could impact you
so understanding the requirements and
understanding how that interacts not
necessarily full big picture but a
bigger picture as the to the why we're
doing this does make sense unfortunately
in some situations you don't have the
capability of asking that why you can
only really get into the requirements as
to all right what is within the scope of
this ticket what am I doing you know why
is this needed not necessarily why is
this application needed but within the
functionality that you're working on you
need to forcefully not forcefully but
you need to uh at least understand and
be forthcoming with the person who's
requesting the changes that could be the
project owner that could be your boss
you know it could be another developer
it could be a bug ticket that was
reported but make sure you understand
what the issue is what the requirements
are are there any screenshots are there
any scripts to kind of lay out how to
test this you know is this a user
interaction is this a web page uh is
there any diagrams to kind of help you
understand how it's all put together and
then from there then you can give an
estimate now if you're new to this game
you're going to be wrong a lot you're
going to be behind the ball so make sure
you give yourself time at least on the
first few assignments to really
understand what it is and how things
work within the organization as you
build up your skills you're going to be
better at estimating those times but you
know even us season developers you know
we can miss something because we don't
have a requirement this 1H hour change
can now take us a week that because
whoops we need this third party API or
we need this integration piece oh that's
not done yet well we can't move forward
we can build something to you know to
stub that but that still takes time and
that was time that was not considered in
the initial requirements and that's
actually a good the working as a team is
part of that as well is because
sometimes you're going to be given
something and there is an expectation of
when it's going to be delivered and you
may look at it and say Hey you know I'm
going to deliver it a little late but
I'm going to add so much extra stuff to
it that it's going to be worth it you
don't have the you may not have the
ability to make that decision because
what may happen is that your piece has
to be done by that time because somebody
else is waiting on it and so if you
delay then it causes somebody else to be
delayed and then somebody else to be
delayed and you can throw a lot of stuff
off schedule if you start you know sort
of going off on your own so it's it
really is this topic really does cover
the it's almost like the reverse of
building better developers it's it's
being a better developer as a team
player but it's really when you're in
situations and we all will hit those
sometimes where it's like we just need
to be a coder yes we want to build all
you know we want to have all this
knowledge and experience around the
solutions we build but sometimes it is
it is not that we're building something
better it's that they need us to build
it faster because we can write that code
quickly we can do it simply we can get
there get in and get out and not be
doling around and it's not that they
need our ability to write the coolest
most flowery awesome solution they need
us to write one quick that works that we
can verify and then move on and so
understand the context of what you're
doing and that will help keep you out of
trouble final thoughts on
this yeah the the biggest thing I kind
of want to leave as a takeaway
is as you're working your tickets or if
you're working these contracts
independently or fix bids on for
customers take the take the requirements
take the job take the ticket that you
need to work on understand what it is
you're being asked to do make sure you
stay within the focus of those
requirements and what the usit accepted
criteria is don't go outside of the box
in these situations don't add too many
bells and whistles stay focused work on
the task at hand and get the work done
within the time
frame and we're trying to get our work
done within our time frame so we're
going to try to we're going to wrap this
one up and a respect your time as always
you can shoot us questions at info
developer.com you can check us out on
Facebook you can check us out on
LinkedIn you can check this out on
YouTube you there's lots of places out
there uh wherever you wherever you do
podcasts we're out there and if not let
us know they should already be there but
if not we'll add ourselves to the stack
uh as always looking for comments
questions recommendations requests
things like that anything any feedback
we' love to have because this is as much
for you as it is for us actually more
for you than it is for us because we're
just you know going through and and sort
of venting a little bit at the end of
the day and trying to help out some
others so that we can essentially be a
cautionary tale as others so that our
mistakes are not repeated or at least
you know that you're you know if you
have already done those mistakes you're
like hey I'm not the only one these guys
do it as well and probably a lot of
others that being said we'll let you get
back to your day go out there and have
yourself a great day a great week and we
will talk to you next
time bonus material anything that you
got on this one I apologize because like
parential rains came in by the time I I
had a window all open because it was
blowing before the storm and it was
awesome by the time I got over there I
had like two big hand towels it just got
soaked because it had just water was
just pouring in I'm like great that's
what I needed right in the middle of the
call so luckily you did a good job
vamping through that
part and for those you still listening
you know always check your weather
reports before doing
podcast especially if
you I had a house full of people I
figured worst case they'll get it but it
was like it came up like that and
they're already scrambling all over and
I'm hearing it come down and I'm looking
over I'm seeing water almost like come
sideways into the window I'm like all
right I got to get this taken care of I
had the flip side of that I had the
lightning storm come in right before the
call where I thought I was going to have
power luckily I don't think I've seen
the lightning we just get rain right
here all right we digress back to the
topic so final thought on this
particularly so we've talked about in
past podcast you know tools things like
jir project management tools test
management tools when you're dealing
with something like this those kind of
pop into my mind because if you're
working to requirements if you're trying
to get these tasks
done you may not always have the big
picture but you do have your ticket
history you do have your code change
history and you can look to see how
things are being done the way they're
being
done and so as you're working new
tickets or finding new bugs throughout
the system you can kind of see how how
things are done and also kind of
organize your thoughts in a way to keep
them concise so that you don't go
outside the box too much so you're not
adding too many extra bells and whistles
to an application that doesn't need it
and this actually you know we
we we phrased this
around uh fixed bed projects and silos
and things like that but this is also
something I've run into with customers
from a Consulting point of view is that
some sometimes they they're paying you
to do that there is and even if it's an
employee if you're like you know if
you're a salaried employee you are paid
to get things done and if we go too far
a field then we're sometimes we're
wasting that money we're wasting that
time we're wasting what they're paying
us to do um and it's like you I know
that it's easy for developers to be like
yeah this is sort of fun this is awesome
I love this little rabbit hole but you
sometimes have to rein yourself back in
and say that hey this is this is costing
them so either like you know if like if
I'm going to punch off the clock and
then do it okay fine but otherwise if
I'm doing this because I'm sitting at my
office at work and I've got an eight
hour day and so I'm going to like do a
couple of fun things and and part of
that and add into it
then you're not being the best H manager
of the time and what these people are
giving you so this also goes back and it
it really comes full circle back to when
you get requirement
those you want those even in a a less
structured a more
open-ended U solution or application is
to give feedback on that take a look at
that get an idea of what really does
besides the requirements what satisfies
the goals there even if you do have
somebody you're talking to make sure
you're clear on what they're looking for
and what level and things like that and
don't be afraid to use like proof of
Concepts or or MVPs or clickable demos
or something to basically say okay this
is what I'm expecting to build does this
match your expectations now it may be
that it's way over what they do and they
want that they're like oh that's great I
never thought about go for it but it may
be that they said no you are you're
giving me a a you know a Mercedes and I
want the Yugo I want the Kia or whatever
it is you they I want a ble I don't want
that big you know honking thing that
you're building so just because you can
doesn't mean you need to and even if a
customer comes to you and they
say I have a million dollars to build
this application do not build the
application to the million dollars you
build the application and the
requirements and ideally you get it done
in half a million dollars or something
like that and they love you because you
didn't just go through a ton of their
money if you can do that that is part of
being a building a being that better
developer is delivering somebody not
only more features than they expected
but a better solution overall faster
lower cost on time you Works
maintainable scalable all of those bolds
and and those kinds of things so that
you are actually building better
software for them give them a better
deal and they will come back to you they
will recommend you to others so don't be
afraid of like oh I you know I gave up a
half a million dollars on that project
cuz I could have just you know gouged
them for a million and they would have
never blanked don't take that route take
the high road take the the proper Road
you'll be happier for it they'll be
happier for it you will have a better
career for
it any other thoughts before we wrap
this one up wow that's major bonus
material there it kind of falls into the
are you being busy for busy's sake or
are you on task are you doing the job at
hand because you know if you have a one
ticket to work in a day you have eight
hours in the day and it's a 5 minute
ticket chances are you're probably going
to take eight hours to get it done
because you have to show that you have
an eight hour day be smart be lethargic
do the work in five minutes and then go
talk to your boss and maybe do a PC
maybe go do something fun or you know
get approval to do something else cuz
maybe there's something else uh another
hot button ticket that needs to be
worked but stay on task you know don't
just be busy don't just fill time get
the work done and keep moving things
forward yeah it helps a lot to do that
because it's going to if you're if
you're pushing your boss if you're
pulling for more work from them because
you're getting stuff done faster than
they expect it then yeah sometimes that
can be a pain because then that just
means they're going to start really
piling stuff on but that means you're
going to have a busy day you're going to
be more productive and when you get to
the end of the when you ever get to the
review period then they're going to love
you that's like they're going to be like
you're the go-to person because you do
that for
them for now I think you guys can go to
whoever your go-to person is my go-to is
going to be like I think dinner and a
drink or something like that so we're
going to wrap this one up and uh maybe
mop a little bit up here as well
depending on how well I did during this
this episode so thank you so much as
always you know check for Stuff of the
show notes leave us likes comments
subscribe all of those fun things that
people always ask for and we always
forget to do and uh just keep an eye out
because we're going to keep cranking
these suckers out we will keep dropping
them every Tuesdays and Thursdays both
the podcast and the uh YouTube
recordings go out we do occasionally
throw some other stuff out on the site I
mean the stuff all goes out developing n
site but also there are
the uh the blogs that occasionally get
thrown out there we do have a newsletter
feel free to subscribe to that I think
I'm about a month behind but I will get
the latest update on that out uh it's
just been one of those months that being
said once again you guys as well go out
there and have a great day and we will
check you guys out next time around
[Music]
Transcript Segments
1.35

[Music]

28

and so I'll do this so that you can cut

29.4

this real easy

32.399

and we'll do a 3 two one and then

34.399

hopefully you can Tech check that out as

36.2

well so welcome back we are just

41

cruising right along and thinking about

42.96

our next episode uh one of the things

44.879

we're doing is we're playing around with

46.32

some actually utilizing you uh just

48.8

behind the scenes stuff utilizing some

50.92

Ai and other editing type tools to see

52.96

if we can find ways to more easily and

55.359

automatically edit the uh the cuts from

59.239

episode toep episode and where we start

61.239

and stop our uh our podcast which we've

64

talked about that we had an episode a

65.519

while back how you can use Visual and

69.36

audio cues that are going to be things

70.84

that are going to help you in that

72.32

editing process but right now we're

74.92

going to think about our uh we're going

76.52

to do our brainstorming process and

78.52

figure out what is our next topic that

80.6

we want to cover for the podcast once

83.32

again you can see that we spent a lot of

85.119

time going into this behind the scenes

86.64

beforehand we've really scripted this

88.079

sucker out and you know we know exactly

90.4

what we're going to say or

94.24

not thoughts for this episode so the

96.92

last one we kind of talked about you

98.68

know the Don't Panic

109.84

situations talked about communication

111.92

last week we've got a little bit of

116.56

Theos what was that have we touched on

119.2

silos

121.52

uh we probably have but we can

122.759

definitely touch on silos what are you

124.52

thinking uh I was thinking like

126.84

communicate like interdepartmental

128.8

Communications like we've talked about

130.72

software working with our teams working

132.76

with the customer but we haven't really

134.48

talked about working with multiple teams

136.76

within an

138.56

organization

142.44

oh yeah that becomes a that's an

144.879

interesting like hand you like talking

146.599

about like handoff points and stuff like

148.319

that kind of um and kind of working with

152.4

different departments like collabor

154.8

collaboration with different departments

156.16

and the customer like in some

158.56

cases for example in my current position

161.599

I don't ever see my end customer I don't

163.84

know who they are what they are I have

165.76

an idea what they do based on what our

167.68

requirements are but we never see them

171

so we're kind of writing in a

174.84

vacuum and we have QA we have marketing

177.56

people we have sales people but we're

179.84

kind of heads down we have our product

181.36

manager and product owner and that's

184.2

it well those are yeah that's that's

187.12

actually

188.239

it's that's almost with blinders on

190.519

that's actually like coding when you

191.799

don't get the W you don't have it's just

194.68

coding the requirements at that point

196.879

it's a and that's where you just sort

199.68

of that goes that really goes

202.56

into I think what we touch on them

204.44

regularly is sort of like the you know

206.12

you're going to have to ask questions

207.319

when you get requirements if a lot of s

210.159

you got to you got to read through it

211.959

think through it and then you got to

212.879

make sure you're asking questions about

214.28

it like okay like this is what the

215.879

requirement says but what does that

218

really mean as far as like you know what

219.64

kind of what are the constraints you

221.84

know and it's it's really walking

223.36

through a requirement and how do I know

226.64

what a requirement is how do I Define a

228.12

requirement how do I vet or test a

230.84

requirement and then how do I translate

233.2

that into you it gets into the

235.239

development side of okay how do we take

237

that and and implement it and because

241.36

our biggest problem is we literally have

243.56

to write to the requirements like

246

correct we can't add anything and if

248.519

it's implied we have to go

251.28

back yeah that's a

258.519

um I think that's probably a good one is

261.04

is we could talk about writing the

262.4

requirements when it's writing to

264.84

requirements and this actually this

266.639

actually gets

267.639

into um like fixed bid and other things

270.68

like that is it's like okay what where

273.36

do I stop what what makes this a

277.199

requirement and and it does I think

278.96

really gets into like you know you take

280.72

it word for word um but I think that's a

283.6

good one is is handling those situations

285.56

so and if it's not all right we'll have

287.84

a crappy episode but I I think we'll

289.52

find a way to make it work hello and

292.24

welcome back we are just cruising run

294.72

along in season 21 I do believe it is of

299

the building better developers

300.6

developing or podcast we are into a

303.32

season where we're this season we're

304.759

really just going through some of the

307.12

trials and tribulations that we have as

309.68

developers myself I hit them on a

311.639

regular basis my name is Rob Broadhead

313.479

one of the founders of develop andur I

316.199

also am a founder of RB Consulting and

318.72

go out and do software development all

320.72

the time and so that's where I run into

323.08

some of these Road bumps and such one of

325.4

which we're going to talk about today

327.479

which we're going to get into

329.759

working specifically towards a

331.88

requirement like fulfilling to the

334.16

letter in a sense a requirement but

336.28

before I do that one of the requirements

337.84

is that iow Michael to introduce himself

340.56

on the other side so go ahead and do

342.199

that hey everyone I'm Michael MOS I'm a

344.8

co-founder of develop preneur and

346.4

founder of Envision Q8 where we help

348.6

small Healthcare clinicians and small

351.36

businesses uh build software and test

354.52

their and improve their software through

357.36

testing so this is a I want to talk

360.16

about this time is a actually is one of

362.44

these things it could be a very big

363.759

topic but we're going to narrow it down

366.599

and the idea originally we talked about

369.36

and those that are because we do have a

371.599

YouTube channel you could watch us as

373.12

well as listening to us uh those that

375.039

were listening watching beforehand

376.759

though that we we got into this a little

378.36

bit because it started at building stuff

381.199

in silos and this is you know when

383.88

you're building software and you don't

386.08

have access to the End customer where

389.16

you're

390.24

software is basically down to your

392.919

writing code to requirements it's not

395.599

really a developer side this is almost

397.56

going backwards it's not better

398.759

developers these are people that are

400.08

just and sometimes you have to do this

402.319

because sometimes it's a fixed bid

403.72

project or there's certain priorities

406.759

and things like that and maybe you don't

408

know all of them but they've listed them

410.56

out effectively in the requirements

412.599

they've given those to you and said we

414.72

need to do a b c d that's it that's this

419.72

is the challenge is because we usually

423.84

are going to look at AB c and d and

425.479

we're going to have a vision and it's

427.08

not going to be the same as what they

428.44

have and as we get into it we're going

430.639

to see because we're developers we're

432.24

going to see where we could do this or

433.599

we could do that or we could do this

434.759

other thing one of the most frustrating

436.759

customers I've ever had was one that did

439.8

not want us to change the code other

442.16

than exactly the minimal changes to the

445.28

code to do that task and the code was

450.08

atrocious and they knew it it was like

452.639

there was all kinds of CRA it was like

454.56

it was hard to read Because there'd be

456.28

like there'd be two lines of code and

457.84

then there'd be five blanks lined and

459.16

then a line of code and then there a

460.199

couple blank lines and then a line of

461.52

code and then sometimes it'd be spread

462.84

out and some it all be jammed up just

465.56

visually it made you like your head spin

467.84

a little bit and they knew this but they

469.759

didn't want to change

472.36

anything and you may be in those

474.319

situations maybe you're like DOD or

476.039

something like that where it's like you

478

don't know why you're doing it all you

480.599

know is that this is the

482.56

requirement and so those are the

484.479

situations I want to talk about today is

486.68

when you have a requirement or you know

490.24

a hard list of requirements like this is

492.319

the task you're supposed to do this gets

494.639

into something that's very near and dear

495.879

to Michael's heart because he mentions

497.199

it probably every episode

500.56

is look at the requirement and then make

503.84

sure you clearly understand it do not be

506.479

afraid to Kickback questions what

508.84

however you can do those to say okay you

512.479

gave me these requirements but here's

514.36

some things that I need to have

516.08

clarification on you're not saying that

519.479

their requirements are no good or that

521.24

they can't be done or anything like that

523.12

what you're trying to do is you're

524.279

trying to make sure that you understand

526.959

the scope and the

528.839

context and then when you get and so

531.72

that should give you the start is make

533.519

sure you understand very clearly if you

536.519

can don't be like sometimes the best way

539.12

to do it is to essentially verbalize

541.76

back whether it's through an email or

542.92

whatever to say okay you sent me these

545.44

requirements and so you basically

547.68

respond back with the design or

549.399

something along those lines that say

550.839

okay this is what I'm going to build or

553.24

this is what I'm going to code or this

554.839

is what I'm going to create it's going

556.519

to do this and this and this and it may

558.399

be that that's there maybe that's you're

560

just adding to that ticket because

561.399

you're saying okay let's make sure that

563.72

I know what the uh the criteria are to

567.04

say that it's done what are the

568.48

validation criteria to say that this

570.72

works what are the things that this you

572.76

know what are the various inputs and

574.399

what are the acceptable outputs walk

576.6

through that data this is where you have

577.92

to get really

579.079

detailed because what you don't want to

581.12

do is anything that's beyond what's in

583.6

that requirement because you don't know

586.24

and I will tell a nice little story too

587.76

this is a shared person we know you

590.04

don't know what effect that's going to

591.959

have on something else so if you go

594.2

outside of the if you color outside of

595.959

the lines in a situation like this it

597.56

could be a problem

599.6

now I'm going to give you an example

601.079

that is more than you probably are going

602.8

to get into in this kind of situation

604.48

but an example of not of going outside

607.24

the lines we had a situation uh somebody

610.68

that we were working with a developer

612.56

the the requirements were pretty simple

615.12

it was we need to we need to give a

617.16

response we need to have a popup I think

618.959

it was a popup window or it was a you

620.76

know message bar kind of thing that says

623.16

that when you you know save something or

625.6

edit something that you get a response

627.12

back that says hey you know I saved it

630

you know this has been saved this is

631.6

this was a successful transaction that

634.24

was essentially the the gist of it it's

636.519

like hey on this application we've got

638.04

five places that we do these actions we

640

need to have some sort of we need to

641.44

have a confirmation so the user knows

644.079

that it you know that it

646.72

occurred guy that did this developer was

649.56

like young and go getet her and wanted

651.839

to show stuff off so first off he turned

655.839

it into a little popup window cool okay

658.56

you want to do a pop window instead of a

660.12

status bar that's all right that's fine

662.12

that wasn't in the requirement that

663.639

still works that shows them something

666.079

now the problem is starting with just

668.76

that window is that now that means

670.68

somebody may have to click to continue

673.72

on and maybe they don't want to do that

675.399

so if you're thinking about that don't

678.079

do it unless there's something implied

680.48

and or ask a question and say hey I'm

682.639

thinking about doing this with your

683.959

original design say this is what I'm

685.88

going to do let's make sure that this

687.519

conforms to the requirements if it

689.76

doesn't say give me a popup if it just

691.48

says show us status then you just show

693.44

us status on the screen in some way form

695.079

or fashion don't add the popup error

698.079

number one error number two is his popup

701.279

was in text that was like little blinky

703.72

lights that nobody likes Blinky lights

706.6

they did in like 1970 when there was a

709.16

first web page came out when Al Gore

711.32

created the first web page since then

713.12

nobody wants little blinking lights

714.72

around their

716.12

messages so that was also an error

718.36

because it's like you can do it but that

720.04

doesn't mean you should the other thing

722.12

he did which is actually a really

724.24

interesting little tweak that we need to

727.36

consider along with the pop-up box is

729.8

that he had it fade away after five

733.04

seconds is it would flash the text up

734.92

and it would fade away and everything

736.079

would go away so if you turned away if

738.639

you hit save and you turned away and you

741.8

look back you may not see that message

744.24

at

745.44

all our boss read him the riot act over

749.839

that stuff because he's like I don't

751.24

like these I don't like this look and

753.12

you can't do that because people aren't

754.839

going to be able to see it and it it

756.639

totally blindsided him because he was

758.44

going into a meeting thinking he was

760.36

goingon to get a big pat on the back and

762

a I don't know Kudos or Rays or promoted

764.76

to CEO or whatever it was he thought it

766.88

was all good our boss did not ripped him

771.519

a new one and it is because and it's his

774.6

fault and it's it is his fault because

777.04

he had requirements and decided to color

780.519

out of the lines and that was not part

782.68

of it now if you're a designer if you're

784.44

something where they say hey go make

786.04

this work we want you to build something

788.32

that impresses us then you may do some

790.48

of that but even then even if you're not

793.12

in a silo think about what may impress

796.959

those people or ask them about it or

799.199

give them some options so that you're

800.72

not putting something in front of them

802.639

that they end up not liking because you

805.199

don't want to spend a lot of time

806.32

building something that isn't going to

807.72

work or isn't going to fit the

808.76

requirement ments so look at the

810.199

requirements be clear and then if you

813.199

have an itch to do anything that is not

815.16

part of the requirement it's like it's

817.079

it's like the old what would Jesus do

818.8

it's like what would the requirement do

820.48

look at the requirement and say does

822.279

that thing that you're building does

823.56

that exactly match the requirement and

825.8

if not don't do it ask a question see if

829.36

this is needed or or if you're trying to

831.279

help them say would it be helpful if we

833.199

can do that because sometimes you're

834.6

going to clap back and say no sometimes

836.04

they're going oh I didn't think about

837.6

that yes let's adjust the requirement

839.68

your thoughts on that while I close

840.959

windows that are being rained in on yeah

843.639

so the first thing that came to mind on

845.279

that I I I know I keep bringing this up

847.759

but it goes back to that um swinging

850.92

roller coaster cartoon that's on the

853.36

internet for software development where

856.279

it the initial request from the user is

859.199

they want a tree swing and it goes from

861.959

every concept of wooden plank swing

865.079

putting it on a tree cutting the tree in

867.12

half building for a roller coaster not

869.399

supporting it

870.72

Etc requirements are important but the

873.44

other thing that's interesting in this

875.72

conversation is Rob mentioned is if you

878.839

are doing this as a fixed bid or you're

880.68

doing this as a contractor or you are

883.24

working in a silo for an

885.6

organization anything you do costs time

890.24

which cost you money so if you have a

894.36

requirement that really should take five

896.199

minutes and you spend an hour because

897.56

you do all this extra stuff that the

899.36

customer didn't ask for one yes you

902.88

might impress them but two you just did

904.88

a whole bunch of work that you're not

905.92

going to get paid for the other flip

908.639

side of that is anything you work on

912.72

make sure you understand what it is that

915.199

you're trying to do as Rob mentioned we

917.279

had this friend that did the little

918.519

popup

919.48

window think about the user experience

922.639

as well as the requirements is what

925.56

you're going to do going to impact the

928.24

end you user in a positive way or in a

932.56

way that meets the requirements because

934.92

you could do something that is really

937.319

cool really neat within the scope of the

939.92

requirements but still not meet the need

942.079

of the

945.44

customer so I wantan to I do want to hit

947.8

on that one thing that that Michael

950.12

mentioned because it really is it goes

951.959

back to these when we're not in uh as

955.12

Silo when we get

956.959

assignments part of the thing that we

959.12

look at from the requirements is um

962.48

which is very helpful for us as well

965.16

feedback and estimate if they haven't

967.16

given you an estimate then feed

968.319

something back of hey this is going to

970.36

take an hour two hours a day a week

973.72

whatever it's going to be or look at and

976.48

take into account what their estimate is

979.399

if they give you something and they say

980.72

okay here's your work for the week then

982.72

you know that they're expecting it's

984.8

going to take a week that can help you

987.48

figure out how much you're supposed to

991.16

add in even if it's not an as Silo and I

993.959

have dealt with this a lot of times with

995.68

people as a as a manager as well of

998.6

developers is to say okay this is what

1001.44

you're going to do I'm expecting it back

1003.519

today or in an hour I don't expect I

1005.48

expect you get these 10 things done

1007.399

today so that should help somebody know

1010.16

or help you know if there's like you

1012.16

know it's like this is your daily to-do

1013.68

list if you're stuck on you if it's got

1016

five items and you're stuck on the first

1017.399

one for seven hours probably not going

1019.319

to get it all done unless those other

1021.16

things are super easy so one if there's

1025.16

something that seems like it's going to

1026.6

blow up that it's like that you're

1028.64

chasing it it's like this seems way more

1030.559

complicated than I thought it was don't

1032.199

be afraid to feed that back and say hey

1035.16

this is this is a concern this is not

1038.24

where it's supposed to go that's part of

1039.679

this part of why agile is what it is

1041.439

when you do a daily standup and say hey

1043.839

this was supposed to be you know two

1045.799

days of work roughly I'm into my my

1048.48

whole first day and I'm not even nowhere

1050.84

started on this things like that is feed

1052.96

that back because it may be that either

1055.039

you've misunderstood the requirement or

1057.36

the people that are creating requirement

1058.84

may not understand what that means and

1061.52

particularly with a customer this may be

1063.64

something like oh if it's going to take

1065.2

you know I thought it was just going to

1066.16

take you five minutes if it's not going

1067.76

to take you five minutes I don't need it

1069.4

there's you it allows people to properly

1072.919

prioritize and it helps you to think

1075.159

through like what is really expected out

1077.96

of this if if it's something where

1079.44

you've got like you know very strict

1081.76

requirements and it's it's you know

1083.919

something where it's like oh that's pin

1085.28

lines a code if I do it a certain way

1087

then it's like okay and you only have

1089.039

time to do those 10 lines of code then

1090.6

that's what you do now obvious yeah

1093.36

obvious well it's not obviously but it

1094.799

should be included that you're going to

1095.919

have you know you're going to do some

1096.84

testing and some validation and stuff

1098.44

like that as well so nothing gets done

1100.84

like that at least not completely done

1104.08

um but that is a that is a really

1106.2

important thing to think about is what

1107.919

is the

1110.08

the scope and the expectations of what

1112.32

you're building as well because you

1113.88

don't want to be in a situation where

1115.28

you run especially these days with the

1117.64

the mobile development kind of stuff we

1119.28

do the remote development that we do

1121.64

where we're out there somewhere we get

1123.24

some requirements if we go away for a

1125.48

week and come back and we're nowhere

1127.72

close to end but they thought we were

1129

done with those requirements four days

1130.6

ago then that's going to be a problem so

1132.679

we want to make sure that we're clear

1134.6

also on uh the scope and the level of

1137.12

effort that's going to be involved with

1138.36

what we do

1140.88

and with that also something we haven't

1143.4

really talked about here you know if

1145.12

you're in this Silo environment you

1147.32

might not be the only one the software

1149.919

you could be working on could have

1151.12

multiple different teams multiple

1152.72

different silos working on this

1154.32

application so your potentially your

1156.48

changes could impact someone else or

1158.96

someone else's changes could impact you

1161.32

so understanding the requirements and

1163.919

understanding how that interacts not

1166.799

necessarily full big picture but a

1168.88

bigger picture as the to the why we're

1171.64

doing this does make sense unfortunately

1174.559

in some situations you don't have the

1177

capability of asking that why you can

1179.679

only really get into the requirements as

1181.96

to all right what is within the scope of

1184.52

this ticket what am I doing you know why

1187.679

is this needed not necessarily why is

1190.12

this application needed but within the

1192.52

functionality that you're working on you

1194.84

need to forcefully not forcefully but

1197.039

you need to uh at least understand and

1200.24

be forthcoming with the person who's

1204.28

requesting the changes that could be the

1205.72

project owner that could be your boss

1207.76

you know it could be another developer

1209.2

it could be a bug ticket that was

1210.48

reported but make sure you understand

1214.039

what the issue is what the requirements

1217.4

are are there any screenshots are there

1220.32

any scripts to kind of lay out how to

1223

test this you know is this a user

1224.72

interaction is this a web page uh is

1227.44

there any diagrams to kind of help you

1229.76

understand how it's all put together and

1231.88

then from there then you can give an

1233.919

estimate now if you're new to this game

1237.159

you're going to be wrong a lot you're

1239.32

going to be behind the ball so make sure

1241.24

you give yourself time at least on the

1244.32

first few assignments to really

1246.4

understand what it is and how things

1247.88

work within the organization as you

1250.919

build up your skills you're going to be

1252.84

better at estimating those times but you

1255.32

know even us season developers you know

1257.919

we can miss something because we don't

1259.6

have a requirement this 1H hour change

1262.12

can now take us a week that because

1264.4

whoops we need this third party API or

1267.159

we need this integration piece oh that's

1269.44

not done yet well we can't move forward

1271.52

we can build something to you know to

1274.039

stub that but that still takes time and

1276.4

that was time that was not considered in

1278.48

the initial requirements and that's

1280.64

actually a good the working as a team is

1283.48

part of that as well is because

1285.64

sometimes you're going to be given

1286.72

something and there is an expectation of

1288.6

when it's going to be delivered and you

1291

may look at it and say Hey you know I'm

1292.44

going to deliver it a little late but

1293.72

I'm going to add so much extra stuff to

1295.52

it that it's going to be worth it you

1297.6

don't have the you may not have the

1299.919

ability to make that decision because

1302.2

what may happen is that your piece has

1305.36

to be done by that time because somebody

1307.32

else is waiting on it and so if you

1309.6

delay then it causes somebody else to be

1311.36

delayed and then somebody else to be

1312.559

delayed and you can throw a lot of stuff

1314.48

off schedule if you start you know sort

1317.72

of going off on your own so it's it

1321.24

really is this topic really does cover

1323.64

the it's almost like the reverse of

1326.2

building better developers it's it's

1328.039

being a better developer as a team

1329.6

player but it's really when you're in

1331.52

situations and we all will hit those

1333.6

sometimes where it's like we just need

1335.279

to be a coder yes we want to build all

1339.039

you know we want to have all this

1339.88

knowledge and experience around the

1341.44

solutions we build but sometimes it is

1345.44

it is not that we're building something

1347.32

better it's that they need us to build

1349.039

it faster because we can write that code

1351.6

quickly we can do it simply we can get

1353.36

there get in and get out and not be

1356

doling around and it's not that they

1358.08

need our ability to write the coolest

1360.12

most flowery awesome solution they need

1362.559

us to write one quick that works that we

1364.76

can verify and then move on and so

1368.36

understand the context of what you're

1370.039

doing and that will help keep you out of

1372.36

trouble final thoughts on

1375.84

this yeah the the biggest thing I kind

1379.64

of want to leave as a takeaway

1382.6

is as you're working your tickets or if

1385.76

you're working these contracts

1387.679

independently or fix bids on for

1391.76

customers take the take the requirements

1395.279

take the job take the ticket that you

1397.039

need to work on understand what it is

1400.12

you're being asked to do make sure you

1402.72

stay within the focus of those

1405.48

requirements and what the usit accepted

1409.32

criteria is don't go outside of the box

1412.24

in these situations don't add too many

1414.52

bells and whistles stay focused work on

1417.84

the task at hand and get the work done

1420.36

within the time

1422

frame and we're trying to get our work

1424.559

done within our time frame so we're

1425.799

going to try to we're going to wrap this

1427

one up and a respect your time as always

1430.679

you can shoot us questions at info

1432.2

developer.com you can check us out on

1435.039

Facebook you can check us out on

1436.32

LinkedIn you can check this out on

1437.799

YouTube you there's lots of places out

1439.6

there uh wherever you wherever you do

1442.08

podcasts we're out there and if not let

1444.12

us know they should already be there but

1446

if not we'll add ourselves to the stack

1448.96

uh as always looking for comments

1451.48

questions recommendations requests

1454

things like that anything any feedback

1455.64

we' love to have because this is as much

1458.039

for you as it is for us actually more

1459.76

for you than it is for us because we're

1462.039

just you know going through and and sort

1464.32

of venting a little bit at the end of

1465.559

the day and trying to help out some

1467.12

others so that we can essentially be a

1469.44

cautionary tale as others so that our

1471.2

mistakes are not repeated or at least

1474.559

you know that you're you know if you

1475.799

have already done those mistakes you're

1477.039

like hey I'm not the only one these guys

1478.88

do it as well and probably a lot of

1481.039

others that being said we'll let you get

1483.24

back to your day go out there and have

1484.44

yourself a great day a great week and we

1486.76

will talk to you next

1489.88

time bonus material anything that you

1492.44

got on this one I apologize because like

1495

parential rains came in by the time I I

1497.2

had a window all open because it was

1498.72

blowing before the storm and it was

1500.159

awesome by the time I got over there I

1502

had like two big hand towels it just got

1504

soaked because it had just water was

1506.039

just pouring in I'm like great that's

1508.2

what I needed right in the middle of the

1509.64

call so luckily you did a good job

1512.24

vamping through that

1514.08

part and for those you still listening

1516.44

you know always check your weather

1517.76

reports before doing

1519.64

podcast especially if

1522.08

you I had a house full of people I

1524.2

figured worst case they'll get it but it

1525.919

was like it came up like that and

1528.32

they're already scrambling all over and

1529.679

I'm hearing it come down and I'm looking

1531.24

over I'm seeing water almost like come

1532.96

sideways into the window I'm like all

1534.48

right I got to get this taken care of I

1536.6

had the flip side of that I had the

1537.919

lightning storm come in right before the

1539.48

call where I thought I was going to have

1541.84

power luckily I don't think I've seen

1543.96

the lightning we just get rain right

1545.52

here all right we digress back to the

1548

topic so final thought on this

1550.96

particularly so we've talked about in

1553.84

past podcast you know tools things like

1556.36

jir project management tools test

1558.799

management tools when you're dealing

1560.6

with something like this those kind of

1562.2

pop into my mind because if you're

1565.08

working to requirements if you're trying

1567.559

to get these tasks

1569.12

done you may not always have the big

1571.559

picture but you do have your ticket

1573.76

history you do have your code change

1575.559

history and you can look to see how

1577.64

things are being done the way they're

1579.559

being

1580.6

done and so as you're working new

1583.399

tickets or finding new bugs throughout

1585.6

the system you can kind of see how how

1588.559

things are done and also kind of

1591.279

organize your thoughts in a way to keep

1592.919

them concise so that you don't go

1595.12

outside the box too much so you're not

1597.159

adding too many extra bells and whistles

1599.12

to an application that doesn't need it

1601.919

and this actually you know we

1604.799

we we phrased this

1608.279

around uh fixed bed projects and silos

1611.12

and things like that but this is also

1613.64

something I've run into with customers

1615.44

from a Consulting point of view is that

1618

some sometimes they they're paying you

1620.399

to do that there is and even if it's an

1623.24

employee if you're like you know if

1624.6

you're a salaried employee you are paid

1626.32

to get things done and if we go too far

1630.32

a field then we're sometimes we're

1632.88

wasting that money we're wasting that

1634.88

time we're wasting what they're paying

1636.32

us to do um and it's like you I know

1640.159

that it's easy for developers to be like

1642.52

yeah this is sort of fun this is awesome

1643.96

I love this little rabbit hole but you

1645.88

sometimes have to rein yourself back in

1647.64

and say that hey this is this is costing

1650.52

them so either like you know if like if

1652.84

I'm going to punch off the clock and

1654.279

then do it okay fine but otherwise if

1656.84

I'm doing this because I'm sitting at my

1658.44

office at work and I've got an eight

1660.399

hour day and so I'm going to like do a

1662.08

couple of fun things and and part of

1663.76

that and add into it

1666.24

then you're not being the best H manager

1670.48

of the time and what these people are

1672.72

giving you so this also goes back and it

1675.279

it really comes full circle back to when

1677.32

you get requirement

1679.6

those you want those even in a a less

1683.399

structured a more

1685.08

open-ended U solution or application is

1689.36

to give feedback on that take a look at

1691.48

that get an idea of what really does

1694.919

besides the requirements what satisfies

1697.519

the goals there even if you do have

1699.44

somebody you're talking to make sure

1701.399

you're clear on what they're looking for

1703

and what level and things like that and

1704.799

don't be afraid to use like proof of

1707.2

Concepts or or MVPs or clickable demos

1710.32

or something to basically say okay this

1712

is what I'm expecting to build does this

1715.32

match your expectations now it may be

1717.6

that it's way over what they do and they

1719.32

want that they're like oh that's great I

1720.76

never thought about go for it but it may

1722.84

be that they said no you are you're

1725.679

giving me a a you know a Mercedes and I

1728.08

want the Yugo I want the Kia or whatever

1730.32

it is you they I want a ble I don't want

1733.84

that big you know honking thing that

1735.64

you're building so just because you can

1739.08

doesn't mean you need to and even if a

1741.2

customer comes to you and they

1743.36

say I have a million dollars to build

1746.32

this application do not build the

1749

application to the million dollars you

1751.08

build the application and the

1752.159

requirements and ideally you get it done

1754.84

in half a million dollars or something

1757.24

like that and they love you because you

1759.679

didn't just go through a ton of their

1761.64

money if you can do that that is part of

1764.279

being a building a being that better

1766.799

developer is delivering somebody not

1770.2

only more features than they expected

1773.159

but a better solution overall faster

1775.76

lower cost on time you Works

1778.799

maintainable scalable all of those bolds

1781.84

and and those kinds of things so that

1785.36

you are actually building better

1787.76

software for them give them a better

1790.76

deal and they will come back to you they

1792.76

will recommend you to others so don't be

1794.919

afraid of like oh I you know I gave up a

1797.039

half a million dollars on that project

1798.36

cuz I could have just you know gouged

1800.519

them for a million and they would have

1802

never blanked don't take that route take

1804.519

the high road take the the proper Road

1806.88

you'll be happier for it they'll be

1808.48

happier for it you will have a better

1810.08

career for

1811.279

it any other thoughts before we wrap

1813.6

this one up wow that's major bonus

1815.559

material there it kind of falls into the

1819.559

are you being busy for busy's sake or

1822.279

are you on task are you doing the job at

1825.159

hand because you know if you have a one

1829.2

ticket to work in a day you have eight

1830.88

hours in the day and it's a 5 minute

1833.399

ticket chances are you're probably going

1835.84

to take eight hours to get it done

1837.519

because you have to show that you have

1838.64

an eight hour day be smart be lethargic

1842.399

do the work in five minutes and then go

1845

talk to your boss and maybe do a PC

1846.88

maybe go do something fun or you know

1850

get approval to do something else cuz

1852.32

maybe there's something else uh another

1854.279

hot button ticket that needs to be

1855.72

worked but stay on task you know don't

1858.72

just be busy don't just fill time get

1861.12

the work done and keep moving things

1863.96

forward yeah it helps a lot to do that

1866.279

because it's going to if you're if

1868.559

you're pushing your boss if you're

1870.279

pulling for more work from them because

1872.519

you're getting stuff done faster than

1874.32

they expect it then yeah sometimes that

1876.44

can be a pain because then that just

1877.679

means they're going to start really

1878.6

piling stuff on but that means you're

1880.12

going to have a busy day you're going to

1881.159

be more productive and when you get to

1882.72

the end of the when you ever get to the

1884.799

review period then they're going to love

1886.08

you that's like they're going to be like

1887.919

you're the go-to person because you do

1891.24

that for

1892.559

them for now I think you guys can go to

1896.24

whoever your go-to person is my go-to is

1898.36

going to be like I think dinner and a

1899.6

drink or something like that so we're

1901.799

going to wrap this one up and uh maybe

1904.679

mop a little bit up here as well

1906.159

depending on how well I did during this

1908.12

this episode so thank you so much as

1910.84

always you know check for Stuff of the

1912.639

show notes leave us likes comments

1914.44

subscribe all of those fun things that

1916.519

people always ask for and we always

1918.639

forget to do and uh just keep an eye out

1921.48

because we're going to keep cranking

1922.399

these suckers out we will keep dropping

1924.519

them every Tuesdays and Thursdays both

1926.399

the podcast and the uh YouTube

1929.36

recordings go out we do occasionally

1931.12

throw some other stuff out on the site I

1932.84

mean the stuff all goes out developing n

1934.44

site but also there are

1936.919

the uh the blogs that occasionally get

1939.039

thrown out there we do have a newsletter

1940.799

feel free to subscribe to that I think

1942.519

I'm about a month behind but I will get

1944.36

the latest update on that out uh it's

1946.639

just been one of those months that being

1949.32

said once again you guys as well go out

1951.519

there and have a great day and we will

1953.24

check you guys out next time around

1956.79

[Music]