I love what I do, and I love developing. The problem is I can't get over this constant stress of having to come home and maybe letting someone down by falling short of an initial commitment. I thought I'd enjoy it but this moonlighting gig is on my mind for most of the day.
This is my first time moonlighting, so maybe its because of that. But has anyone else felt overwhelmed for doing something like this?
The plumber could say:
A) Let me schedule a time to come back and look at that and give you an estimate.
B) We just do repairs, not new construction. [Let me give you the card of my friend who does that kind of work.]
C) We're completely booked for new construction right now. I don't expect to have availability for that sort of thing until September.
What no plumber will ever say, though, is (D) "Uh, sure...I'll get started on that as soon as I finish this sink, and I guess the $150 for the sink should pretty much cover that."
If you said (D), what you are doing is simply a terrible idea that will not serve you or your client well. But you don't have to keep doing it! You just need to have a conversation where you say, "I gave you an estimate for X. We are now doing YZA. I apologize for not having this conversation earlier--when we switched from X to Y, or when we added Z. But now that we've also added A, I realize belatedly that we need to restructure this project."
Apologize politely and sincerely but not excessively for your actual mistakes--you didn't manage the project and client expectations well. Don't apologize for doing your job well, or for insisting--even belatedly--on the project conditions necessary to do your job well.
If you haven't said something ridiculous like (D), and your compensation and timeline (and compensation timeline) have adjusted appropriately with the project scope, then...well, you may have just bitten off more than you can chew on this project.
That's ok. It happens. Same kind of conversation: "This project has become too big for me to manage while moonlighting. <polite apologies> Can we break the project into phases, or can I help you find someone able to complete a project of this size in a timely fashion?" The client may be disappointed. They may be angry. But the longer you try to be superman and just somehow get it all done because it HAS to be done, the worse the situation gets for you and them. And odds are the client will actually value clear communication and plausible plan-making, even belatedly.
I used to be very paranoid about saying no. I actually recall the first time I did. I was running very low on sleep, and had been for some time. I needed a breather, but I just couldn't risk losing my reputation for always-being-there-and-always-getting-it-done.
After I (politely, but firmly) said no for the first time. It was a breath of fresh air. No one criticized me, or stopped hiring me. In fact, I think a few people close to me started working with me more, probably because I was getting more sleep.
So, don't be afraid to say no. It takes some practice, but you'll get used to it.
(a) Fixed Bid (b) Fixed Scope (c) Fixed Deadline
You're going to continue to find that clients almost never know the full scope they want upfront, and once you've got a contract in place they'll always try to get more done without paying more.
For me, the most stress-free way to do this is by doing it as an hourly rate, with a ceiling on the number of hours before you need to ask for authorization to do further work.
I know some people say to price on the value to the customer, and do fixed prices per week, and so on. I personally find this hard to do because it's so difficult to accurately gauge upfront how much work a project will be.
Usually I explain it to clients like this, depending on the situation:
- If we make the project fixed scope, we will have to deal with renegotiating everything if they find they want just a bit more. The overhead involved in $1k-5k projects is just not worth doing the project at all at that point. Plus they'll have to develop a very specific scope ahead of time, instead of just letting me start work that can cause delays of months.
- If the project is fixed bid, I'll have to make the price based on the worst case scenario rather than the median, and they'll almost certainly end up paying more than just paying me hourly.
Same story for me. The extra money was for toys or some start-up down the road. Went home for the Christmas holiday one year, relaxed for the first time in a while and realized I wasn't enjoying the work anymore. After that I had a chat with the start-up I was helping out and eased out of the project. They were very understanding and we're still friends to this day.
Now I spend more time on side projects and lately my own start-up. Learned alot in the process and wouldn't trade it.
This comment really resonates with me as I think this is going to be a crucial learning point for me down the road.
To answer your question - absolutely I've felt and feel overwhelmed. After coming home at 5, knowing you have 3 more hours of work to do after dinner, for 3-4 weekdays and 1-2 weekend days sucks!
A few tips that have worked for me: -Is there any way you could get help for some of the lower level portion of the work, and hire someone that costs 50-70% of your rate so that you still make a profit? -Can you tell the moonlighting people that you work on their projects on Tuesday, Thursday and Saturday so that you mentally know which days to focus on them and you don't have to think about it 24/7? -Can you let them know on those days that you check your email every 2 hours so that you can focus on the work (that way you're not refreshing your inbox every 5 minutes)
Hope that helps in any way.
1. If the scope is expanding and you're not getting paid, stop work.
2. If the scope is expanding and you're getting paid, attach a higher price to the additional work. That price should be high enough that it is worth your while to do it...though I'm not sure what the pissed off fiance market rate is these days.
3. If the client wants changes, then that obviously changes the schedule. You are not responsible for maintaining the same velocity beyond the time period associated with the initial project scope...your velocity can change. The client can then prioritize based on their new scope.
I had a very similar project. Client came back for phase two two years later after making a mess of a lot of relationships during phase one. I learned to put an expiration date on my rates after which if the project was not completed, I had the right to renegotiate my terms, and that most people recover from being let down when it comes to bargain priced services.
Good luck.
I was young. I bailed hard and burned bridges. I could have handled it more professionally but I don't regret my choice. Business commitments and networking are not worth your sanity. If the gig is not essential to your career goals, you will never need the client's goodwill. Since you have a day job, you can omit it from your resume and nobody will ever know.
In the end, I probably spent all the extra money on drinks to ease stress and restaurant meals because I didn't have time to cook. Unless you need the moonlighting gig to survive, stick to your day job. Live frugally and try to build skills/experience that will help you earn more money in the future.
E.g., I got in way, way over my head on a project for a startup once a few years ago. They didn't know what they needed, and I had no true idea how much work was involved. When I couldn't deliver I returned the money (which hurt, but I could do it). The client later came back to me (!) with a much smaller, better-defined project which I executed on well. They became a regular client and have been worth six figures to me over the years. (It did help that they tried another developer in the meantime who also didn't deliver but kept the money and stopped returning calls.)
Id consider sitting down with the client and talking out the scope. It sounds like the real problem is feature creep. Try to clamp down on this, maybe get them to come up with a decent spec, sign off on it and attempt to keep as close to that as you can. Any other features they want can then be considered extras for future implementation rather than extra stuff to worry about now.
Try reading this guys book, seems legit, maybe he offers strategies for handling scope creep and such: http://texmexconsulting.com/
Then drink a beer, do some Yoga, and relax before the evenings work!
Honest, frequent communication is the answer to this problem. A strong work ethic, ironically, just makes it worse.
https://www.youtube.com/watch?v=6h3RJhoqgK8
See his comments on contracts, starting generally at 7m 20s
Scope creep is included. Renegotiate. It's a new project.
When working for others and developing software. You have to nail/bolt and anchor the features down. No changes! Or sure, you can make changes but have to drop other features Or you get paid extra for new requests AND still have the schedule stretched.
What happens if you need to work extra hours for your day job? The moonlighting gig will suffer and the client will most likely be breathing down your neck to get the job finished asap.
You also can't get used to the new income (IE: spending more), because it's going to be difficult to maintain these hours.