Having problems controlling your projects and clients enough to enjoy your life and have fun developing software? If you can put a few systems in place, you will deliver better customer service, increase your productivity, and communicate better. Here are five tips to help you on your path of reigning in the chaos.
1. Manage Scope – Keep a Wish List
You want the client to dream, right? Having a place where you can keep things that they would like to do “some day” or brilliant ideas that weren’t in the initial scope will help you keep your project within scope. If you don’t actually complete a project, the client gets no value from it. You spend time upfront scoping the project based on the client’s needs and then the sparks of brilliance can get in the way. So, when that great new idea comes up, the answer can be, “Absolutely! Let’s get that on the list for after we finish developing what we said we’d develop.” Having a Wish List gives you a place to put things that are known to be out of initial scope. Plus, it gives the client a sense of, “Okay, good! This is going to get addressed one day and you heard what I needed.”
Here’s the secret: most of what goes on that list will never get done. The client will either forget what it is when you go back through the list after your project is complete. Or once they starts using the software, they will realize the solution doesn’t need it. But, you’re guaranteeing that what you’re creating ends up having real, lasting value for your client. A happier client will keep coming back to you for more work.
At the end of the project, you can go through the Wish List with your client and include the new requests in the scope for Phase 2 or write a Change Order to address them.
2. Projects Must End! (But What About the Bugs?!)
Let’s face it. When you deliver something to a client, you’re not guaranteeing it for five years, right? If the client finds a bug in five years, you’re not coming in and fixing it for free. It’s custom software; there will be bugs; there will always be bugs.
Part of your sales process needs to address that there will be bugs, how you are going to handle them, and how they get paid for. You can always fix newly found bugs as part of Phase 2 or a Change Order, so you aren’t telling your client they have to live with it forever. But, make sure the client understands that it is part of the process!
Plan to deliver a project based on when testing begins to ensure an end date. Tell your client that they have a certain time to do alpha testing. (Two weeks is a good time period depending on the scope.) Then, you can make some of your magic developer tweaks and fixes, before returning it to the client for two weeks of beta testing. Finally, take it live, possibly with known bugs that you will continue to work on as part of the original scope. Bugs and tweaks found after the timeframe can go to the Wish List.
It is your obligation as a professional to provide a completed project that brings value to your client. If you don’t make them test it by providing a consequence, they won’t do it. And then, they won’t have the value of the completed project. In essence, by forcing this, you are better serving him.
3. Project Manage Your Own Business
Where is your list kept? As a developer, you always have to-do lists for your clients. But, what about the things you need to do to run your business? How do you remember to invoice when you your head is buried in the development that you love?
First step: Stop managing projects via email. Stop the madness now! There are simple-to-use and inexpensive project management solutions out there, like Basecamp, that can be set up to manage your clients’ projects and track communications. You don’t have to insert a bureaucratic process to manage your work better; simply be more deliberate in how you communicate. (If you need assistance on how to set up Basecamp to work best for you and your clients, don’t hesitate to contact me.)
Second step: Don’t manage your business with sticky notes. Add a project into your solution (I call mine Operations.), and add your to-do’s into that project. Most of these types of software will allow you to set dates and reminders. You can even assign a to-do to your subcontractors to submit their timesheets.
4. Avoid Interruptions
Plan your tomorrow before you end today. Check your schedule vs. your to-do list and confirm you have a plan. Then, focus on what you’ve planned to do. You’ll be a lot more efficient, both in not burning your clients’ hours and in getting to completed work.
The only reason you should stop what you’ve planned to do is if the client has an actual emergency. The fact that the client found a typo on one of the layouts is not a reason to stop what you’re doing. You want to train your clients to work in a more efficient way. The benefit to them is that when you have six typos to fix at once, it’s going to cost them the same amount as if you had just fixed one. The benefit to you is you’re not thrown off your plan, and you don’t have to change directions in your mind.
You want to encourage your clients to use your selected project management software properly to report issues and to use email or the phone in an emergency only.
If you proactively change your schedule because you need to think about something else or you’re struggling to solve a problem, actively choose to change directions. However, if you’re reacting to an email or responding to a client call – that’s throwing you off, you have to limit those interruptions. You can close your email; emails don’t disappear if you don’t read them immediately. You can turn off your phone; we’ve had voicemail since at least the 1980s. (And, guess what? I had to do both those things just to write this blog post!)
5. You’re Always Selling
To help you gain better clients and also to keep your schedule more consistent, keep selling, even when you’re booked. Clients who really want to work with you are probably willing to wait a month or more to get started. Work on filling the pipeline so you are better able to pick and choose your clients, resulting in getting to work on projects and with people you like. Create a real sales process. For more details on a sales process development, check out this blog post: Lack of Sales Process Limiting Your Income?
Susan Fennema is the Chaos Eradicating Officer (CEO) of Beyond the Chaos, a consultancy helping small business owners gain control of their lives through better processes, organization, and structure of their business operations and projects. She has over 25 years experience in the software development, creative, marketing, and advertising industries, after receiving her BA in journalism from Texas A&M University. She lives and works in McKinney, Texas, with her husband, her dog, and two cats.