I’ve said it before and I’ll say it again: You MUST scope your projects.
This is a non-negotiable.
It doesn’t matter if you are changing an image, changing the text, or starting a huge project. Every single thing you do needs to be scoped.
This means making a to-do list of what needs to be done, what you want to accomplish, and the steps you need to take to get there.
It sounds like a lot of work.
It is, but it’s also necessary. Vital, even. It’s not just for you; it’s for your designers and developers to understand what needs to be done, when it needs to be done, and how to do it. It’s also an easy way to keep your team accountable.
I’ve seen a lot of teams under fire because a client put in a request that was never written down and it was overlooked during the building process. Don’t let that happen by forgetting to scope.
List everything out with the estimated time needed to complete the task. That’s one of the main reasons I created BrainLeaf, which makes scoping a project infinitely easier and less tedious.
Speaking of tedious…
Project management: it’s not everyone’s forte.
It doesn’t matter the size of the task; it can be as simple as sending an email. You need to task it out. If you don’t utilize an effective project management system or process, it can be really difficult to work well with an outsource team, or to work with one at all. If you neglect to use a project management system, you’re neglecting a wide range of resources.
One more thing:
If your team has scoped a project but is not making deadlines and is not changing the scope to reflect this, you have an issue…and possibly the wrong team. So make sure that everyone is on the same page, has agreed to deadlines and timelines and can be held accountable. Make sure to:
- Create a concise, detailed, and specific scope of work.
- Set deadlines. If it’s a large project, make sure to divide it into small tasks that get you to a big milestone, especially in the beginning of the project.
- Hold the team accountable to these deadlines.
- If your team misses preliminary deadlines with no decent excuse or reason, consider setting up consequences – or perhaps go with another team. But keep in mind, this is development and sometimes things take a bit longer than initially planned.
- Be understanding about issues and problems, but enforce the team’s commitments.
- If your team is missing deadlines on a regular basis, perhaps you should look elsewhere for a team. However, I would caution you not to do this halfway through a project. The earlier the better.
If you need some a few things to help you along the way, check out my post on some of my favorite project management tools.
This is a must. Code repositories (repos) are essential for outsource teams. It provides the flexibility for several developers to work on a single file simultaneously, which is critical to the timely outcome of your project.
Be sure to hold each of your developers accountable at the end of the day. Every time a developer works on code in a repo, the change is committed and recorded for easy review at the end of the day. If a developer isn’t committing code, they aren’t working the way they need to be. Repos make for an easy, over-all view of how your team is working and who is doing what. Check out this post on code repositories for a bit more info on what they are and why you need them.
Pricing: How does it work?
Now that you have a basic rundown of what you need in an outsource team, let’s talk about pricing.
How should your team be charging you? Flat rate? By time and materials? Something else?
Honestly, it will depend on the team and the size of the project, but I would generally warn you to be wary of a team that cannot quote you a flat fee up front, especially if this isn’t their first rodeo. Understandably, some things will need to be charged by time and materials, especially if things are added to the scope well after a project begins. However, I ALWAYS push for a final estimates and flat fee proposals whenever I can. It’s wiser, in my opinion, to set the time and cost expectations up front.
Contracts and Intellectual Property
I’m sure you’ve heard horror stories of an outsource team taking code and reusing or re-branding it for their own purpose or profit. I don’t think this is entirely out of the realm of possibility, but there are ways to protect yourself and your ideas.
My first piece of advice? Get a great lawyer.
My second, third, and fourth pieces of advice? Have your outsource team sign non-disclosures, make sure the team has a US branch (as it’s much easier and more cost effective to sue a US company than an overseas company), and don’t provide sensitive client information to an outsourced team. If your system build requires that you input sensitive info, have your outsource team build the system but have a local team set up and transfer data. While this isn’t to say you should never provide confidential info to an outsource team, you should, however, consider limiting what you share.
Overall, using outsource teams has made projects much easier and has saved me a lot of time and money. However, it’s important to have a clear and concise process and plan for every project you start. Be consistent and diligent across the board and you will be on the way to setting yourself up for success.
Any questions? Leave a comment below!