Dan Martell - August 21, 2017


Software Project Management: How To Manage a Software Development Project


Episode Stats

Length

10 minutes

Words per Minute

195.5351

Word Count

1,997

Sentence Count

97

Hate Speech Sentences

1


Summary

Summaries generated with gmurro/bart-large-finetuned-filtered-spotify-podcast-summ .

Transcript

Transcript generated with Whisper (turbo).
Hate speech classifications generated with facebook/roberta-hate-speech-dynabench-r4-target .
00:00:00.160 If you have to create a Gantt chart, get a new job.
00:00:02.800 Gantt charts are baloney.
00:00:04.340 Well, they're not baloney.
00:00:05.180 I say that and then, ah, I'm so torn.
00:00:17.620 How to manage a software project.
00:00:19.860 If you haven't noticed, we are in a new studio and I've got an
00:00:24.660 exclusive for you today.
00:00:26.860 The reason why is I'm undecided.
00:00:28.560 it's a little yellow and I know this,
00:00:30.400 you're probably like, well, is that supposed to be brown?
00:00:34.040 I'm gonna tell you the story to help you actually understand
00:00:38.040 the lesson I wanna share with you which is managing a project
00:00:41.300 and how to go wrong.
00:00:42.800 If you're frustrated because you get people
00:00:45.140 to build stuff for you and it's not what you want
00:00:47.280 or the timelines are way longer than you had thought
00:00:50.220 or proposed or even communicated to maybe your customers
00:00:53.120 or the expenses and the costs have been
00:00:56.660 kind of blown out of control.
00:00:58.120 I mean, I remember one time a guy called me,
00:01:00.360 1.5 million invested in a software product
00:01:03.820 over a two year period, still had it launched.
00:01:06.620 If those things, maybe that's not as bad as that,
00:01:08.960 but if you feel like you're trying to build
00:01:11.000 the right product and you can't figure it out,
00:01:12.960 I wanna share with you guys my strategy
00:01:14.600 for managing really any project,
00:01:16.740 but very much specific on software.
00:01:19.480 And when you do this right, the cool part
00:01:21.440 is you get working product in front of a customer.
00:01:25.480 Things that your customers wanted in the first place,
00:01:28.120 I think most of waste in a company is building things
00:01:31.460 for people that they never wanted
00:01:32.960 because you weren't listening properly.
00:01:34.700 And then finally, making sure that they're done on time
00:01:38.360 and on budget, you know?
00:01:40.500 This backdrop, okay, and I'm not gonna throw Tim.
00:01:43.260 Tim, if you watch this video, man,
00:01:44.940 I really appreciate the energy and effort.
00:01:47.040 I had a vision.
00:01:48.680 I was like, you know what?
00:01:49.780 We've been doing the brick background for a while.
00:01:51.620 A lot of people didn't realize it was real.
00:01:53.280 You know, many times I've gone back, knocked on it.
00:01:55.220 This is hopefully definitely real
00:01:57.120 because you can see the dark spot stain,
00:02:01.800 the knots, the holes.
00:02:03.100 It was like, I had this vision for kind of like
00:02:06.800 this rustic wood type of organic thing.
00:02:10.500 And not that we didn't achieve that,
00:02:12.640 I just think the color was off and it showed up
00:02:15.580 and I wanted to shoot some videos, so here's the deal.
00:02:20.480 I want to share with you what I shared with Tim
00:02:23.880 because I hired Tim to do it.
00:02:25.040 We had to engineer this thing.
00:02:26.620 I mean, it's heavy, it's got aluminum frame.
00:02:29.120 It's actually a quite cool piece of studio gear.
00:02:33.400 But I really learned how to manage projects
00:02:36.300 back when I was 21.
00:02:37.940 I got a job that I should have never got
00:02:40.300 managing a team of engineers at a company called Syncrude,
00:02:45.180 getting paid way more money than I probably
00:02:47.040 should have been getting paid.
00:02:48.580 And my boss pretty much pulled me aside
00:02:50.720 because we interviewed over the phone.
00:02:52.180 He looked up my resume.
00:02:53.520 Maybe he didn't do the math on how old I must have been
00:02:56.120 based on when I graduated and stuff.
00:02:59.160 And I was a contractor and he pretty much said,
00:03:01.800 you have two weeks to figure this out.
00:03:03.660 And I didn't really know what figure this out means,
00:03:06.200 but I did what I hope anybody would do in my position
00:03:09.100 is I went to the library and I got a library card.
00:03:11.760 And I started buying books.
00:03:13.140 I was gonna be responsible for about a team of 30 people.
00:03:16.240 So I needed to understand how to manage those people,
00:03:18.980 how to lead them, how to set expectations,
00:03:21.480 how to interact with vendors.
00:03:23.740 So I rented, rented, borrowed.
00:03:26.440 I mean, most of you guys are laughing.
00:03:27.580 You've probably never been to a library.
00:03:30.020 I, guys, isn't that funny?
00:03:32.280 We live in a world where you've maybe never been to a library?
00:03:35.620 And I got books on project management.
00:03:37.160 I got books on technical architecture.
00:03:39.520 I got books on understanding the world of consulting.
00:03:44.620 And that's where I learned Gantt charts.
00:03:46.600 I'm still undecided how I feel about them,
00:03:49.200 but that'll be for another video.
00:03:50.960 And it was through that experience at 21 to 23
00:03:54.700 where I really refined my approach to managing projects.
00:03:58.740 And what I want to share with you today is the four key areas
00:04:01.280 that I think are super important.
00:04:02.600 Number one is time blocking.
00:04:05.080 When you build something new, you need to set the constraint.
00:04:08.680 If you don't have a constraint, then anything is possible.
00:04:11.920 The scope for what you want to build can expand way beyond
00:04:15.280 what you could possibly do with the resources you have.
00:04:17.620 And it's super important to actually like say, okay,
00:04:20.360 From a time point of view, we've got three months
00:04:23.300 and we're gonna build this.
00:04:24.200 If you're into agile development, which I highly suggest,
00:04:27.140 typically you're doing kind of a six-week product
00:04:30.440 kind of roadmap with two-week iterations and sprints.
00:04:33.740 But regardless, no matter if you're starting off
00:04:35.780 from scratch in your first time building software
00:04:37.820 or you've got a team, you want to set a cadence
00:04:41.120 for time blocking what gets built in that timeframe.
00:04:45.220 So that's one.
00:04:46.060 Number two, you wanna make sure that you define the outcome.
00:04:49.060 And for me, this is really from the user's point of view.
00:04:52.660 Most of the features you're gonna build
00:04:54.440 that are not paying down code debt
00:04:56.200 and kind of fixing things, performance,
00:04:57.640 that kind of stuff, or fixing bugs,
00:05:00.600 are gonna be focused on the user
00:05:03.140 and really trying to help them achieve
00:05:05.300 what's called the desired outcome.
00:05:07.380 And the way you do that is user stories.
00:05:09.020 So making sure that you have a defined outcome
00:05:11.820 for what you wanna have done.
00:05:12.820 I wanted this built and we talked about it
00:05:15.780 and I was like, you know, it's gonna have handles
00:05:18.020 it's a big heavy piece of gear and it rolls around and it's
00:05:20.780 in a studio and I want the what?
00:05:23.320 And there was all these things and one of the things that I
00:05:26.100 felt wasn't really captured was the outcome goals, okay?
00:05:29.760 What the specs were.
00:05:31.000 We talked about it, you know, but it was never really written
00:05:34.500 down, drawn out and really like, okay,
00:05:37.000 this is what I want you to do.
00:05:39.000 And look, everybody has a different approach
00:05:40.900 for managing their stuff but when I hire and delegate to
00:05:43.320 people, I'm just gonna trust that they're gonna do it the way
00:05:45.380 that works for them.
00:05:46.480 This is just some feedback and thoughts
00:05:48.080 on how it could have went better.
00:05:49.380 So time block was there.
00:05:50.960 I had a date that I needed it delivered by
00:05:53.480 and we were late by two days.
00:05:54.920 And I'll tell you why because it's number four in this video.
00:05:58.260 But it was really about making sure
00:06:00.100 that the outcome goals are well defined.
00:06:01.720 Number three is you need to make sure
00:06:03.740 that you prototype along the way, okay?
00:06:06.500 And what happens is, and this is an example,
00:06:09.700 is the stain, the color, instead of coming in yellow,
00:06:13.380 could have came in on the brown tone
00:06:15.600 that we had actually like screenshotted and sent across,
00:06:18.800 but the reason why is it was never tested, right?
00:06:20.900 It wasn't something like, and many times
00:06:22.540 when you're building software,
00:06:24.540 you communicate the specifications using words,
00:06:28.020 text, a document, and I can't tell you,
00:06:31.640 but like if I wrote a paragraph of an outcome I wanted
00:06:35.360 and we had two different people read that paragraph
00:06:37.980 and kind of build towards what they think
00:06:39.560 or how it should work,
00:06:40.560 we're gonna have two different experiences.
00:06:42.260 So to me it's all about prototyping the user experience,
00:06:45.500 so it's called the UX, how it interacts,
00:06:47.500 how the feature works because there are a hundred different
00:06:49.680 ways you can implement something.
00:06:51.100 And also the UI or the visual design.
00:06:54.200 You know, how do you want the colors to look?
00:06:55.940 How should the buttons be stylized?
00:06:57.520 What layout and spacing should you use?
00:07:00.140 And I think that regardless of what you're gonna build
00:07:02.580 at the end of the day, if there's elements in there
00:07:04.620 that are unknown, you need to prototype.
00:07:06.780 You can do that through a designer's mock-ups.
00:07:09.020 You can do that through clickable prototypes
00:07:10.700 using Keynote or UX Pin or Balsamiq or whatever tools.
00:07:15.360 It is very important to process, so that's number three.
00:07:17.460 Four is you need to make sure, and this is what happened,
00:07:22.000 is if there's dependencies amongst the project, right,
00:07:25.140 other areas, other business units, other people,
00:07:28.440 that you communicate with them early and then often,
00:07:31.940 especially if you own the project.
00:07:33.920 So what happened here is we had to work with a contract company
00:07:36.880 to do a aluminum frame and communicate those specs,
00:07:40.980 but the timelines were never asked for and or committed
00:07:44.920 from that person.
00:07:46.020 The other thing is the custom stain for the backdrop
00:07:49.620 was never tested early in the process of the project
00:07:53.860 so that if there was a discrepancy in color,
00:07:56.240 because there's a fixed timeline,
00:07:57.740 that we could have fixed that early and get that resolved.
00:08:00.700 That to me is probably the number one thing
00:08:04.380 that every founder gets wrong is when you start
00:08:07.180 a new project, and this usually comes from
00:08:09.320 three key areas in your business.
00:08:10.880 The technology that you might assume is gonna work,
00:08:13.720 so maybe that's an integration, it's an API,
00:08:15.460 it's your own code, technology.
00:08:17.020 Second one is marketing.
00:08:18.520 What are the dependencies once you build this
00:08:20.560 that marketing needs support on?
00:08:22.220 So maybe they gotta put a campaign together,
00:08:24.360 they need to put a new features section,
00:08:26.500 they need to add it to the pricing page,
00:08:28.700 so there's marketing dependencies.
00:08:30.100 And then finally, operations.
00:08:31.600 So you think about in your business,
00:08:33.100 there's like administrative support,
00:08:35.180 or it could be billing or whatever it is,
00:08:38.920 but there's an operations component
00:08:40.340 And those three areas are dependencies on the overall
00:08:44.840 project that need to be communicated,
00:08:46.780 need to be understood, and if there's legal or anything else
00:08:49.480 that has to provide feedback into the timeline of getting
00:08:51.980 that project done, start it early and often.
00:08:55.160 So real quick, those four, and I'm gonna share with you guys
00:08:57.720 a myth that every founder believes in
00:09:00.720 that's just simply not true.
00:09:02.100 One is you need to time block.
00:09:03.700 You need to set the constraints.
00:09:04.940 Number two, you need to define the outcomes
00:09:07.040 from a customer's perspective.
00:09:09.100 Number three is you gotta make sure that you prototype and test
00:09:12.500 the user experience and the UI so you don't have a yellow
00:09:14.740 background and four, you need to make sure that you test or start
00:09:19.320 with those defined dependencies and make sure that they get
00:09:23.020 rolling faster than waiting till that moment in time to
00:09:26.420 actually move it forward.
00:09:27.780 The myth that I want to bust for you is that any product
00:09:30.380 survives first contact with the customer.
00:09:32.520 The truth is no matter how great of a job you did and Tib did an
00:09:36.220 amazing job, there's going to be iterations so actually build
00:09:40.060 that into the schedule, build that into your plan and it's
00:09:43.120 going to make you a happier founder.
00:09:45.520 Hope this video finds you incredibly well.
00:09:48.160 As per usual, I want to challenge you to live a bigger life
00:09:50.500 and a bigger business and I'll see you next Monday.
00:09:52.740 If you're the type of person that likes to subscribe on
00:09:55.100 things, click the button.
00:09:56.540 I'd love to have you part of the community.
00:09:58.000 I'd also encourage you to subscribe to my newsletter where
00:10:01.180 I share incredible new exclusive only ever found,
00:10:05.780 Yep, on the newsletter and if you're ready to get going,
00:10:07.620 I got two other videos queued up,
00:10:09.520 ready for you to keep watching.
00:10:10.980 Have an amazing day.