The Ruby Freelancers Show 028 – What do You Wish You had Known When You Started Freelancing?
Special Guests:
Sammy Larbi
Show Notes
Panel
Charles Max Wood (twitter github Teach Me To Code Rails Summer Camp) Eric Davis (twitter github blog) Jeff Schoolcraft (twitter github blog) Sammy Larbi (twitter github blog)
Discussion
Setting Time Boundaries Use Goals Dividing time between client work and product dev. Educating clients, RE: time Subcontractors Set up an emergency fund. Entitled Clients and Pricing Competing With Low Quality Developers Fixed Bids Ask questions and qualify potential clients.
Picks
A List Apart - Habit Fields (Eric) 8th Light - Fixed Feature (Eric) Radio Shack (Chuck) LG Tone Bluetooth Headphones (Chuck) Evan Light (Sammy)
Transcript
[This episode is sponsored by Harvest. I use them to track time, track subcontractor’s time, and invoice clients. Their time tracking is really simple and easy to use. Invoicing includes a pay now function by credit card or
PayPal. You can sign up at getharvest.com. Use the code ‘RF’ to get 50% off your first month.] [Hosting and bandwidth provided by the Blue Box Group. Check them out at bluebox.com]
CHUCK:
Hey everybody and welcome to the episode 28 of the Ruby Freelancers Show. This week on our panel, we have Eric Davis.
ERIC:
Hello.
CHUCK:
We also have Jeff Schoolcraft.
ERIC:
What's up.
CHUCK:
I'm Charles Max Wood from devchat.tv. And this week, we have a guest and that is Sammy Larbi.
Did I say that right?
SAMMY:
You sure did. Hello.
CHUCK:
You're new to the show. Do you want to introduce yourself?
SAMMY:
Well, I've been a programmer since teenage years, so about 15 years now. Got into Ruby around 2007, I think. And I recently started freelancing. Well, I say “recently” but it's been about a year now. I'm not famous for anything that I know of.
CHUCK:
[Chuckles] So you’ve been talking a lot to Evan Light who is also regular on the show and he said that you were pretty new to freelancing, so we thought we would talk to you about what you wish you knew when you started freelancing.
SAMMY:
Well that sounds good because I think there’s still probably a lot I wish I knew.
CHUCK:
I'm a little curious, what are some of the lessons you’ve learned or things that you’ve started?
SAMMY:
I think what I'm still working on is like, so I work from home, and I'm trying to fight the urge to work all the time, even when I'm off. So if a client sends an email and I get an alert on my phone or something, and say it's seven o'clock at night, I get an urge to go upstairs and take care of it right away. So I guess I need to learn to relax a little more.
CHUCK:
How do you guys feel about it, Jeff and Eric? About stuff like that, setting those boundaries?
ERIC:
I kind of have office hours. Like my clients know I'm here from basically 9 to 5, Pacific Time. If it's an emergency, I'll say, “Email me. I might check it.” I almost always won’t respond unless it's like a server outage or something critical, but basically nights and weekends are my personal time, and all my clients kind of know that I have this boundary. I am available if I'm something really big, but it it's just like day to day thing or like, “Hey, we found this bug in testing.” Typically, I don’t get on it till the next work day.
CHUCK:
What about you, Jeff?
JEFF:
I think I have the same problem Sammy does about setting boundaries. I'm getting better at it mostly because… I guess my clients are better now than they were in the beginning, but it's really hard for me to shut off at some point. I've gotten better at it, but it's really hard to shut off and not… I don’t know. It's always been a problem. So Eric has office hours and the client understands that he has office hours. When you're answering emails 8 at night or 9 at night, then you sort of set an expectation to the client that you're going to be available at that time, and that ends up being hard to overcome I think when you do that.
ERIC:
Yeah, it reinforces the behavior that you're around 24 hours a day.
CHUCK:
I can see that. I haven’t explicitly told my clients that I have office hours, however I do have to say that in general, when I'm not done working, I'm not anywhere near my computer. And if I'm checking it at an odd hour, any time after 6 in the evening, then yeah, generally if I do reply, I'll basically say in the effect of, “Hey, I sat down to look at emails for a few emails and noticed that you emailed. Here’s what's going on.” And so hopefully I'm not setting the expectation that I'm there all the time. I'm just saying, “Hey look, I sat down and did a little bit of work, and I'm replying to an email because I'm at my computer for some reason.” But I like Eric’s approach. I think I should be letting my clients know, “Hey, this is when you can expect me to be here. And anything outside of that is essentially bonus, but don’t count on anything.”
SAMMY:
I got you. And that makes a lot of sense I think. Setting the expectations, that’s like a big deal for all kinds of communication or just communicating with people to set expectation.
CHUCK:
Are there any other things that kind of come up that you didn’t quite understand when you got started that you're kind of learning now?
SAMMY:
Yeah. One of my goals is I really don’t want to work too much because I'm also trying to build more of a product business. And so my real goal was like, say, work 2o hours/week on client work, and then I'll have some time to work on the stuff for my personal or for myself… and given that goal, I was kind of shocked that all the business admin stuff that you end up doing, it really eats away at a
lot of that time that I thought I was going to have left over. So how big of a work load do you try to carry, given that your goal is not to work say more than 20-25/hours a week?
ERIC:
I have products and stuff, but I try to do about 4.5 hours a day of productive work. So that’s like 22 or something hours a week. And pretty much the rest of my time is going to be for administration. And those 22 hours are like that’s either product and/or client. And so if a client needs 20 hour of work, I can’t work on products at the same week. If the client needs like ten hours of work that week, I can do 10 hours on products.
I've been doing product stuff for maybe a year or two years now, and I'm still struggling to find the right balance, because it's just like you're running two startup businesses at once. It seems like it might be easy to put a couple of hours here and there, but they are completely different businesses and they react and they move differently, so you can’t really take lessons from one and adapt it to the other if I got a lot of work.
SAMMY:
So how do you explain to clients, you know, a lot of people come and say, “Well, I want 40 hours/week. And you're telling me that 22 hours is a full schedule?” So how do you explain that to people?
ERIC:
Most of my clients know if someone is working 40 hours/week, maybe half their time, if they are lucky, is actual productive time. So if they kind of come in to it like, “We're buying productive time at your rate. We're not buying your unproductive time.” And so my clients have been pretty good about that. And they know that freelancers, we have hours where we're amazingly productive. And so that’s the time where they paid the high rates and then the other time like in meetings or emails, stuff like that, they don’t like paying for that, and we kind of limit that time as much as possible.
And I guess if you have a client that's like demanding 40 hours a week of freelance stuff, you kind of got to educate the client and tell them like, “Look, sit behind your employees for a week, and see how much actual work they get done. They are not going to get 40 hours of real work done.”
SAMMY:
Luckily, everybody I've worked with so far has been understanding that I have goals outside of just working fulltime for someone else. So I haven’t run into it with the customer, I've mostly run into it with potential customers.
CHUCK:
One thing I run into with some of these is they trust me as a content expert, and that means that they not only trust me to do the work and do the right thing, but they also trust me to bring other people in if I have to, to get that work done. And so a lot of times, I'll go at it from the approach of, “Well, I don’t have 40 hours/week, that I can’t stand billing you on this stuff.” And so, if you're okay with it, I have a couple of guys that I call on for jobs like this. So I can work 10, 20 or 15 or however much I feel like I can work for them, and then I'll have my guys work the other 20 or 25 hours.
And in a lot of cases, that worked out all right. It seems like some clients though, they are not so much concerned about how many hours per week you work, as much as whether or not you can deliver specific deadline. So it really depends on the client, as far as what the expectation is and whether or not you can talk your way around that. I also have to point out that I'm not a terrific example of this because I just took a contract, that’s why… where I'm going to be essentially 40 hours/week for this client. And I'll have to do all of the other things outside of that 40 hours. And that’s going to be kind of rough, but at the same time I really did feel like it kind of can get me where I wanted to go. So you have to weigh that in as well.
JEFF:
I think most clients were looking 40 hours/week or some number of hours a week, or probably looking a contractors, somebody to be available to them to do some amount of work, as opposed to a consultant where they just wanna get something done.
CHUCK:
Right. It's milestone versus miscellaneous programming.
SAMMY:
I guess for the ones that come straight out and say they want 40 hours/week, given my goals that’s probably just not a customer that I should target.
JEFF:
There's a lot of ways to look at it. So your goal was 20-25 hours/week and then some amount of time above and beyond that to work in your products. And so Eric has his way, and I’ve worked on some product, and Chuck has a bunch of podcast and other things in the works, so I mean, we're all in similar situations. What you can look at is what number of hours do you wanna make billable or a revenue goal that you wanna make. I mean the classic thing there is charge more and bill less. Charge more money per hour and you can work less hours. Or if three some like Chuck took this contract, I'm doing something similar on a contract basis and they want 30-40 hours/week of my time. And at some point, I'll cut them off, but you can front load a bunch of this time, and maybe take a month or two off and work on something. Eric has another interesting approach where he treats his own stuff as a client. He’ll budget time in for his stuff as he would on a client.
ERIC:
You can use like a full time kind of 30-40 hour client, and use that to bank roll some cash, but just like Jeff said, later months, when the client is done, you can just go and be full time on products, kind of toggle between the two, or you can spike on a client and do 40 hours, 50 hours a week for say, 3-4 weeks and then slowly reduce it once they launch or they hit a major milestone and get it down to like 10, 20 hours a week, whatever you want.
But you have to be careful because I screwed this up when I got started is like I thought I needed a whole bunch of time and I keep booking myself. And I was doing I think I got 30-35, some weeks were above 40 of billable time, and it killed me. Like I basically woke up, started doing client work around six or seven, turn the computer off, went downstairs, ate dinner and just became a zombie. That was my life. I had nothing else I was able to do. And it took me months to recover from that. So you just have to look at the long term like you might to be able to have the energy to get into a
product or to keep a product going for a while.
CHUCK:
Yeah, my team with the job that I just took is I've really been wanting to get some money saved up for an emergency fund and get all of my debt paid off except for my houses. If you're familiar with Dave Ramsey, I kind of work along the lines that he outlined. So for me, it really is getting me where I wanna go, and I feel like once I have all that debt paid off, and I have money in the bank, that I can live off for a few months then I have a little bit more independence. I'm not desperate for work, and I feel like I get them freedom out of that too, that if I need some time to go pursue something that isn’t immediately billable, then I can do that. And usually those are products. But you kind of get the idea that that’s kind of what I'm thinking is that it will get me far enough ahead to where I can basically find my way out of some of the debt and stuff that I'm in.
SAMMY:
That's a good goal. So that kind of remind me of a thing I realized the other day. I'm the kind of person who I really, for whatever reason, don’t like talking about money, so I don’t like negotiating.
CHUCK:
I don’t think you're unique.
SAMMY:
And all that and. But one thing I notice is at least when you are in a position when you’ve got a full schedule, it becomes so much easier to tell people, “Oh yeah, my rate is $25/hour higher than it was last week or whatever,” because you are not worried about them saying no. If they say yes, then awesome. But if they say no, then, no problem, somebody else will come along.
CHUCK:
Absolutely. And it's funny because when I got started I thought, “Oh, wow how do I know how much to charge.” And you know, you think when you get started, that there's this magic number out there. And so if you're billing exactly $127.58 that the right client will accept and the wrong client wont, and you'll be a happy person and angels will sing. And it's really funny because it's so not the case. I mean, there are so many intangibles that you get from the client. Some of them are really easy to work with, they are just right the amount hands on or hands off, and all of these other things that you may be able to negotiate a higher or lower and be happy with the gig. And other people it's like, “Look, they are horrible people, they don’t treat you well. And even if you were billing three times what you would bill the other guy, you're still not happy on the project, and it's not worth doing. And so you seem to somehow conflate the money with happiness or money with success.
And those aren’t necessarily the same thing.
JEFF:
I agree with everything you said. I guess to go back to the point with having emergency fund and some money in the bank. I mean it let’s you be pickier and more confident and work less if you wanted to. And I guess the other attitude, to follow up with what you just said about money and happiness being related. I mean, you get to a point, I've felt some, at least one client felt very entitled, where they were paying me a lot of money in their mind, so they thought I was at there * because they are paying me so much money, as opposed to paying just on the value and rewarding me for the value I was providing, or whatever they thought of, and I should be out there * and do whatever they want. So yeah, pricing is an ongoing exploration.
ERIC:
Once you kind of have that emergency fund set up too, you have the freedom like I've had. I was completely booked one month, and I had a client come to me who wanted something. And pretty much, I was the only person they could find that they could deliver, because I've written 80% of the exact same thing they needed, and they needed it like yesterday. And so we negotiated and even though I was like fully booked, I actually made exceptions for them and worked nights and I think like Saturday or whatever to get it out, but in return, they also paid twice my normal rate to have the extra time to go over time, all that stuff. But if I didn’t have an emergency fund or if I wasn’t able to kind of watch my schedule, that I wont be able to do that, or it would have just been a normal project, and put in with something else. So what you're doing Chuck is kind of a good thing, like get that emergency fund built up, make sure you have some flexibility with that. And if that means you have to do 40 hour a week project, that might be what you need to do at this stage.
CHUCK:
Yeah. The other nice thing about that is that it's only for a few months, so it's not this long term thing where I'm going to be pushing and sort of killing myself for much longer than I absolutely have to in order to get where I need to be. So you can weigh that into and just make sure that its taking you where you wanna go, and if it's not and it's going to be too much sacrifice, then don’t do it.
ERIC:
Kind of getting back to Sammy’s thing, if the clients is asking you for 40 hours/week. One thing you can try to do is see, are they wanting 40 hours of you, or do they just have looked at their schedule and figure the only way they can meet a milestone is to get 40 hours of development time. And so that comes back to where maybe you can bring a subcontractor, and maybe you can tell the client like, “Hey, I can give you 20, and I know this other guy, he can give you 20. That will get you enough development time and you should be able to hit your milestone.
CHUCK:
And I wanna add up to that too. So when we're talking about the subcontractors, and that’s when you're filling more time or providing more talent, the sub-contractor doesn't necessarily mean less skilled than you. In a lot of cases, they just mean that they can do some work that you don’t have the capacity to take on.
ERIC:
Yeah, the availability.
CHUCK:
Right. So you can be a new freelancer and still be subcontracting work.
SAMMY:
Well that was going to be another one of my questions, is because when you are first starting out, sub-contracting I think is, I mean it's a good way to find work unless you already have a network of potential clients, or you are going to knock on doors or whatever. But one of the problems I’ve had is how do I determine what's a fair subcontracting work? Either way, if I'm going to take it, what's fair, given that the other whoever I'm subbing for has found the work, and then same thing for me, if I wanted to sub out to somebody, do I just say, “You can take my full hourly rate,” or should I try to keep some profit for myself.
JEFF:
So if you're taking on the management responsibility for the sub, you should never pass through the rate. I mean, you should keep some of the rate to manage that.
SAMMY:
So I wouldn't be charging whatever time I spent managing?
CHUCK:
No, that’s the opposite of what he was saying. So what he's saying is that let’s say that you take a job for $100/hour, and you have a subcontractor that’s going to be working under you. You should be paying your sub-contractor $100/hour because you're going to be spending time managing expectations with the client, you're going to be setting up the * for the subcontractor to use, all of those different things all fall into the time that you're going to spend, and you need to be able to recoup that time. So you should be taking a reasonable percentage in order to cover your time for that work.
SAMMY:
So why not just, especially if the customer knows that I'm subbing out some of the work, why not charge them more hours based on however many hours I spent doing that management.
JEFF:
It depends on the arrangement and the agreement you have with your customer. So the customer knows that you're going to be the lead whatever for this project and you’re going to bring in some other guys to do that. And however they decided to structure that rate, is how you can bill them. So if you're just going to go out and find people for them to assign task to, then there's very little management for you, and very little oversight that you have to do. And so, the cost for you doing that work is going to be much less. But if you're going to be responsible for all the quality control and training and answering the questions that you could before involving the client, then you can build more for that. But it depends on how you set up an arrangement with your customer and how much you can bill.
ERIC:
Right. There's a lot of options for subcontracting. Like I can think of three or four different arrangements that I've had with one client alone. It all comes back to like what the relationship is, what the contract is, who's taking on the risk, who's taking on the responsibilities.
CHUCK:
Right. And if I we're organizing a team like 4-5 people and they came to me knowing that I was going to organize a team, then for me it's understandable that you're going to need somebody doing project management, and so there would be a rate for project management. It might be the same as the development rate, it might not be, but then any time that I've spent doing project management stuff gets billed with the client.
But then I have a few where it's just like me and one subcontractor. And so I mean, I'm doing like a minimum amount of subcontracting and specifically what I wound up doing is I have negotiated a rate with the client, then I've negotiated another rate with the subcontractor. And so basically, I'm taking a certain percentage of… I'm taking the difference is basically what I'm doing to make up for any time that I have to spend bridging the gap or things like that. And sometimes I make my rate back on my time, and sometimes I don’t. So it just depends on how well I was able to get a feel for what that was going to take.
So yeah, as far as being the sub-contractor and negotiating the rate, a lot of times, I'll actually ask the primary sub-contractor what the project rate is, and just explain to them, “I understand you are going to need to take a percentage of this in order to make it work.” And sometimes they'll tell you and sometimes they wont. If they don’t tell you, then you just basically want to set a rate that is reasonable. So take your normal rate and then take a certain percentage off. And that just depends really on your feel for project and what you think is fair for them to get, for having found the work and doing the project management aspect of it.
I had one friend that I talked to that when he first went freelance, I talked to him about subcontracting for me, and then we were talking, and before we even really discussed any project, he just looked at me straight up and said, “My subcontracting rate is $100/hour.” And so then I have to look at the rate that I negotiated with clients and decide if the margin was enough to make it worth bringing them on. And in other cases, people are willing to negotiate the rate based on either the project rate, or they may be talented, but they are not so interested in making a large rate. They just want a little bit of extra work to tie them over until they take a lower rate. So it really just depends where you are at and what you want.
ERIC:
Another way is not even to put a margin on it. Like I've seen where the contractor basically passes through the subcontractor’s rate an hour, so it's like $100/hour. And then the contractor, any management time that they do the sub-contractor get billed at the project management rate. And so there's no actual margin on the time the time the subcontractor puts in. But it's just that here’s margin part. That’s nice because it's pretty hands off. And if you transition to like, “Okay, it's just the sub contractor’s going to work directly with the client,” it's pretty easy to just hand it off when the project needs less work or just need much management overhead too.
CHUCK:
Absolutely. And any of those work. It just depends on how the primary contractor wants to structure things, and what makes the most sense, so that everybody gets what they want out of the project.
SAMMY:
I'm looking at it like this, if a customer comes to me and they want me because they know I'm really awesome, and then I hand the work to somebody else, how do I justify? Like maybe that person is not as good as I am, or wouldn’t finish it as quickly as I am or something like that. Would you give a discount or would you just charge an hourly rate?
CHUCK:
I've given them a discount before. I mean, ultimately, and we've talked about this on the show before, but ultimately, you want them to feel like they are getting their money’s worth or their value out of the money that they are spending. And so yeah, I tend to try and adjust based on the skill level or whatever.
JEFF:
The flipside of that is that bill them on your rate, but you're also responsible for all the quality control and catching errors and whatever else you have to do to make sure that...
SAMMY:
Yeah, I was just saying that that’s a good idea.
JEFF:
It should be obvious, but if you're going to pass on somebody else’s work as your own and bill a client for that, then you have to make them as good as any code you'd submit because I mean, you're putting your seal of approval on this person and the work that they are doing. So the moment you’ve had a bug introduced into a code base from a subcontractor, you call on it from a customer, that’s sort of a horrible experience. And so I mean that's why you bill them some of these time to deal with all those stuff. If you’ve been on the project for a while and you bring on somebody that’s new, I mean there's ramp up time. If it's somebody that’s less experienced, then there's more mentoring and code review and stuff like that. Subcontracting is an entire discussion upon itself.
CHUCK:
Yeah, and we've actually had enough episodes on it. So I'm trying to think back to things I ran into. And it's been long enough to where I don’t remember specifics.
JEFF:
So quick bullet points that I thought of when the topic came up was one, that marketing was way more important than how good you are as a developer or at least as important as how good you are as a developer. And so we'll get all that trolls that say, “You need to be good,” and blah, blah, blah. And you do, but marketing is way more important for getting business, being good is for keeping business, but marketing is how you get to business.
And the second thing is not everybody pays you on time, which would have been nice to know in the beginning. I was a little loose with my payment policy and how I deal with invoicing the clients, and if I would have known in the beginning that not everybody treats bills to freelancers as they do bills to like their mortgage company, then I would have done things differently.
CHUCK:
I'll tell you though, if you hold on to their code, they are pretty motivated to pay you.
JEFF:
Yeah. Well, like I said, do things differently. So not deliver stuff unless you’ve been paid and all that stuff.
CHUCK:
Right. Do you have any other questions that you can think of?
SAMMY:
Yeah, I've got a couple more. One, this happened to me, so a client that I was already engaged with and had probably done three or four months of work with came to me and tell me about the off shore for * hourly rate. So, how do you handle that?
ERIC:
You just get five times many bugs.
CHUCK:
They usually hear something from me to the effect of, “You are welcome to go with them. I understand what you're saying. Not all developers are created equal. And I will be happy to fix it when they are done.” And that’s pretty much it. I've found that in a lot of cases, the only quality point that they are interested in at that point is price. And so I might ask a few questions just to make sure that’s the case, and then I'm done, because it is not worth talking to them. I can go bill that time. Sometimes you'll ask them a few questions, “Who do you talk to?” And you start talking about what kind of quality control that they have, and what kind of guarantees are making on the code, and things like that. And they'll start thinking about it. And they come around really quick. And then they turn the questions around and ask you those questions, then you can start answering them and just kind of feel out whether or not price is really the only point that they are interested in. But the second your figure that out, the second you kind of get the feel that all they really want is work for the cheapest possible price, you're going to lose.
SAMMY:
Well that’s kind of how I handled it. I kind of encouraged them. I said, “Go ahead. I wanna make sure that you're getting the best value for your money. I can sit and tell you all day long about my negative experiences with places like that. But the fact is it's just kind of self-serving for me to say that. So I encourage you to go try it.” And they go tried it and they came back.
I didn’t really know how to handle it. I don’t know if that was a good way to do it, because they work really only price sensitive. They want, but obviously if somebody comes to them and says, “Oh we can give you great quality, and all these and all that in the same amount of hours.” But it ended up not being the same amount of hours and it was much worse quality. So it was a win for me in the end, but I wondered if there was better way I might have handled that.
CHUCK:
The other thing that I've seen is that you can also explain the actual cost of… what do they call it? Pro cost ownership. And basically explain that there's more it than just the initial development and the maintenance cost may come back around and get it later. And you talk to him about how to raise a brand and building things like that, and what effect having bugs will have and stuff like that. But again, I mean, you still have to gauge how receptive they are being, because if they aren’t open to the fact that a good professional is more important than the chief professional, then there's not a whole lot you can do.
I don’t know that there's a better way of doing that. The only other thing I think I've seen done, and this is something that kind of what happened with one of my clients, was * a .NET team, and so I was building a product for them, and then their in house team was kind of building the same product at the same time in .NET. And so the point was made very quickly that basically myself and the subcontractor I have working on that project, we moved ahead way more quickly than the 6 full time guys on their dev team. So you can say, “Well, you can gauge us both and see how far we get and see what the difference are.” But yeah, I don’t know if there's a way of actually saving them for themselves, if they’ve kind of decided that that might be the way they wanna go anyway.
SAMMY:
Okay. Do we got time for one more question? I don’t know how long we were planning on.
CHUCK:
Well, we usually go one hour. We were doing this for 40 minutes, so go ahead.
SAMMY:
All right. This one was probably the one I've run into most often and I still have no idea how to capitalize on it. You get a lot of requests for, “Hey, here’s some idea I have. How much do you charge per hour?” And most people, maybe they are too naïve or don’t know enough, but when I tell them what my hourly rate is, that's kind of the last I'll hear from them. So I wonder like how can you divert that question of hourly rate into value, without being too kind of salesman-y. Because it feels kind of weird that to say, “Well, I'm not going to really answer your question, but I'll tell you something else.”
CHUCK:
Right. What do you guys think, Jeff and Eric?
JEFF:
I'm at a point where I just read a lot for my hourly rate. And yeah, that's pretty much what I do. I mean, I don’t know. I could probably do a little more education in what cost to build a project or something like that, build an application or whatever, but I just throw out my hourly rate. And if they shock in disbelief and they wanna move on, that’s fine. I mean, if they ask another person, two or three people down the road, they'll figure out that, “Yeah, this isn’t a $5/hour guy I can find on craigslist. This is a real job.” It's the similar to the last question, this guy is much cheaper, but… so I
don’t know. I just pass them my hourly rate at this point.
ERIC:
Let’s see, I've done in the past, I used to have example like example plans or whatever where I can say like this plan is ten hours, it's for x dollars, this plan is for 20 hours and kind of sell time in chunk like that. And if anyone can do basic division, they can figure out what my hourly rate was pretty easily. And kind of like Jeff, they would like, okay, they couldn’t pick a specific plan or they don’t know how much hours. They'd be like, “How much is it for an hour of your time?” And I would tell them, “This is what my rate is. The nice thing is for people who were like shocked by it are probably kind of like what we're talking about earlier, they are looking for price, and they are shopping for the best deal they can get. And so, the * work I do, that's not the best client for me, like we're not going to be a good fit, even if I was in their bunch of range.
On the other hand though, sometimes I won’t tell them the hourly rate and I'll be like, “Well, it depends on your project.” Because unlike a lot of other people, I actually do fixed bid projects first stuff that’s kind of cookie cutter where there's not a lot of scope * that’s going to be in the project. And so, I might say like, “Look, based on what you told me, we might do a fixed bid on this. And that way, hourly rate doesn’t matter and you have a solid number you can budget with.”
So it depends. I mean, you can try to be flexible with them, and you obviously have to fill it up based on their communication. A good thing to do is to always like wait, try to collect more details, see where they are coming from, get as much information from them as much as you can, and that might tell you like, “Okay, it's going to be price sensitive.” You might try fixed bid or they are wanting the very cheapest provider possible, you can just tell them your rate and they'll probably go away.
And the thing is you don’t need every single client to book with you.
CHUCK:
I've tried just basically emailing them back and asking them for details, and just not mentioning anything about the rate. And a lot of times, that works okay. I've also told people that I don’t give my rate out over email, but I need to talk about the project first. And so then we'll Skype call and things like that works okay. I haven’t found one that really works any better or worse than the others, as far as being able to close it or not.
I have actually just emailed them and said, “This is the hourly rate that I do.” Most of the time though, I email them back and say something to the effect of well, “It's kind of a range depending on your budget and what your expectations are and how big the project is and stuff like that.” And that kind of sets the stage for them to really think about, “Okay, what am I really after here and what are my constraints on these project?” And then I'll usually also explain, “I typically provide these types of services.” And so I'll explain that I can set up their server for them and I can do TDD, or I do testing and make sure that their application works and stuff like that.
And just explain, “I provide high quality code. And so, let’s talk so that I can understand where you are at, and how we can kind of make your expectation of cost and my expectation of getting paid match up.” “And I'm not opposed to fixed bids. I used to be, but again, it just depends.” So then we can sit down and talk and say, “Okay, it seems like a reason fee for this amount of work.” And that could be hourly, reasonable fee for an hour’s worth of work or reasonable fee for this chunk of work.
SAMMY:
So how do you decide? I mean, do you have a cut off or do you guys have a cut off for how big of a project you'll do fixed bid? I've done like maybe up to 10 or 15 hours and that’s kind of my max, otherwise, outside that range, I feel like any number of little things can go wrong and start spiraling to where you're eating a ton of hours. So do you have a max?
ERIC:
I don’t think I have a cut off as far as that. Obviously, if it's a big project, you can’t estimate a year ahead of time, but most of my projects have been two to three week type things, whether it's fixed or hourly. And they are setup where it's a quick iteration and then that's kind of the finish of the project and then we'll renew it and do another iterations. And so if I wanted a fixed bid, I’d fix bid one of those three week things. The main component for me for a fixed bid is have I done something like this before? Do I have existing code I can use? Do I feel like it's going to move both the negotiation and the project faster, by just doing fixed bid on this and just getting to work, versus doing an hourly? And that brings in like is the client sensitive to the hourly price, or they sensitive to the total cost or how much risk are they trying to put on me?
CHUCK:
Yeah, I'm along the same line with Eric. I'll bill up to maybe a month or two at the very longest, but again I mean, it’s got to be a very well defined set of things that they need done and things that I'm comfortable to estimating with in that margin of error. If it is somewhat unknown, then I just rate the fixed bid, and I just explain to him them, “Well, there are some unknowns here, so I'm hedging a little bit.” If they come back and they say, “Well, that doesn’t seem to be in line with the pricing that we have been looking at.” But usually, I'm asking enough leading questions about where they wanna go, what features they want, how they want it done, and I can do a little bit of research and we can put it together. But yeah, I don’t know that I would do a fixed bid on a project that weren’t going to last more than a month or two.
ERIC:
Actually, thinking about it, what you Chuck talked about the unknowns, of my recent fixed bids. It was kind of where all of it was cookie cutter, except for there was one unknown, and it was a technological unknown in that, I think I can solve it this way. If I can’t I can solve it another way. It will just be harder and not as good of a solution. And I'm trying to think back. I think almost all my fixed bids have only had one or two unknowns. When you start getting multiple unknowns in the project where it's personnel or technical, I think that's kind of where you are going to have to get pushed to the hourly, because you can kind of budget and put some buffer for one, but two, three, four, five that’s a lot of buffering you are going to have to do, and that’s where you get the, “Your site is going to cost a million dollars and it ends up taking $5 million of work.”
CHUCK:
Right. But one the other hand, sometimes you have a lot of those unknowns, so you buffer the bid, and you basically put your bid way up high at the range that they're expected to get from other people.
SAMMY:
How do you deal with the unknowns of typical agile project management is meant, at least in part to deal with where you show them something, and they see it and they are like, “Oh yeah, this would be cool.” Do you just say, “Well, that’s out of scope, and we have to renegotiate that.”?
CHUCK:
Yeah.
ERIC:
Pretty much. I mean, I'll say, “That’s out of the original scope, and lets note it down.” And then near the end, depending on how the project went, especially with like the unknown factors, like if there was… because I keep my own internal hourly budget, if there is some time in there, I can take on some of the smaller stuff, so I get bonus features for them to really please the client. But most of the time, when you do fixed bid, almost everything is out of scope if you haven’t talked about it.
CHUCK:
Right. But sometimes, the other thing that can happen is one of the things that they realized they want different supersede something in the contract. And so in a lot of cases, I won’t even renegotiate it. I'll just basically say, I'm in the outside of just getting like some kind of email agreement that basically says, “I'm going to do this instead of that.” And they basically mail back and say, “That’s okay.” Or I'll get an email for them that says, “Hi, I’d like you to do this instead of that.” Then I mail back and acknowledge. But you have to have a really good working relationship with the client to do things like that because ultimately, your contract is you are going to do the other thing. And so, if you have any inkling that that might come back around and they might force you to build that other feature in because it's in the project that they paid you for, then * to the contract. Most business people are, they are * people, they are pretty laid back, they just want what they want and they wanna pay for it, and so it's not an issue.
ERIC:
You might have to check this with an attorney, but I'm pretty sure you if send an email saying, “We’d like to amend this contract, whatever this changes to this, this gets taken out. Please confirm that you agree to these changes and reply over email,” that’s a legally binding addendum. It’s because email based communication, it's like, basically written down, but you have to have confirmation on it, but once again, check with an attorney and all that jazz.
CHUCK:
Yeah and in some cases, for example in a lot of contract that I either use or sign, it says that any addendum to the contract has to be sent to through like mail or requested, blah, blah, blah. And so, and then it's just also depends on how your contract is written as to whether or not that is actually finding addendum to the contract, because some of them preclude that though. Just be aware. And again, talk to your attorney.
SAMMY:
Got you.
CHUCK:
I think we have time for one more question before we have to do picks.
SAMMY:
I'm good, but I wouldn’t mind hearing maybe a little bit more from you guy’s perspective of what did you kind of wish you knew, if you remember.
CHUCK:
I wish I had known at the time that I can get more than $65/hour. That’s when I started. It worked out okay because then the client paid me and stuff, but I've just been laid off then I thought that a lot of money. And it did turn out, yes it's a lot of money, and so you actually have to pay for all the things that you didn’t realize you had to pay for. So, I've bill quite a bit more than that now.
ERIC:
I’d say for me, I kind of wanna go over Jeff’s that he mentioned earlier about how marketing is important, but not just marketing but follow up. I mean, you can have someone contact you wanting work, but if you don’t follow up with them, whether they drop the ball or you drop the ball, you're not going to win it. And at one point, I realized that and started following up a lot better. And I was actually following up with one guy for I think nine months, and then I finally won the contract. And that contract has been, it was my largest dollar value and my largest hourly rate value in the past five years that I have been working. So following up and having a system for following up is hugely important.
CHUCK:
That makes quite a bit of sense. All right. Well, if there aren’t any other thing, unless Jeff wants to add anything to what he said. We'll just skip the picks.
JEFF:
No. Go ahead and do picks.
CHUCK:
All right. Eric, why don’t you start us off with picks?
ERIC:
I got two blog posts today. One is from Habit Fields, it's called Habit Fields. It's an article that kind of talks about… it sort of talks about memory, but it talks about how kind of I guess the activities that you do in certain places with certain objects kind of gets ingrained in your memory. And the practical aspect of it is if you have a home office that you work at that has a laptop and all that, when you sit down to that, you're probably going to work on productive things there, versus if you're downstairs in an easy chair, the easy chair’s probably going to make you wanna watch TV or read a book. And it talks about how you have to be careful because if you mix those two, you get kind of screwed up. So if you start reading on your computer, you might not sit down and be as productive as you would, if you only read in the easy chair. So it's an interesting article. It's kind of something to think about, especially with all the smart phones and all the tablets out now and kind of actually separating these devices for these actual task, this device for this other task.
And then this one is actually pretty relevant to our discussion. We're talking about pricing. It's a blog post from the 8th Light blog , it's called Fixed Feature. It's kind of way of pricing and bidding projects, but it's a mix between time and materials hourly stuff, and actually fixed bid. It's a short article, it's an interesting read, kind of the summary instead of doing a fixed bid like, “This project is x dollars, or an hourly. Or this project takes x many hours at this rate.” They actually do a fixed bid for each feature, so authentication is x dollars, having a homepage that does this other thing is y dollars, and then it kind of lets the client pick what features they want, and they kind of build their own project right off of that. So it's a short post. It's an interesting read. I think they have a white paper that talks about it a little bit. So it's something to think about. I mean, depending on however the client wants to proceed and what their level of risk. This might be something that you can also try out if hourly is not going to work for you and a fixed bid won’t work for you either.
CHUCK:
I like that approach. But I think it was that Ruby web conf a couple of years ago we had kind of a little discussion about freelancing and one of the guys did that. He would estimate chunks of work, so they can just buy the pieces they wanted.
ERIC:
I've kind of done that, where I would say like, “Here's option A at X price. Here’s option B which has a couple extra features at a little bit more, and then option c.” But I've never actually broken it out into features. I would always try to figure out like what the minimum features they'd need. And that’s kind of the base price, and then they can add on to that. But it was really restrictive and they only had three or four different choices.
CHUCK:
Jeff, what are your picks?
JEFF:
I sadly don’t have any picks today.
CHUCK:
All right. I'll do some picks. My first pick is RadioShack. And the reason is because my washer is about 2-3 years old, started randomly beeping. And so we went and looked and every time it would randomly beep, the temperature would change on the washer. And so we figured out the little button on the temperature selector was shorting. And I so called Frigidaire, it was Frigidaire washer, and it wasn’t under warranty anymore, which I wasn’t shocked. I mean, it's almost three years old.
So, I wound up opening it up and just looking to see what was there. And they have this little switch on it, and so I went down to RadioShack to see if they had any switches of about that size, and they did. So I wound up buying the switch, buying a soldering iron, because I don’t know where my soldering iron went. And then some solder braid, and then just put the switch on. The whole operation cost me about $20, and I don’t have to pay anybody to come out and fix my washer. So kind of cool and fun. I haven’t fixed anything like that in a while.
SAMMY:
Appliance hacking.
CHUCK:
Yeah, appliance repair anyway. So it works now. I forgot to put one of the button things back in, but my wife never uses the reset or cancel or whatever that button is. But yeah, I guess appliance hacking I guess you could call it. But super handy.
Our TV actually went out too because we had the power go off and then come back on. And I think it surged and burned out the powersupply in it. But apparently, the power supply is just one of the circuit boards in there. So worst case scenario, you just pull the old circuit board out, you order a new one for $50 or $100 or something and put it in there. So I'll be doing that when I get home. My wife went out and bought a new TV because she can’t live without her TV.
My other pick is I went out and this is actually something that Evan’s picked on the show before, but when I was getting ready to do these shows, my headphone, I have some ear buds, and I have a microphone on them and they kind of fell apart on me. So I went up to Best Buy and I bought the LG Tone headphone, the Bluetooth headphone, the one that hangs over your neck. That's what I'm talking right now. I've been really happy with it.
I've been wanting Bluetooth headphones for a while, because my iPod’s headphone jack is actually dying, so I actually have to sit there and have my thumb on the part that plugs in to the headphone jack. I have to push it to one side, so that it will connect, so that I can get sound on both sides. And if I have it on my pocket and I'm walking around, then it actually like skips from one ear to the other, so it will be like left ear, right ear and then I won't hear anything for a second. It's really obnoxious so I'm hoping the Bluetooth headphones would solve that problem as well.
But it was also nice when I was at the hotel, I was listening to an audiobook on my iPad, and I just left the iPad on the bed, got up, brushed my teeth, and did all these stuff before I go to bed, and went and laid back down and I didn’t have to unplug or anything, because I'm used to being tethered to that thing by two feet of headphone cable. Anyway, those are my picks. Super happy with them.
Sammy, do you have some picks for us?
SAMMY:
I have one. So back in august 2011, I lost my job and I went to Lonestar Ruby conference the next week. And I got lucky enough somehow, I guess from knowing Evan on Twitter, I ended up having dinner with him, Avdi Grimm, and Jim Light who was the president of Lonestar Ruby Foundation. And the conversation there was kind of what got me thinking, “Oh my gosh, I could probably do this whole freelancing thing.” And then afterwards, I followed up a lot with Evan, and helped me get my first client and he's kind of taught me through a lot situations. So Evan light is my pick because if I hadn’t met him when I did, I’d probably have another job right now.
CHUCK:
The funny story with Evan, and I know it's come up on the show before, but he was part of that little discussion about freelancing at Ruby web conference. And it turned out that that was like a week before I got laid off in 2010. So, yeah.
ERIC:
So wait, are you saying that Evan made both you guys lose your jobs? Is that what you're saying?
SAMMY:
[Chuckles]
CHUCK:
It's only a light jinx. Anyway, yeah, I guess so. [Chuckles] But I think Tammy said that he was talking to him after he lost his job.
SAMMY:
Yeah, I was. I mean, I had been considering it, but I never really thought it was possible until after all that.
CHUCK:
Yeah. He's helped a lot of people I think if you're going freelance, then I think he likes talking to people about it and helping make transition. So yeah, definitely a good guy. Happy to have him on the show. So are you from Texas?
SAMMY:
I am. I was originally born in Oklahoma, but I lived in Texas since I was ten. And I'm 33 now -- I will be next week.
CHUCK:
Happy birthday.
SAMMY:
Thank you.
CHUCK:
What part of Texas are you in?
SAMMY:
I'm in Houston.
CHUCK:
Okay. All right, we'll go ahead and wrap the show up. Thanks for coming, Sammy.
SAMMY:
Thank you guys for having me.
CHUCK:
It's always nice to get the perspective from somebody that’s a little newer at this than we are. I don’t think we have any announcement, so we'll just wrap up and we'll talk to everybody next week.
The Ruby Freelancers Show 028 – What do You Wish You had Known When You Started Freelancing?
0:00
Playback Speed: