Embedded - 4: Are We Not Lawyers?

Episode Date: June 6, 2013

Elecia and Chris (@stoneymonster) discuss why they chose to go into consulting and what they've learned while building Logical Elegance into the company it is. SCORE is a great resource for small busi...ness, even consulting firms.  Also check your local small business administration (SBA) chapter. Elecia's salary to rate conversion can be found as a Google spreadsheet.  Chris suggests Crash plan and Backblaze for backing up your client specific virtual machines (and everything else!). If you have specific requests, drop us a note via the contact link on embedded.fm. 

Transcript
Discussion (0)
Starting point is 00:00:00 Thank you. where the money you get for the work you do is a little bit more one-on-one. Chris, I'm glad you're here. Hi, I'm glad to be here. Just for legal purposes, I want to make it clear that this show does not constitute legal advice. If you're thinking about hanging up your own shingle, this should not be your sole resource. We will be talking about resources, though, throughout the show, and we'll provide the links at embedded.fm. So first question for you. Contracting or consulting? Do they mean the same thing? Which word do you prefer? I tend to use them pretty interchangeably and maybe there's a legal
Starting point is 00:00:55 distinction that I'm not aware of. In my mind, contracting simply means that you are doing some defined work for a client based on a contract. And usually that's a project, like we need you to come in and write a device driver for this system, or we have a bug that none of us can solve, or we don't care about in some sense that, you know, to have our full-time people working on it, but we'd really like to get it looked at. So we'll have you come in for a defined period of time, six months maybe, or even a month if it's a short-term project. And that's contracting to me,
Starting point is 00:01:31 whereas consulting is sort of the same thing, but it might be a more loose kind of arrangement where you have an agreement with a client to provide them advice from time to time or be available for their use over a period of time. But you might not be working on a singular project. So to you, it's about the agreement. If the agreement is fairly short or has a fully enclosed described project, that's contracting.
Starting point is 00:02:01 But consulting is more where the contracts don't really have the exhibit A that says what the statement of work is. Or the statement of work just says, do whatever we tell you. Exactly. Exactly. Okay. Certainly I use them very interchangeably. I use consulting when I'm trying to sound fancy. Yeah. And I think consulting has that connotation. Um, you know, think of the Sherlock show, the consulting engineering. It's somebody special who's providing us with advice that we wouldn't normally be able to get in some sense. Whereas contracting is just, well, we hired this person to do six weeks of technical work for us. And, you know, we could have hired a full-time person, but for whatever reason we didn't.
Starting point is 00:02:43 Well, if it's only six weeks full-time, you don't want to lay them off. There's a lot of difficulty laying people off or even firing them. So contract is a way for people to dip their toes in or even to contract a hire, I hear a lot. It makes interviewing much easier if you get to interview them over the whole six weeks while they build you something. Yeah, and there's obviously pluses and minuses with that because, you know, with an interview, your, your downside is usually a few hours for each engineer. Whereas if you're doing contract to hire, you're bringing somebody in and you do actually do want something to get done. Um, so you're not, you know, you're not totally speculating that, well,
Starting point is 00:03:24 we'll just hire this person and see what happens. So there is a balance there where, not, you know, you're not totally speculating that, well, we'll just hire this person and see what happens. So there is a balance there where, yeah, you are, it is a better way to guess or to get an idea of somebody's capabilities. But there is some risk that you're going to lose more time if they aren't competent enough. Well, sure. even getting somebody's computer set up to use tools and and getting them so they can commit to your version control system this takes time for someone and if the person in question is no good at all then that's totally wasted time on the other hand most of the time when i get a contract there's a at least a little bit of an interview period, unless I'm getting it through a friend.
Starting point is 00:04:09 That usually doesn't mean there's much of an interview period. But before we get into how to get a contract, you're pretty passionate about contracting and consulting and essentially getting paid by the hour to do what you do. Why? Why do you like it? Well, I think it's different from person to person. Some people probably would much prefer it be full-time because there's a sense of security with that, you know, job security. Well, you know, I'm in with this team, you know, I've been here for a long time, you know i've been here for a long time you know i know these people etc for me uh that was actually sometimes a downside particularly with some of the the companies i was working for and i'm not
Starting point is 00:04:55 going to name any names but um you know they had peculiar cultures for example, or, or, uh, strange ideas of what was a normal working environment for an engineer. Oh yeah. There was the one who wanted you to show up every day at 7am and build a software team that would all do that. Right. And, and, you know, I, I think most people who were in the software industry would, would note the difficulty of hiring people in our field of expertise who were willing to show up anywhere at 7 a.m. Oh, I love to work at 7 a.m. Except maybe come home and go to bed at 7 a.m. Well, there are a lot of those people too.
Starting point is 00:05:39 So for me, it was very personal. At the time when I became a contractor, I wanted to get out of the situation where I was continually getting angry with the company I was working for because they kept imposing strange new rules or asking for things that I fundamentally disagreed with. time my position there was that was ostensibly as a director so i should have had uh you know more input and feedback into the environment for the engineers than i did and so you you were managing a team yeah and uh and yeah the anger part it's funny how for me when i went to contracting it divorced me from the company before i I was always very raw, raw, this is our company. This is our team. We're the best. Let's go. Yay. Stock options make it so that this is all, all of my 60 hour work weeks are worth it. But somehow now they pay me for my time and when they're done paying me for my time, or when I clock out,
Starting point is 00:06:50 I don't have to worry about them, mostly. Yeah, and that was exactly it with this particular case, and I don't want to harp too much on this, but with this particular case, you know, the pressure to be there for a certain amount of time, you know, 7 a.m. to 6 p.m. or 7 p.m. was very intense. And there was a lot of, a lot of even peer pressure. You know, if you left at five after a long day and had accomplished a lot, well, that didn't really mean anything because you left at five. And, you know, what you were doing and accomplishing was not as important as the appearance of having your butt in the seat for the appropriate amount of time. And so I had a lot of guilt over that and it was, it was causing me some, some problems. And, you know, my team was doing a tremendous amount of work and it was way ahead of the rest of the company,
Starting point is 00:07:33 so much so that we had, you know, had time to reprise one project a couple of times and improve it before anything ever left the door. So when I went to them and said, I want a contract, you know, one of the benefits of that was I got paid by the hour and the guilt evaporated because if I wasn't there, I wasn't getting paid. And that was it. And, you know, I actually went to being there a lot less and getting a lot more done. Yes. A lot of the contracting people i've talked to have a feeling of you get paid for accomplishing things you get paid for getting things done and in a salaried position you get paid for something a little less concrete than that yeah and there were certainly times uh when i had the full-time job there that I would get zero done during the day.
Starting point is 00:08:25 Maybe have a couple meetings, maybe a long lunch, and then, you know, be stuck on something for a couple of hours. But, you know, I was getting paid, I was salaried, and, you know, I was ahead, so why put in the extra effort? Whereas if you're getting paid depending on what you're actually doing, you know, it's a great incentive. The salary is not that great an incentive sometimes because it's somewhat nebulous.
Starting point is 00:08:50 And you may get fired in the long term. You may lose your salary in the long term. But in the short term, an hour spent goofing off doesn't really hurt you. And now I can clock out. In fact, one of the things I love is that if I want to clock out at 11 o'clock and make a fancy lunch, I can do that. And it's no skin off of anybody's nose. It's just I have something else I'm doing. If I've got a meeting, of course, I don't do that. But I don't have any guilt about I'm walking away. And I find my codes a lot better for that because I interrupt myself when I'm stuck
Starting point is 00:09:30 and I walk away. I go for a walk. I do things that need doing. Sometimes I just go sleep and I can come back and have a much better solution instead of just figuring my butt has to be in the seat until everybody else goes home. And so I'm just going to pound on this and not get anywhere. Right. Yeah. And, you know, I agree with you that one of the side effects has actually been improved quality of work because, you know, you feel like you're being directly compensated.
Starting point is 00:10:00 And, you know, a lot of the times with salaries and full-time jobs you do have the sense that you're invincible and that you can't get fired which is totally untrue but it does feel that way and that can be a disincentive in some sense i mean not for me personally but i have worked with people who you know they're just there and they don't do very much. They contribute very little, but occasionally they check in some code that somebody else has to clean up. And those people just reside at the company indefinitely. But since we get paid by the hour, if I don't feel good, I don't want to get paid for that hour. I mean, people pay me enough money that it's worth it for me to be on, you know, I'm putting in my A game. And so if I'm sick or tired or angry, is it something that's happened? I don't need to be clocked in that.
Starting point is 00:11:01 Yeah, the flip side of that, of course, is that you're not getting paid. And so, you know, if you do have an extended downtime for some reason or something happens, um, you know, you're not going to be charging your client for work that's not getting done. So, you know, you have to factor that into a lot of things. Um, both your, you know, the details of your contract, even your rate, um, you have to account for the fact that you're not getting sick days exactly um and if you are somebody who is sick often or has a family that can be a real problem there are a lot of times just the chores of the house can eat up hours of my day and i would like to say i'm working then, but I'm not, I'm really not. So
Starting point is 00:11:46 I can't charge anyone and I can make it up later in the day, but you have to balance it more. You can't, you can't push off tomorrow's work in or today's work into tomorrow and get paid today. Yeah. And I think, I think it comes down to, uh, you know, a sense of with more freedom comes some different responsibilities. I'm not going to quote Spider-Man exactly, but, but you want it to, but yeah, but you do have more freedom as a contractor, but that also means you have more rope to hang yourself with in some sense. Well, in the freedom for me, I tend to get a little obsessive about my non-paying jobs, you know, a new podcast, a new product idea, new article to write for a magazine.
Starting point is 00:12:34 And none of those things am I going to get paid for. So I have to make sure that I do work necessary to pay my bills before I start goofing off on these projects that I tend to just fall in love with. It does give me lots of opportunity to find these other little products. And I have found that many of those have been very beneficial for clients because I've already written whatever driver I've needed and I've done it on my personal time. So I can apply it to their project and poof, they got an hour of work that I'm not really going to charge them for. Cause for me, it just means I get to go on faster. I get to get things done more. But, um, but I have to be very aware that that freedom comes with the responsibility to rein myself in and not just work for three weeks on some fantastical little
Starting point is 00:13:25 idea I've got. Yeah. And so, I mean, that's, that's a very positive sort of outcome of the freedom that you're working on other things. Other people, not naming any names, certainly not myself, can get into trouble with, you know, having too much freedom the other way and saying, well, you know, I've, I've worked some number of hours today. I'm just going to, I've made my dollar quotient or something, or I'm headed toward, you know, a good month and I can just goof off for a little bit, but you do have to, you know, maintain your client's schedule and meet their expectations. You know, it's not just making the hours. And because we are almost always looking for a job
Starting point is 00:14:06 we have to maintain our skills some and make sure that our resumes look good and that our online presence is good our website loads well that sort of thing it it's a it's a never-ending little set of things that need to be done and the it IT work, we do all of that ourselves and our clients don't pay for it. Yeah. And that, you know, that that's that continuing education thing that, you know, in a full-time company, you might be paid to attend a seminar here or there or a conference, um, go to a class, you know, get a certification of some kind. Um, you're going to be doing that for yourself. And you're going to pay for the conferences yourself unless you take the time to write a paper and present it, in which case you will have paid to go to the conference
Starting point is 00:14:52 because your time now is very valuable. It's not quite the same, but in a lot of ways, once that time starts becoming money, you have to remember the things you should pay for and the things you should have time for. I met a contractor early, early in my career, before I really knew much about what contracting was, who worked all the time. And she drove a beautiful car. I think it was a Viper or something. And I was shocked at how much she couldn't not work because time was money and she didn't value her personal time above her work time. She worked and worked and worked and worked until finally she just burnt out. I don't have that problem. I value my time spent even reading novels
Starting point is 00:15:48 over my time spent mining salt for clients. But I do occasionally worry. If I'm worried about funds because we have to pay taxes or car payments or whatever, I do start to get into the habit of working a few more hours and then a few more and then a few more. Right. And well, yeah, I mean, it's easy to get addicted to the to the hours in some sense, because, you know, unlike a full time employee of a company where you have a set salary, when you're working hourly, you're in a great
Starting point is 00:16:26 deal more control in some sense of how much money is coming in. As long as you have a client. That goes without saying, as long as you have a client, yes. And, you know, and the terms of your contract are loose enough. You do have some control over, well, this month, you know, maybe I'm going to put in 100 hours. This month, maybe I'm going to put in 100 hours. This month, maybe I'm going to put in 150. Oh, it's March and I'm behind on some stuff, you know, some payments or I want to buy something.
Starting point is 00:16:53 You know, I could work an extra hour a day and suddenly you've given yourself a raise. You know, you're working more, so it's not like you're getting the same amount of money for the same amount of work. But you do have more control over that inflow than you would as a normal worker whereas you know your only recourse there would be to ask for a bonus or a raise or an advance which is even worse so um yeah and i knew people uh i've worked with people who would take contracting gigs and they would extol how they made you know 40 50 000 in a couple months over they made, you know, 40, $50,000 in a couple of months over the summer. But, you know, they killed themselves to do that. And then they weren't doing that for the rest of the year. So, you know, finding a sustainable pace with a little bit of flexibility, um,
Starting point is 00:17:37 is a skill that people need to develop. Well, then we do that here at Logical Elegance. We're far more focused on having a good balance between work and life and education and exercise and all the things that make us well-balanced humans. I mean, we both kind of light up with when we're talking good technology. We don't necessarily need to contract every minute of the day. And we're fortunate because we are in Silicon Valley where there are a lot of clients. And we're fortunate that we didn't do this in the first 10 years after we started working. We waited until we had a lot of friends in a lot of different companies. And now getting clients isn't too hard. We say, you know, we've got some time coming up next month. Have you heard anybody who might need some help?
Starting point is 00:18:42 And that's worked pretty well for us, but it doesn't work for everyone. Yeah, so that leads me to kind of a general question, and I have an answer and I think you have an answer. Contracting is not something you're going to do straight out of college as your first job. I've met some people who have, but they aren't people I would like to work with again. I mean, were they successful? Some of them. I worked at HP right out of school and you worked at Cisco. So we got a taste of fairly big companies with stable environments and ways of handling new college grads, teaching them to grow up to be good
Starting point is 00:19:20 engineers. Everything from how to interview to how a version control system looks and the the good and bad about that these people didn't have any yeah see it seems to me that you've got to have enough experience with enough different companies um to be able to navigate you know a variety of environments and, you know, different cultures, because you're, as a contractor, you're going to be dealing with different cultures, you know, a few times a year, different software development environments. Like you said, the tools are going to be different every time. And by cultures, you don't just mean ethnic cultures, but business cultures. No, no, I don't mean ethnic cultures at all. I mean,
Starting point is 00:20:04 yeah, business, business cultures, you know, one know one company might have you know and this is for people who are going to be working on site but one company might have an open floor plan one company might encourage all kinds of interaction and different kinds of meetings one company you know might have some very uh strong personalities and egos that you have to deal with and have the interpersonal experience to, to, uh, you know, be able to manage that yourself without getting into trouble. Um, well then even things as simple as beer, one company might, you know, five o'clock, if you don't have a beer on your desk on Friday, you're, you're not one of the team. You're, you're some sort of alien and a different company you keep a bottle of whiskey in your desk and you're getting a lot of trouble i that's never i don't know what you're talking
Starting point is 00:20:52 about certainly not not gone in trouble for that but yeah moving on so people who who should and should not be so people who should not be contractors people who are really shy because we you do have to talk to lots of people and you have to manage yourself and you have to manage your expectations. You have to market yourself too, which for most engineers, for many engineers, is not a skill set that they have naturally. On the other hand, when I met a contractor, when I was just thinking about starting my own company, I met at one of the IEEE after work things and got to talking and asked what the most important part of the consulting company he was working for was. And he thought it over really quietly for a few minutes and I expected him to say marketing I really did because that's where engineers fall down and he was clearly an engineer and and he answered accounts payable
Starting point is 00:21:55 one of the bad sides of of doing contracting is that there are people, usually startups, who don't pay you. Yeah, and you've had more experience with that than I have. I've had some late payments, but certainly no non-payments, and I've been very lucky. And I've had quite a few clients in the last few years, so I've had enough exposure to statistically hit one by now, but I haven't. Knock on wood. Yeah. So what happened with that, and what was your recourse? Well, I've had two times where it's been tough getting paid.
Starting point is 00:22:37 For one, it was a fixed-bid contract, and that's where they give you all the information and you say how much it will cost to do the whole job. And I did it and it was a job that required quite a lot of math. The math was the hard part. The code wasn't very hard, although they needed it optimized in such a way that required pretty specialized skills.
Starting point is 00:23:05 So I did all the math and I found some code online to model it on. Now was where I got into trouble, even though the code was very clearly marked copyright free. And I contacted the author and he said, yeah, go ahead and use it. I just put it up there because it was a school project. I took it, I compiled it, I redid it in assembly. But because I had a basis and because I showed my work, the client wasn't very happy. After arbitration, which is another whole experience, and that was horrible, of course, the arbitration folks said I did everything right. And I, of course, thought I did, and I was happy to have that reassurance. But the client only paid me about 40% of what they owed. Um, and I wasn't, I didn't want to go to lawyers. I didn't want to do more than that. More recently, uh, one of the little startups
Starting point is 00:23:57 I worked for went out of business and, you know, they, they stopped paying their full-time people. They stopped paying their contractors. They stopped paying anybody they owed money to. And at this point, I know they own a valuable patent, but they aren't getting any cash in. So what do I do? Do I spend a lot of money on a lawyer and write letters that say, I hate you, I hate you? Do I walk it off?
Starting point is 00:24:22 Because they did pay most of my bill over the course of the year that I worked with them? Or do I tell you what their name is and hope that nobody else gets in this trouble? I'm not going to do that. Paying most of your bill is kind of like horseshoes and hand grenades. I mean, you have a contract with somebody. It's a business agreement.
Starting point is 00:24:42 They're required to pay you the entirety of their bill. Now, of course course if they're completely out of money and don't exist and they're a smoking crater then yeah you don't have much recourse that i know of uh well there's small claims court and i do send about i about once a month i send them a letter saying you owe me money so that i continue to have that recourse but is it how much effort is it worth? It's a negative thing. I'd rather build stuff. Yeah. And it is a bit of a gamble, right? Because like you said earlier, time is money and time is even more money when you're a contractor. So, you know, you have to weigh how much money you're likely to recover against how much time you could be spending on something else. But now we have more, we look more at late fees when we have new contracts and we put
Starting point is 00:25:31 in some more safeguards. And I certainly don't work a whole lot of hours for a company that doesn't have a good payment history. Yeah. So that brings up the good question of what do you do with the contract itself, right? Because in my experience so far, most of the contracts I've signed have been written by the company, the client, and they consist of a huge amount of boilerplate that oftentimes they haven't even read. No, no, I've found many spelling mistakes in the boilerplate that oftentimes they haven't even read. No, no, I found many spelling
Starting point is 00:26:06 mistakes in the boilerplate. And, you know, things that refer to things that don't exist anymore. And so it's really important that either you read the contract yourself and convince yourself you understand it or have a lawyer look it over, especially if it's something that's going to be the bulk of your work for a year. If you're going to sign up for a year with a client or six months and they're going to make up most of your income, you want to make sure you've got something pretty rock solid to defend yourself with because that's what the contract is for. It's to defend you and to defend the client if anything goes wrong. And even though you may like this person, even though you may have
Starting point is 00:26:49 worked with this person before, a handshake isn't good enough. And if you think about how much money you're likely to make over the term of working for them, assuming everything goes well, then the lawyer fee may not look as bad. And I want to inject a little ad in here for SCORE, which is S-C-O-R-E. And it's a small business resource. In the Bay Area especially, the SCORE folks are very focused on software consulting. So they can help you. They can lead you to lawyers who will look over your contracts for a fairly nominal fee.
Starting point is 00:27:30 And even they can help you look them over yourself and explain all the details. It's mainly retired business people who get a little bored and volunteer. And they get some money from the Small Business Administration. I didn't go there initially when I started the company because I thought it was all for restaurants or retail. But it depends on what area you're in. Here, when I went in to visit them just to find out what they were about a couple weeks ago,
Starting point is 00:27:57 they said, yeah, we do almost all software contracting. And if somebody's in San Francisco, they suggest come down and talk to us. But if you're in the Bay Area and you go to SCORE and you have a restaurant, they may send you back in San Francisco, they suggest come down and talk to us. But if you're in the Bay Area and you go to SCORE and you have a restaurant, they may send you back to San Francisco. Right. Because there's specializations. So check out your local one, ask them what's going on and maybe get affiliated with one who isn't local to you. But it's worth at least having access to a few different contracts to see which clauses are standard. Yeah, and I think you can find some on the Internet as well.
Starting point is 00:28:30 I mean, there's some standard contracts up there. One thing I haven't done and that people recommend is having your own contract that you take to clients. But I have not had many clients that have been happy about that. They kind of want to control the process a little more. So I don't know. I don't really know how common it is, unless you're a larger consulting firm than just yourself or yourself and a business partner, you know, to bring in your own contract.
Starting point is 00:28:56 I've had clients offer it, but, yeah, for the most part. And when I was a hiring manager and hiring contractors, I wanted to use my companies because I knew what it said and I didn't have to read it. So I can see both sides of that argument. And I think for the most part, you're going to be reading theirs and hoping there isn't a secret clause in there that says you give them their, your firstborn or whatever. Right. So when you're looking at a contract, there's a few major areas that I think are really important. And, you know, first, payment terms.
Starting point is 00:29:28 What are they paying you? And when? What are the limits? Oh, can you only work 30 hours? Because sometimes they want to limit their liability so that you don't work 90 hours and suddenly charge them a whole bunch. Right. And sometimes that's a monthly limit. Like, you know, we only want you to work 120 hours in the month, giving you more flexibility during the week.
Starting point is 00:29:47 So you could burn yourself out and work 120 hours the first week of the month and then legally be not allowed to work any further until the month rolls around. That does not make for happy clients. No, it doesn't, so managing your time is important. The other clause is a subclause to that, which you've mentioned in passing, and that's late fees and consequences for what happens if the client doesn't pay on time. And those are usually in terms of net 30, you know. That means they get 30 days to pay you, 30 days to cut the check from the time you put the bill in. Right. And, you know, I've seen net 45 and net 60, but. Net 90, even if you're working for
Starting point is 00:30:25 a large company. Yeah. And the downside of that, of course, you start working in the first time you can expect to get paid is three months later. Which if your contract is only a month long, you don't hold many cards at that point. Yeah. So that's one of those factors, which I think we'll get into setting your rate, but that's another one of those factors that you might not think about that would influence how much you charge a customer, you know, just based on level of inconvenience. Uh, there was another, um, Oh, intellectual property. Uh, when you're a contractor, you're going to usually be working, uh, for startups a lot of the time, maybe not, but a lot of startups are, uh startups enjoy hiring contractors because it gives them a lot of flexibility.
Starting point is 00:31:08 But they've got a lot of secret sauce that they want to protect. And you as a contractor might have your own intellectual property, things you've developed on your own time or that you're currently working on as a side project for yourself that may have some overlap with your client. And it's really, really important to be extremely clear about what the company owns and what you own. So you don't end up, you know, with, you know, a big conglomerate owning your pride and joy that you've been working on for two years. Well, even non-competes. I recently challenged a client's contract for the area of non-competes because they wanted to say I couldn't work in anything that had to do with silicon chips. And I said, you guys don't even make silicon chips. And of course I'm going to be working in silicon chips. All chips are silicon. This is dumb. And the hiring manager looked at it and
Starting point is 00:32:05 said, yes, I agree, and had it struck from the contract. So you do have some flexibility with your contracts, even when you're using theirs. Right. And you should be aware that, again, the client may not even know what's in the contract they're handing you. Exactly. In this case, that was true, right? Very much. Here's this ridiculous non-compete clause, which, as far as I know, most of those kinds of things are not enforceable, at least in California. Especially not in California. But there it was, and it was very specific about, you know, you can't work in computers for a full year, you know, after this contract, which is completely untenable. So we started talking about types of people who should not be contractors. The shy, if you're not confident in your ability, you do have to be a rapid learner.
Starting point is 00:32:50 You have to be the sort of person who can walk in and apply old knowledge to new projects and at least look like you're making progress really quickly. Now, do you have to rewrite some of that code because it's really prototype code? Maybe. But I think it's important to start out that first week making a fantastic impression. I totally agree. And I think that's what's expected of you in these circumstances where a full-time employee, you're going to get a lot of leeway. You might have a mentor assigned to you to ease you into the new company. As a contractor, most of the time that's not going to happen. You're expected to hit the ground running. And, you know, by the end of that first week, you should at least have something substantive to say about the
Starting point is 00:33:34 project that's going to move it forward. It may not be code at that point. Maybe, well, here's my proposal for how we go about this. Maybe it's a detailed scope of the work that you're going to achieve with, you know, schedule and things like that. But it's definitely, it's definitely expected, or at least if I'm hiring a contractor, it's definitely expected that they're going to demonstrate their competence quickly, really quickly. And keeping clients happy, you have to be good at communication. You can't, I mean, I'm an introvert. I would much rather hang out by myself and stare at my computer and maybe have people pass puzzles underneath the door while I sit in a locked library and solve things. That's not how you go about consulting. Yeah. And I've got some stories about how not to
Starting point is 00:34:26 go about consulting from people who used to work for me when I was not a consultant, but a manager. And just to be brief, I had somebody who was not my choice to hire as a consultant, but it was, he was encouraged that I have him on my team by other elements within the company who had worked with him in the past. And I made it extremely difficult because he was not a great worker. He was rarely visible. And I don't mean rarely on site. I mean, he was rarely in contact with the world. No Skype, no IM.
Starting point is 00:35:03 No Skype, no IM. You know, would answer emails very sporadically. And his working style was to show up on the weekends and work for 48 hours straight, which... That leads to not great code. And to deliver just random code that was extremely poor. And then he would charge the client an exorbitant amount of hours.
Starting point is 00:35:23 And that's what finally was the straw that broke the camel's back. He charged a whole bunch of hours, and then he just disappeared for three solid weeks. Wait a minute. Was this the one that got arrested? Yeah, yeah. So it turns out that he got pulled over on I-5 doing 120 miles an hour in a minivan. And they took him in. And I don't know if that was the whole story that caused him to disappear for that amount of time, but it certainly was part of it.
Starting point is 00:35:51 And yeah, so you don't want to be that person. No. Because you're not going to get another job because unless you're, you know, moving to another part of the industry where nobody knows anybody, it's kind of a small world. And even, I mean, if you're moving to another part of the industry where nobody knows anybody. It's kind of a small world. And even, I mean, if you're moving to another part of the industry, you don't have contacts there. So it's much harder to get clients. Yeah. And it is a really small, small world. And actually, the smaller the world, the better for you if you're a good contractor, I think, because one of the ways, I think, to become successful is to cultivate, is to be a generalist,
Starting point is 00:36:34 but to cultivate a couple of areas of real expertise. And what I mean by that is you should be able to do anything, or most anything, that is going to come up in software engineering. If you want to keep your plate completely full. Well, I'm pretty specialized and embedded, but I can write a PC program. You can write, exactly. I don't know, and I could write a Python program. I've done JavaScript, although I don't like to admit that.
Starting point is 00:37:01 I don't know that I could do a big cloud web virtualization thing. No, and I don't mean anything, but I mean, you know, a broad array of skills, things you've seen, things you've done. You may not, you know, you may not jump up and say, yes, I want to write that PC application. But if you had to write a manufacturing tool or you had to write a test program. Something to talk to my widget. Yeah, I do that often. You could do that, right? And that just means you're going to be able to take more contracts than somebody who only knows Java, only knows.NET, you know, is very focused on a particular kind of programming. But if I could only take signal processing contracts, I would. That would be great. That
Starting point is 00:37:42 would be totally fun. Yeah, and then that goes for me as well. I mean, I have a couple of areas of expertise that I've developed kind of accidentally, which have gotten me a series of pretty good contracts. And, you know, it wasn't planned that way. But looking back, I can see that, hey, you know, here's this area, it's an up and coming area of technology, it's definitely a niche area. Um, and so somewhat paradoxically being a small, you know, kind of, uh, small world with, with few people working in it can get you more contracts if it's a hot area. So, so it's good to have a fair amount of breadth and one or two areas of depth. Yeah. And I think that's the right way to put it. So let's see.
Starting point is 00:38:28 We did want to talk about some of the bad things. We talked about not getting paid. That's probably the worst things. Not having a client can be pretty bad. It can be really stressful, especially if it's at the wrong time. Yes, because it always seems like maybe tomorrow you'll have one. I always think, you know, when I finish this contract, I'll have some dead time. It'll be great. I'll take some time off. I'll work on my own projects, take a vacation. But what happens is at the end of a contract, I tend to get a little
Starting point is 00:38:56 nervous. What if I take a whole month off and then start looking for work and there isn't anything. Um, and, and as time has gone by, that doesn't strike as bad or, or as often, because now if I had all of July off, which is when my next client or my next contract probably ends, uh, I would write a couple of articles. I have a conference I'm looking to go into in November. Maybe I'd actually figure out what I'm going to do there. And I wouldn't worry so much about what was going to happen in August. Yeah, and that comes with experience, right? I mean, you've had some periods where you haven't had contracts and you figured out how to deal with that.
Starting point is 00:39:45 Yes, and one time I actually took a full-time job and because they didn't want to have a contractor and I really wanted to work on what they were going to do. And that lasted for a couple of years. And then I came back to contracting. But you have to be a little self-driven because if you have six months of dead time and that's on your resume and you go in and talk to a new client, they're going to ask. And even if it's just I worked on an Arduino robot, that's a fine thing to have been doing. But I caught up on all of the TV shows that have been put on Netflix since 1974. That's not as impressive. Well, it might be impressive to somebody else, you know, outside the industry.
Starting point is 00:40:35 Maybe you could become a television reviewer. Maybe. along those lines, that fear, that fear of not having a job can motivate you to do some wrong things, or at least can motivate you to... Oh, you mean I shouldn't have put the backdoor in all of my clients' projects? I'm kidding. Totally kidding. No, I wasn't going there. I wasn't going to Superman 2 or three either where you should, you know, siphon off a half a penny of every transaction. No, what I was talking about was
Starting point is 00:41:10 the fear of not having a client causing you to have too many clients. This from the person who's juggling three and was juggling four. I totally admit to that. I have too many clients. That for myself, it's not because I fear not having one. It's because I'm absolutely terrible at saying no, which is something you need to get better at as a contractor, because there will be times when, you know, you're talking to somebody and it feels a little squishy. You know, they're a startup, they want to pay you in stock or, you know, in jelly donuts or something, they bring in every Friday or... Beer. A lot of the startups, beer.
Starting point is 00:41:52 Yeah. You need to do your due diligence with these folks and not let your fear of not having a job lead you to take one that's going to be worse than not having a job. Well, and that kind of who hires contractors, it's rarely the companies that have their things together. Yeah, and this is an interesting part of the whole equation, is that companies hire contractors over full-time people for a reason well and sometimes the reason is
Starting point is 00:42:27 simple sometimes it's we can't afford someone yet but we need full-time sometimes it's i have a small project that needs fixing and i don't have anybody i can allocate to it occasionally it's skunk works. I want some nifty new thing built and I can't have anybody do it because I can't really justify having a full time expense on my my sheet. Yeah. Yeah. But even that's a sign of some kind of trouble. Right. I mean, yeah. Why do they have a skunk works? Why is this project secret and being funded in a different way than the normal operation right and that might not be bad it's just you need to have your eyes open about the company you're dealing with and a lot of times startups particularly are hiring contractors because they run into trouble and they don't have the on-site expertise to deal with it.
Starting point is 00:43:29 So they're bringing in a ringer. Or they can't hire as fast as they're growing. Sure. That's usually a pretty good one. Which is a fine problem to have, right? And that can lead you to good opportunities with something that might convert into full-time later. The other class of client is, you know, the ones that are in deep trouble. And they can't hire full-time because no one would believe that they can hire full-time. Yeah. And, you know, they're not necessarily bringing in a ringer to fix a problem.
Starting point is 00:44:12 They're in dire straits and, you know, they're calling in the cavalry big time. Those are interesting contracts sometimes because sometimes you have to solve a very complicated problem in a short amount of time. And it's fun being the closer, the one who gets it done. And that leads back to that, you know, getting the expertise necessary to hit the ground running at other jobs. But it also can be extremely stressful. And then there are, you know, there are startups that are just trying to get going and, you know, they build their team out of contractors and see what can be done. And maybe you're in there just making the first prototype.
Starting point is 00:44:43 But in that circumstance, you should expect to be kind of pushed out possibly as they ramp up and become a real company. Well, that's a good point. I always, well, there's been a couple. I often expect that my tenure at a company is going to be short. The ones that I'm going to end up in July, it's just because they have finally hired the guy, and he's going to start, and I'm going to overlap a couple of weeks, I'm going to hand off what he needs, and then they're going to get put on the list of clients I talk to once a week
Starting point is 00:45:21 to make sure they don't need anything else. And they'll get five hours a week for a little while and they'll go down to five hours a month. And that's how we end up with having four clients. They never go away. I've got, you know, one, I usually have one major client and then I've had two for quite a long time that were major clients, but no, they've grown up or the project's mature enough that my role there is as a maintainer. And as more of a maintainer of knowledge than of code. Sometimes, sometimes as a maintainer of knowledge, sometimes as a, well, I'm the only one who still
Starting point is 00:45:59 remembers this, you know, why you made that decision. and sometimes it's as a relief valve for the company you know they want to have somebody on retainer who they can say you know what we need this feature we need it in three weeks and everybody else is busy and you're familiar with it and so you can yeah so you can drop in and you can put in 10, 30 hours on that project and be much further along than anybody they've got there would be able to. So it's not like, it's not like you're working two 40 hour a week jobs. It's like you're working one 20, 25 hour a week job with five to 10 coming in and out as time goes on. Because nobody in their right mind would take you know three full-time caliber clients but sometimes quitting a client is harder than quitting a job
Starting point is 00:46:50 how so well i would go back to it's a very small valley you don't want to make anybody angry but sometimes it's no fun i mean mean, I've worked at jobs and the technology, I learn it, it's interesting. Okay, now I'm bored. And so I want to wander off. You kind of have to learn to do that gracefully. Yeah, I think it's harder to quit a contract in the midst of it. So, you know, you sign up, you've done some development and something's happened to make you realize this is a bad deal or you don't like working on it and you got to punch out. That's harder than, you know, the contract's kind of winding down. They want to keep you engaged. Maybe they have some new project that they want you to do. And that's a little
Starting point is 00:47:44 easier to say, look, I've got another client coming up. I need to shift my focus to, but you know, maybe I can come back in three, six months. Um, if you've got something then leaving the door open in case you don't have another contract after this one. Yeah. And that, that goes back to how do you find clients, usually so far I've found clients from other clients or somebody leaves a company, starts something new and they say, oh, there's that guy, you know, I worked with him and he was pretty good. Let's bring him back and have him, you know, do our startup code and set up some of the initial environment, that kind of thing.
Starting point is 00:48:21 So you definitely don't want to burn any bridges if you can avoid it, but sometimes you can't avoid it. And thankfully, I think usually when you can't avoid burning a bridge, you're burning a bridge with somebody who you probably don't want to deal with in the future. You know, it's, it's a company that's done something wrong, unethical. You clash with everybody there. You know, there's a really good reason why you're leaving early. And you're accepting you're not going to work for these people again. Yeah. And they may know somebody and they may say, you know, they may bring up your name, but you know, if they're that bad that you're leaving. The other people probably already know. Yeah. So another kind of bad thing about contracting is health care and self-employment tax.
Starting point is 00:49:08 These are things that your full-time company pays for, but as a contractor, you're responsible for yourself. Health care may not be a problem if you're married and your spouse is working full-time. Right. But self-employment tax, the government hits you with... Well, you have to pay both sides of Medicare and Social Security, and normally a company covers half of that. And that's like 8%. I think that's right, yeah.
Starting point is 00:49:39 So it's a pretty big chunk if you're not prepared for it. Yeah, and so is health care. And health care, I think, is the larger problem because taxes are sort of a well-known entity. And health care... Well, it's changing so much now, you don't even know what it's going to be at the end of this year. Right, and there's news articles saying that rates are going up by 30% this year,
Starting point is 00:50:03 at least in California, and then there's other news articles saying that they're going down. So it's hard to know what to believe. The upshot is that unless you have insurance through a spouse or a partner, you're going to be on COBRA from your previous full-time job, which can last for quite a while. 36 months, I think. Yeah. And that can be a good stopgap for a long time, at least long enough to figure out, hey, I love contracting and I need to go find insurance somewhere else because I'm going to be doing this for longer than my Cobra's
Starting point is 00:50:38 going to last. But the other option, of course the, the individual market and that's, that's where things get a little messy. And that's, it may change. Yeah, it may change. And there are, you can also contract through other companies. Um, Adeko is the primary consulting firm for like Cisco and some other companies and they do hourly work, uh, but there are a whole bunch of them. And you don't get paid nearly as well, but they do cover your health care. I don't think they have nearly as good jobs either.
Starting point is 00:51:12 So if you can do it on your own, you should, or use them for stopgaps. Yeah, I don't know exactly how those work. Do you get your choice of jobs, or do they kind of say, hey, we need you to go to a random company for six months and you'll take it and you'll like it? Depends on the company. Some companies you basically interview for each position and you get paid by the hour for each position. Some of them you work for the development team, and you just do what they say. But are you still paid by the hour?
Starting point is 00:51:47 You're still paid by the hour. So you could potentially be employed by one of these companies but not making any money. Yes. Because you're not interviewing well or you're turning down everything they present you with. Well, then there's another form of similar company, a product design firm. And they usually are a team of different types of software and they work together on certain problems. And if you're thinking about going into consulting, finding a product design firm to work with for a few years will give you an insight how to find clients and how to talk to them. It's a good stepping stone.
Starting point is 00:52:21 Not required, but good. Yeah, and I think that's more like working for a traditional full-time company. You're with the same team all the time. But you're a team of contractors going in to solve different problems in different industries. It's more like Mad Men. You're the same team of people pitching your work to different clients, but you're always the same group of people. halfway it's a halfway measure between working for yourself and and being a full-time employee of you know directly a full-time employee
Starting point is 00:52:51 of a company um and you know being a full-time person at a company you touched on this earlier about being part of a team as a contractor you're not always part of a team. As a contractor, you're not always part of the team. For me, that's kind of good. Even when I was mixing the Kool-Aid, I wasn't very good at drinking it. I wasn't very good at fitting into team cultures, company cultures. I kind of like being on the outside and going out for team building adventure walks is to me a way to spend a day in the sunshine that would be fun if I was with a bunch of friends but since I would rather be at my desk working it's not worth it yeah that goes back to what kind of people should become contractors or should not become contractors. I mean, if you really value that team experience and you make your friends at work,
Starting point is 00:53:50 you know, you spend a lot of your downtime with them and that sort of thing. And depending on the contract, that may happen, but it's more likely that you're going to be the outsider, you know, delivering your work. Well, and some companies actually treat contractors badly. Yeah. Because you are a mercenary, you are working for money. Now, if you're working a full-time job, you are also working for money. It just isn't quite as direct.
Starting point is 00:54:20 Yeah, what's interesting, actually, just for a second is, you know, the distinction between a contractor and the fact that you can come and go at will and a full-time employee is there's a de facto distinction there, but the contracts all say the same thing. Your full-time contract is usually, at least in this industry, in this area. Your full-time salaried employment agreement. Yeah. Okay. Yeah, sorry. It gets a little confusing. But your full-time employment agreement, you know, specifies at-will employment, which means, hey, they can get rid of you and you can get rid of them pretty much at any time, which is no different than working on a contract basis. And a salaried employee isn't supposed to work 40 hours or 60 hours or some number of countable hours. They're supposed to be hired to get a job done. And yet when I work at a full-time company,
Starting point is 00:55:12 I always look at the hours and wonder how many am I supposed to work? How many does everybody else work? All of them. That's what it always seems like to me. All the time. And I feel guilty. And then that's why I like contracting. I have so much less guilt about not getting work done. Because I get the work done and I don't have to spend all the hours doing it. So let's talk about some nitty gritty details. How do you charge? How do you decide how much you're going to charge a client?
Starting point is 00:55:47 Because that can be very tricky. I mean, that's really the crux of the contract a lot of times. Oh, you mean the rate, not what do I charge for? Exactly. Okay, well, I'm going to answer the other question instead. Okay. So, because it is related, I mentioned I don't charge for my IT work, but, um, it's hard to tell if you go out to lunch with clients, are you charging them? And the rule that was given to me is I charge clients for doing things I would not otherwise
Starting point is 00:56:20 be doing. Uh, I, you know, if I would already be reading a Wikipedia page about wireless networking, which sometimes, yes, I do read that page. That's a separate problem. I don't charge for that. But if I have to spend six hours listening to a guy tell me about his kids,
Starting point is 00:56:42 even after I've said, I'm sorry, I have work to do, yeah, I kind of charge for that because I wouldn't be doing that if I didn't have these clients I think there's an argument that some degree of socialization is part of your job yes yes indeed I wouldn't say yeah let's all go out for beers, you know, at the end of the day. Unless I like them, in which case I won't be charging for them because that's not, I would do that without the contract. Yeah, what I was going to say is if you like them, fine. Go socialize with them and don't charge them. I think that's ethical.
Starting point is 00:57:20 If you don't like them, certainly don't go out for beer with them and then charge them. Yeah. That's not ethical. You should say, I've got other things to do and beg off. Because for the most part, you should be charging them for things that go towards the completion of the project. And that you can put in your status report. Right. So if you go out to lunch with the team and you
Starting point is 00:57:45 guys are talking about the project, you know, charge them for it. Don't charge them necessarily for the food because you've got to eat, but you know, charge for the time. Um, but that, that's a real judgment call. And, you know, sometimes that may be something you want to discuss with the client to have upfront is, you know, are you going to discuss with the client to have up front is you know are you going to charge for travel time to and from their site usually no maybe you're not there all the time maybe they're extremely far away uh and you're only going in once or twice a week you know if you're spending it goes back to the multiple clients thing if you're spending a couple of hours a week on the road for a client that's a couple of hours a week you are not spending for a different client.
Starting point is 00:58:30 So that's lost money. So it helps to be upfront about that and say, look, you guys are, you know, off in the distance and I don't plan to come in here all the time unless it's really necessary, but I am going to charge you for travel. Or they say, we want you to come in here all the time unless it's really necessary, but I am going to charge you for travel. Or they say, we want you to come in once a week, and you build into your rate. Exactly. Assuming that. So back to the rate question.
Starting point is 00:58:59 I have a rule of thumb, and it is very, very easy. You take your annual salary. Let's say you make $10,000 a year. Let's use a real number. Let's say you make $10,000 a year. Let's use a real number. Let's say you make $100,000 a year. Then your rate is going to be that divided by 1,000. That's your hourly rate. So that's $100 an hour.
Starting point is 00:59:18 That's a little on the high side, but not as high as it sounds. I actually have this Excel spreadsheet, which I guess I should have given to you so you could see. Can you put it in the show notes? I will put it in the show notes. But it breaks down all the things you need to look at. It starts with $100,000 annual salary, $6,000 annually for health insurance, which is... That's a bit premium. That's pretty high, I think, these days.
Starting point is 00:59:42 Well, it depends on if it's just you as an individual or you and your spouse or family. That's only $500 a month. Let's just say it may be high for him, but it's not high for me. Okay. Assorted tools, because you do have to provide your own tools. I put in $1,500 a year. That's a new computer every other year. A good new computer every other year. That's a new computer every other year. A good new computer every other year.
Starting point is 01:00:07 But that doesn't take into account maybe a desk or a space or having a good DSL line or any of the things you need to get your job done. You now have to provide. Sometimes you can use clients oscilloscopes and they're big tools, but you have to provide a lot of your own stuff now. See, also here, it's the number of days. Okay, so in my Excel sheet, that's all stuff, the numbers, money numbers. But there's also the number of days you get paid to take off, which, I mean, Memorial Day, not a holiday at Lodge of Elegance, just another day. Of course, oftentimes there are Wednesdays which end up being holidays because the beach is calling right now if you're working a full-time job you're probably getting 25 days off a year that they pay you for and that's gonna go away
Starting point is 01:01:00 and then there's the number of hours in a week. I put in 30 because that's about how many hours I can bill for, which means I end up working. What do you mean you can bill for? Well, I end up working about 40 if I bill for 30. That's the number of hours I can charge to a client. It doesn't count. I mean, for a full-time person, you can't count the company meetings, the birthday lunches, the coffee breaks, commuting, busy work when there isn't a deadline, or things that don't pertain to getting your job done. And so these are hours that I can charge clients for.
Starting point is 01:01:37 And 30 is actually pretty good. 35 is a pretty long week. And 25 is a very light week. But why isn't this 40 or 60 because there's a lot of other stuff i have to do i think um it's important to make this distinction because a lot of clients don't understand this um and an hour of contracting is not the same as one of the 40 hours of full-time work that a salaried employee is engaged in, or 50, or 60, or, you know, however many they're, quote, working as a full-time employee. At least for myself, when I charge an hour, it is an hour of focused technical work. Whether I'm writing something, whether I'm writing code, whether I'm discussing something with the client or in a meeting.
Starting point is 01:02:27 It's actual engaged work. It's not showing the funny cat pictures to the guy in the cube over. It's not taking a phone call for a few minutes. It's not taking a walk. It's not checking Twitter, getting a snack. It's working. And I think there's a fair amount of web surfing and that kind of activity that that even good engineers engage in throughout the day so that eight or nine hours
Starting point is 01:02:53 a day that they're quote working isn't really eight or nine hours and as a contractor if you're going to be ethical about it you're not going to be charging for those kinds of goof off activities which everybody you know takes some time to take a break throughout the day well yeah because that's the time when my back brain actually figures out the solution that what i'm working on maybe you should be charging for it but um so sometimes i think i should charge for showering because a lot of stuff comes there charging four hours a day or five or six, which to your mental stress and fatigue level might end up being the same as a normal day of a salaried employee. So that's where, you know, sometimes we can get into arguments with clients where they say, look, you know, we hired you to get this project done and, you know, you're making your deadlines,
Starting point is 01:03:45 but you're only charging us 25 hours a week. We don't think you're working enough. Yeah. I love clients that argue with you about that. It's a strange conversation because the proper way to look at that is, look, I'm saving you money. You know, I'm doing my job. You want me to charge more. I don't really understand that. I don't go to Best Buy and argue their prices up, you know. So, but that is something to be aware of. And the flip side of that, too, is that, you know, it's that whole conversation about hours versus work, which has come up a lot of times during full-time employment for me and for other people i know and a lot of lazy managers who think that hours is somehow proportional to amount of work again if you're in the lab all day all right you're getting work done if you're in your cube all day all right if i don't see you there must be something wrong even though i might
Starting point is 01:04:45 see the products of all you're doing and it looks fine but it's not in the chair yeah so i gotta see your face that drives me nuts but okay so given an annual salary of a hundred thousand dollars and all of my little calculations i'm dealing with the tools and the health insurance and the taxes, the hourly rate comes out to $89.91 per hour. That's a pretty big difference from if you just divided your $100,000 salary by 42 weeks and 40 hours a week. Do you have that? That would have been $48.08. So it's nearly double. And this assumes that you have a contract
Starting point is 01:05:28 100% of the time. And so when I said you divide your salary by a thousand, that assumes you're not going to be working all the time. And that's how I get to a hundred dollars an hour. If you want your salary to be about a thousand, if you want your salary to be at a hundred thousand dollars a year right so that's just a rule of thumb right so there's uh you can be much more rigorous well and there are things you can do you could be much more rigorous and that's what the excel sheet does some um but there's also you have to figure out the other factors. Such as? For us, it's how busy we are. If we're very busy, we charge a higher rate because you have to increase your priority to get us to interrupt our current clients who are happy to work on your stuff. But how quickly you want to cut checks.
Starting point is 01:06:19 If you want a net 90, basically I'm giving you a three-month loan. Yeah, it's a risk. It's a risk and I'm not a bank. Go get a small business loan if you want a loan and pay me on time. So if you want to cut your checks very quickly, you can get a discounted rate. How interesting your technology is and how much I like your people, how excited I am about your product. These things can all make the rate a little more, a little less. And my rate's been really high for some clients that I know the product and I know the people and I don't really want to get involved. And it's been lower for nonprofits who are doing something I'm super excited about. So you do get some flexibility with your rate,
Starting point is 01:07:05 which as a full-time salaried employee, you don't get as much flexibility on a week-to-week basis. One other consideration with the rate is how much consistent work the client gives you. Oh, yeah, a nine-month contract versus a one-week contract. That seems kind of guaranteed because, again, and I made this exactly clear, there's the fixed parts of your rate there. You know stuff you have to pay for. Your health insurance. Your taxes.
Starting point is 01:07:31 Your taxes. Your base rate for your lifestyle. Kibble for the dogs. But then there's the more nebulous things that you can play around with. And that's based on risk. If it's a low risk client, you might charge them a little less. And a low risk client is again, one that's paying you net 30, one that has a nine month contract for you and is a large company that isn't in danger of going out of business. A high risk client is one that's a startup, their funding situation's in question,
Starting point is 01:08:02 they want to be net 60. In that case, you bump the rate up to compensate that because you're taking a risk. It's like an interest rate on a loan. You want to charge them more because you're less likely, you're more likely to have a problem with them. And therefore, you want to recover as much as you can. Well, we saved the rates for last and we didn't tell you what ours is still do you have any final comments um yeah just one topic i wanted to cover kind of quickly um especially when you're working in a multi-client environment where you have a couple of different clients you want to have your your own software development environment um conducive to switching between clients rapidly and protect it.
Starting point is 01:08:51 Protect it both in case of loss for yourself, because when you're full-time and your computer goes down, IT's usually got a backup of something. They're managing that for you. You know, somebody will bring in a new computer for you from Dell within a few days or what have you. It's not the end of the world. If you're a contractor, a lot of times all of your work for a client is on your personal computer. If you lose that, you've lost all that work. You know, usually you're checking it in, hopefully, but you've lost some period of time of work, you've got to rebuild that computer and get yourself back up and running. And usually it's not ethical to charge the company for that kind of thing. So again, back to time is
Starting point is 01:09:35 money. You want to set up your environment such that you can get back to working as quickly as possible in the event of a computer disaster. And to that end, I just have three real quick recommendations. On-site backup. Make sure you're backing stuff up to a drive all the time. And I really like CrashPlan for this. You can set up a drive locally in your home. They've got a client. You set which folders you want it to back up over time. And it just continuously in the background looks for changes, and every few minutes migrates those changes over to the backup drive, and it keeps as much history as you want.
Starting point is 01:10:12 So even in the event of a small disaster, you screwed up something you were coding and you didn't check it in, you can go back a few hours and recover some data. So there's that. There's off-site backup, again, which CrashPlan and other companies like Backblaze will do for you. And that's the same kind of client. It's just moving it to their cloud servers,
Starting point is 01:10:32 and that can be protected and encrypted. And then the third thing is using virtual machines. And I've found this to be really powerful. When you set up a virtual machine for each client and they can be completely firewalled from each other. You won't have data shared, you know, on the same computer, quote. It's the same computer, but it's, you know, it's walled off in a virtual machine. And then you back those up as an entire piece. And the great thing about that is if you were to lose your computer or have another
Starting point is 01:11:03 catastrophe, somebody were to steal it, you can just take that whole file and put it on a new computer and you're up and running in a few minutes. And that's it. You're done. You don't have to reinstall a whole set of tools, re-download or re-check out your whole environment, and you're all ready to go. So those are the three big hit items to protect yourself. Those are all really good. I'm kind of sad. I don't do any of them. Um,
Starting point is 01:11:30 the virtualization one, I, that one I have always been hesitant with. I have tried it a couple of times and the embedded software tools that I use, especially the really, really crummy ones, they get fussy. But the newer ones are better, and it's always getting better. And I keep saying, next time I have a problem, next time I have a new client, I'm going to try it. And backups, well, we all know my history with backups, and I swear I'm going to do it.
Starting point is 01:12:02 I swear I'm going to do it. It's all a lot of fun until, until you need it. Yes. Although I do a lot with version control and making sure things are checked in. Yeah. And most good software engineers do. And it's, it's, that'll, that'll be enough most of the time. It's just, you know, this is a way to save yourself a whole bunch of time. It won't save me the pain of setting up my computer and installing all my tools again. Right, right. But I think we're out of time. So we've told you all we're going to tell you this week.
Starting point is 01:12:34 Take what we've said as our experience and our opinions, having done this for a decade in the lap of Silicon Valley. Our opinions are our own and your results may vary. Thank you so much for listening. And thank you to my co-host and show producer, Chris White. Yep, it was fun. Next time, we'll talk about more specific gadgets. I'm hoping it will be a deep dive into accelerometers, or maybe we'll unbox an Arduino. Either way, it will be lots of fun. If you have specific requests, drop me a note via the website, embedded.fm. Hit the contact link. Or email me, show at makingembeddedsystems.com.
Starting point is 01:13:13 I look forward to hearing from you.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.