Latest / DevQuestions with Tim Corey / 242. How To Become an Independent Software Developer
Transcript
- 0:00SPEAKER_01: Have you ever thought that you could make better decisions than your bosses?
- 0:04SPEAKER_01: Maybe you just want to get away from the corporate structure, the meetings, and all the other things that take away from your time writing code.
- 0:12SPEAKER_01: Becoming an independent software developer can solve these problems, although it also introduces problems of its own.
- 0:18SPEAKER_01: If you're considering becoming an independent software developer, this episode will help you evaluate if you're ready as well as what steps to take once you decide to move forward as an independent software developer.
- 0:41SPEAKER_00: Welcome to the Dev Questions Podcast with Tim Corey.
- 0:44SPEAKER_01: Software development is more than just writing code.
- 0:48SPEAKER_01: So let's talk about the rest of it.
- 0:49SPEAKER_01: Specifically, let's talk about how to become an independent software developer.
- 0:54SPEAKER_01: Back in episode 236, we talked about your next step in your career.
- 1:01SPEAKER_01: This episode is going to focus on becoming your own boss, which was the last of the four options we talked about.
- 1:08SPEAKER_01: Being an independent software developer can be great or it can be horrible.
- 1:13SPEAKER_01: Whether you're building apps to sell or taking on consulting clients, knowing how to set yourself up for success is really important.
- 1:21SPEAKER_01: Let's talk about the steps to take to achieve your goal and be pleased with the end result.
- 1:28SPEAKER_01: So step number one, don't quit your day job.
- 1:32SPEAKER_01: This is important because often people get enthusiastic and they say, I'm gonna, you know, go on my own.
- 1:37SPEAKER_01: I'm gonna be a consultant.
- 1:39SPEAKER_01: So the next step they take is I quit.
- 1:41SPEAKER_01: Because you're fed up with your job, you're tired of working, you're tired of all the stuff around work that's just annoying, you're tired of the meetings to talk about why you're not getting stuff done and your answer is because we're in meetings.
- 1:54SPEAKER_01: You know, you're tired of all that stuff and you just want to quit.
- 1:57SPEAKER_01: I get that, but that's not the right first step.
- 2:01SPEAKER_01: Don't quit your day job.
- 2:03SPEAKER_01: Instead, step number two, practice in your free time.
- 2:08SPEAKER_01: And what do I mean by practice?
- 2:09SPEAKER_01: I mean practice being an independent software developer.
- 2:13SPEAKER_01: If you want to build apps for yourself and sell them, start now.
- 2:18SPEAKER_01: Start practicing that process.
- 2:21SPEAKER_01: Maybe if you're thinking, hey, I'm gonna build apps and put them into the iOS store, the Android store, or the Windows store, the Mac store.
- 2:29SPEAKER_01: Well, build a tiny one that does very little, if anything, but put it in a store.
- 2:34SPEAKER_01: Is it gonna sell?
- 2:35SPEAKER_01: Probably not.
- 2:36SPEAKER_01: That's not the point.
- 2:37SPEAKER_01: The point is you practice that whole process.
- 2:40SPEAKER_01: So practice in your free time.
- 2:42SPEAKER_01: If if your idea is I want to write code for other companies as a freelancer, well, okay, then start doing projects for your spouse or your friend or somebody else where you're saying, hey, I'm gonna ask you to be my client, and I want you to give me a small project that I can do, or even here's a small project I'm gonna do for you.
- 3:06SPEAKER_01: Will you be my client?
- 3:07SPEAKER_01: That way they can help you by practicing the other side of it, where they say, Hey, I haven't seen anything in six months.
- 3:14SPEAKER_01: Are you gonna get my project done?
- 3:16SPEAKER_01: And you work through the whole process of delivering an app on time and communicating what the app does and the handoff process and all the rest.
- 3:25SPEAKER_01: Practice those things.
- 3:27SPEAKER_01: Your first time doing anything shouldn't be in production.
- 3:30SPEAKER_01: You should know this as a developer.
- 3:32SPEAKER_01: Well, the same is true being a consultant, the same is true selling software.
- 3:37SPEAKER_01: The first time you do something shouldn't be the time you're counting on to work.
- 3:42SPEAKER_01: Okay, so practice.
- 3:45SPEAKER_01: Number three, build up your network of context.
- 3:50SPEAKER_01: Know people in the industry.
- 3:52SPEAKER_01: Have a list of people you can talk to, have a list of people that you've met, that you've built relationships with, that can give you feedback, that can promote your stuff, that can help you along the process, maybe find you clients, maybe be your client.
- 4:08SPEAKER_01: Build up your network of contacts.
- 4:11SPEAKER_01: Meet people at meetups, meet people at conferences, meet people at events where developers are, meet people in other companies that work as developers.
- 4:21SPEAKER_01: Meet people, talk to them, build relationships.
- 4:24SPEAKER_01: Number four, map out the entire process of what you're gonna do.
- 4:30SPEAKER_01: Let's say you're going to be an independent software consultant where you come in and help companies by writing code for them.
- 4:38SPEAKER_01: Okay.
- 4:39SPEAKER_01: So I want you to map out the entire process of getting that customer through being done with that customer.
- 4:46SPEAKER_01: So map out what am I gonna do for marketing?
- 4:49SPEAKER_01: How's that gonna work?
- 4:50SPEAKER_01: What am I gonna offer?
- 4:51SPEAKER_01: What are the services I'm gonna say, this is what I do?
- 4:55SPEAKER_01: What's the contract gonna look like?
- 4:57SPEAKER_01: Do I have a contract?
- 4:59SPEAKER_01: How's the accounting gonna work?
- 5:01SPEAKER_01: How am I gonna deliver that code?
- 5:03SPEAKER_01: How am I gonna handle payments?
- 5:04SPEAKER_01: How am I gonna deal with issues with a client?
- 5:07SPEAKER_01: How am I gonna deal with legal issues?
- 5:09SPEAKER_01: And what do I do about having a lawyer that can help me and knowing who that is?
- 5:14SPEAKER_01: Working through budgetary issues and making sure that you have enough money coming in for what you're doing.
- 5:21SPEAKER_01: Have that whole process mapped out before it's under pressure, okay?
- 5:27SPEAKER_01: Before you're faced with the, oh no, I have to know tomorrow how to handle payments.
- 5:33SPEAKER_01: Oh no, I need to know today how to deal with this legal issue.
- 5:37SPEAKER_01: Okay.
- 5:38SPEAKER_01: Know ahead of time by mapping all those things out.
- 5:41SPEAKER_01: Have a plan from start to finish.
- 5:43SPEAKER_01: And if you say that's overwhelming, it definitely can be.
- 5:46SPEAKER_01: But here's the deal: it's even more overwhelming when you're under pressure.
- 5:50SPEAKER_01: It's even more overwhelming when there is a problem that you have to handle with one of those things that you don't have mapped out yet.
- 5:58SPEAKER_01: So map those out ahead of time.
- 6:01SPEAKER_01: Number five is identify what you need to live.
- 6:06SPEAKER_01: What I mean by this is when I was a consultant, um, I worked both for companies and then also independently.
- 6:13SPEAKER_01: And when I worked independently, I had a certain rate that I needed to hit for 20 hours a week.
- 6:19SPEAKER_01: And that was my goal was 20 hours a week, where if I made my rate for 20 hours a week, then I was set.
- 6:27SPEAKER_01: And that included buffer.
- 6:29SPEAKER_01: That included extra time for when I didn't get those 20 hours a week.
- 6:33SPEAKER_01: But I needed 20.
- 6:34SPEAKER_01: Now my goal was to work 40 or more, but my need to have was 20 hours per week.
- 6:42SPEAKER_01: And I budgeted that way because I wanted to make sure that it was achievable, that I could still do it even in lean months.
- 6:50SPEAKER_01: So identify what you need to live and then work your numbers accordingly.
- 6:54SPEAKER_01: And you might say, well, Tim, that makes for a number that's way too large to tell a customer.
- 6:59SPEAKER_01: Well, then you can't afford to be a consultant, can you?
- 7:03SPEAKER_01: Because if they can't meet the rate that you need in order to survive, well, then you can't hire them or bring them on as a client.
- 7:12SPEAKER_01: Therefore, if you can't find clients that can meet that need, you can't be an independent software consultant.
- 7:18SPEAKER_01: It's just that simple.
- 7:19SPEAKER_01: And don't start compromising and saying, well, I'll get there eventually.
- 7:22SPEAKER_01: Because here's the thing.
- 7:24SPEAKER_01: When you tell a customer, I'm gonna charge you$300 an hour.
- 7:30SPEAKER_01: Then later you come back and say, actually, I need$500 an hour.
- 7:34SPEAKER_01: They don't like that.
- 7:36SPEAKER_01: But if you tell a customer, I'm gonna charge you$500 an hour, that's what the rate is, and they say, okay, we're gonna take that.
- 7:43SPEAKER_01: Cool.
- 7:44SPEAKER_01: Like you're you've set up your expectations, and your client has the expectation that you're gonna cost this much.
- 7:53SPEAKER_01: And if you keep it at that rate, they're happier.
- 7:56SPEAKER_01: Now, I encourage you to up your rates over time, but set yourself up at a high enough rate where you can survive.
- 8:03SPEAKER_01: And I encourage you to look at no more than 20 hours a week of income because the reality is back on step four, we talked about the whole process and it's marketing and accounting and legal and payments and all this administrative work.
- 8:18SPEAKER_01: Well, that takes away from your time to actually do billable hours.
- 8:23SPEAKER_01: And so you don't have 40 hours, 50 hours, 60 hours a week to bill when you have all that other stuff you're doing too, unless you've spent a lot of time at work.
- 8:35SPEAKER_01: So you're gonna have weeks where you only get 10 hours, you get 15 hours, maybe even zero hours, and making sure you have a plan for that and making sure that your average is that 20.
- 8:49SPEAKER_01: Now, number six is start part-time in this while you're still working full-time.
- 8:56SPEAKER_01: So start this part-time and start doing these things on the side.
- 9:02SPEAKER_01: Now, that might be hard, and you know what?
- 9:04SPEAKER_01: It's going to limit what jobs you can do, or what things you can build, or how long it's gonna take to do certain things.
- 9:11SPEAKER_01: But start there.
- 9:12SPEAKER_01: This is how I started.
- 9:14SPEAKER_01: I spent years where I did this on the side and eventually worked up to I'm doing this full time and I have lots of work to do.
- 9:21SPEAKER_01: And by the time I was done, I'm like, I have too much work to do.
- 9:24SPEAKER_01: I'm gonna start telling people no, no, no, when it comes to consulting.
- 9:28SPEAKER_01: And now I tell everyone no.
- 9:29SPEAKER_01: Um, I have a separate company that we work with to do consulting if you ever need it.
- 9:35SPEAKER_01: But when you're working through what you want to do, you want to practice it, and then you want to start small and build up.
- 9:45SPEAKER_01: And that meant it's gonna mean sacrifice of time.
- 9:48SPEAKER_01: It's gonna mean that you're more tired.
- 9:50SPEAKER_01: It's gonna mean that you have to work some late nights sometimes.
- 9:53SPEAKER_01: That's going to happen as you get started.
- 9:56SPEAKER_01: And the temptation is, I'm just gonna quit and have all this free time.
- 10:00SPEAKER_01: The reality is when you work for yourself, you're gonna have even more times potentially where they're harder days, harder weeks than if you're working full time.
- 10:11SPEAKER_01: So, what you want to do is set yourself up for success, practice it, make sure this is what you want, and start ramping into the process rather than just jumping in the deep end and hoping you can swim.
- 10:24SPEAKER_01: So, take the time to start up part-time and then go, do I like this or not?
- 10:31SPEAKER_01: Is this working for me or not?
- 10:33SPEAKER_01: And what do I have to do to make some adjustments so that when I am full-time, that this is even smoother?
- 10:40SPEAKER_01: Number seven, pay off your debts.
- 10:43SPEAKER_01: This is a weird one, right?
- 10:44SPEAKER_01: Because we're talking about becoming an independent software developer.
- 10:47SPEAKER_01: And you're like, what does paying off my debts have to do with anything?
- 10:52SPEAKER_01: When you don't have a regular paycheck coming in, when you don't have an employer who is paying for your healthcare, if you're in the US, um, when you don't have an employer paying into your retirement, you don't have, don't have an employer that's giving you regular income every week or every two weeks or every month, that can be scary.
- 11:12SPEAKER_01: Okay.
- 11:13SPEAKER_01: And it can add a lot of pressure.
- 11:16SPEAKER_01: And one of the things you can do ahead of time to help relieve that pressure and make it more likely that you will succeed independently is to have less need for money.
- 11:29SPEAKER_01: And one of the ways, the easiest way, and it's not easy, but one of the easiest ways to have less need for money is to reduce your debt.
- 11:37SPEAKER_01: Pay off your credit cards, pay off your cars.
- 11:40SPEAKER_01: If you can, pay off your house.
- 11:42SPEAKER_01: You might say, well, Tim, where am I getting all this extra money?
- 11:46SPEAKER_01: Number six, start part-time while working.
- 11:50SPEAKER_01: Okay, so that part-time income should be extra.
- 11:54SPEAKER_01: It should be income that you had not expected.
- 11:57SPEAKER_01: It should be income that you haven't been relying on.
- 12:00SPEAKER_01: Therefore, apply that income to paying down your debt and try to get it to as the least amount of debt possible before you go full-time.
- 12:09SPEAKER_01: And what that's gonna do is it's gonna mean that instead of needing$4,000 a month, we're just grabbing random numbers out here, instead of$4,000 a month that I need to live, now you might need$3,000 a month.
- 12:23SPEAKER_01: That can be a big difference when you are working for yourself.
- 12:28SPEAKER_01: Because some months you might not have a bunch of money coming in.
- 12:32SPEAKER_01: You might have people that you've done the work, but they haven't paid you, they're not gonna pay you for another 60 days.
- 12:37SPEAKER_01: Well, all of a sudden, you're kind of a big gap of time.
- 12:41SPEAKER_01: Having less need of money in that month, having$3,000 instead of$4,000 means that your savings can stretch longer.
- 12:49SPEAKER_01: Okay, so pay off those debts.
- 12:51SPEAKER_01: And that leads to number eight, which is build up a significant savings account.
- 12:55SPEAKER_01: Even if you have debts, have a significant savings account.
- 12:59SPEAKER_01: Have something where if you get zero dollars for a month, you're okay.
- 13:03SPEAKER_01: If you get zero dollars for two months, you're okay.
- 13:07SPEAKER_01: If you get zero dollars for three months, you're okay.
- 13:10SPEAKER_01: Now, that's a lot of money.
- 13:12SPEAKER_01: That's a significant savings account, but that's your buffer.
- 13:17SPEAKER_01: You want to have a buffer going in.
- 13:19SPEAKER_01: And as you launch and as you go full-time, you want to be adding to that buffer, not pulling out of it.
- 13:26SPEAKER_01: You don't want to be spending more than you're making.
- 13:30SPEAKER_01: I know that's obvious, but it needs to be said, you need to think about building that buffer up so that when the lean times come, when a customer doesn't pay, when you have to get a customer to court because they didn't fulfill their side of the contract, when you have a customer drop out, when you don't find a customer for two months, when the economy turns and you have to scramble to figure out what to do, you've got buffer time.
- 13:56SPEAKER_01: Okay, so build up that significant saving account.
- 13:59SPEAKER_01: Number nine, launch when you have about six months of savings.
- 14:04SPEAKER_01: That's my rough estimate.
- 14:06SPEAKER_01: And this is the estimate I still live on today.
- 14:08SPEAKER_01: So I own my own company, I have employees, we have six months of savings, not just for me personally, for the entire company.
- 14:17SPEAKER_01: We maintain that because of the fact that when something happens, when an economic downturn happens, when something goes wrong, we have time to figure it out.
- 14:27SPEAKER_01: We don't have to panic and say, oh no, what are we gonna do?
- 14:31SPEAKER_01: We don't have enough money for next week's paycheck.
- 14:34SPEAKER_01: Okay.
- 14:34SPEAKER_01: You wanna have that peace of mind.
- 14:36SPEAKER_01: Because I can tell you what, having six months in the bank allows you to sleep a whole lot better.
- 14:42SPEAKER_01: Because if you wake up tomorrow and your payment provider locks you out, well, you don't have to figure it out tomorrow.
- 14:50SPEAKER_01: Now you want to, but you can take some time to figure it out and make sure that you set yourself up for long-term success, not just a panicky move.
- 15:00SPEAKER_01: That's where launching, once you have six months of savings, is really going to help ensure and give you a whole lot better odds that your business succeeds.
- 15:10SPEAKER_01: You want to give yourself the best possible chance for success.
- 15:15SPEAKER_01: And waiting and being cautious and following this plan will help you get the best possible chance to be successful.
- 15:24SPEAKER_01: Now, number 10, this goes along with this, live below your means.
- 15:28SPEAKER_01: Meaning you should be bringing in more money than you're spending every month.
- 15:33SPEAKER_01: That's your goal.
- 15:34SPEAKER_01: More money than we spend.
- 15:36SPEAKER_01: Obviously, things are gonna happen, you're gonna have emergencies, you're gonna have, you know, ups and downs in the company, whatever that happens.
- 15:45SPEAKER_01: But on average, you want to bring in more money than you spent.
- 15:51SPEAKER_01: Don't just get that big contract and then go, woo-hoo, we're gonna spend lots of money.
- 15:57SPEAKER_01: I remember having a contract once.
- 15:58SPEAKER_01: I signed a contract for um$160,000 as a consultant.
- 16:03SPEAKER_01: And I was like, wow, that's awesome.
- 16:05SPEAKER_01: That's gonna set me up for long-term success.
- 16:09SPEAKER_01: And that contract did not complete.
- 16:13SPEAKER_01: We started in that contract, we went for a while, and then we ended up canceling that contract early and not paying the hundred and total$160,000 to me.
- 16:24SPEAKER_01: Which means that not only was I working pretty much full-time for one customer, which is dangerous, but also that when that customer went away, all of a sudden I had no customers.
- 16:37SPEAKER_01: So I went from having great income to zero income.
- 16:42SPEAKER_01: And getting a new customer is not like just calling somebody up and saying, hey, you got time now?
- 16:48SPEAKER_01: Because things take time.
- 16:50SPEAKER_01: Even a quick turnaround can be weeks or even a month.
- 16:54SPEAKER_01: So you're gonna have those times.
- 16:57SPEAKER_01: Now you want to write better at contracts, but also you want to be prepared for that so that when that happens, you're not like, uh-oh, like you've got time.
- 17:08SPEAKER_01: And where it's like, okay, not a problem.
- 17:10SPEAKER_01: We'll figure it out, we'll move on to the next thing, we'll make sure that we set ourselves up for the next customers more successfully, and we'll we'll move on from here.
- 17:19SPEAKER_01: Okay.
- 17:20SPEAKER_01: So live below your means.
- 17:21SPEAKER_01: So that's the 10 steps that I would say that will help you by first not quitting all the way through being wildly successful in your business, by making sure that you handle your finances properly, to have peace, have relaxation in your job, to make sure that you are moving forward in the right way and that you will have long-term success, even be able to weather some storms along the way and not have a total meltdown when something bad happens.
- 17:55SPEAKER_01: Okay, so working on your own is hard work.
- 17:58SPEAKER_01: It's even harder if you don't have a clear plan on how to be successful.
- 18:02SPEAKER_01: So I know this plan works because I worked that plan.
- 18:07SPEAKER_01: This is the plan that I followed.
- 18:09SPEAKER_01: So hopefully you can follow it as well and get similar success.
- 18:14SPEAKER_01: Thanks for listening.
- 18:15SPEAKER_01: And as always, I am Tim Corey.
- 18:17SPEAKER_00: Thank you for joining us for this episode of Dev Questions.
- 18:20SPEAKER_00: When you're ready to learn to think and code like a professional developer, head over to imtimcore.com and enroll in a course.