Sometimes it makes sense to hire a pro rather than take on a job yourself. However, you must choose wisely, as choosing the wrong contractor can lead to delays, subpar work, and even legal problems. A contractor is a person or entity, contracted to work or provide services to another entity, as a nonemployee. They are normally self-employed or freelance, which makes them in charge of paying their own social security, medical, employee benefits, etc.
At EC we are lucky to count with Altoros, the leading IT service provider, which helps a lot of other organizations globally, providing products and services for the Cloud Foundry platform. Together, we created a guideline that will help you choose a professional contractor and ensure a good working relationship.
Check Their Experience.
The contractor you choose, must have great experience on whatever you want them to do. Doesn’t matter if you consider yourself a pro, two is better than one. On the contrary, even if you are just starting out, and feel a little inexperienced, a good contractor will revise the process for you and take the lead. That is why, it’s really important that you check their experience. But how can you do it? You must interview them and ask them some essential questions, to hear their answers and decide if they are what you are looking for:
1. What engagement model is the best fit for my project: Fix price, T&M, Outstaffing?
2. What process do you suggest? Waterfall, Scrum, Kanban… Tricky part
3. What happens if the team exceeds the original estimate?
4. What happens if the team runs out of tasks?
5. What happens if we realize that we got not really what we wanted after all? 6. What do you do if we are going behind schedule?
7. What type of customers you won’t take onboard?
8. Can I just describe tasks for you on a high level?
Check Their Diligence.
A contractor not only must be experienced, but also must be devoted to their work and application, eager to accomplish a goal. You must choose a contractor that is careful and persistent.
To ensure you are choosing the right one:
1. Check the borders of the work: For example, in how many browsers, devices or operating systems, the contractor will test your solution?
2. Check the volume of work: for example, on what browser versions, version of operating systems or generation of the devices, the contractor will test your solution?
3. Check if you ever discussed and agreed on non-functional requirements, such as performance, security, scalability and language support.
Controlling ensures order and discipline. It’s needed to improve the effectiveness of every function of the management. This is not only important in life, but also when counting with a contractor. At the end of the day they work for you, and their performance must be checked to ensure its efficiency.
1. Ask questions that push the team to give a detailed answer, I mean, make sure to ask if they are on track or if they need help.
2. Monitor daily code repository updates, to monitor daily improvements and ensure they are functioning steady, as needed.
3. Ask the team how they are going to implement a particular feature, i mean, how the team believes this feature is going to work.
4. Moderate risks and always have a plan B. Sometimes things are not meant to be, even if you do it perfectly. Always have a backup plan to make sure you get back on track after the stumble.
Mitigate the excess of the project budget
Budgetary control is important because it helps the management to efficiently track the company’s performance. With a contractor you must ensure everything goes as planned to avoid extra charges. However, if this happens:
1.Check how many changes or new features you have requested? Planning is really important for a reason. Follow the plan and don’t go crazy!
2. Check the details why and where initial estimates have been exceeded. For example, if the features are larger than expected, or if the team was idle while waiting for credentials. Also, could be caused by wrong estimates or system contradictions that led to investigations of the issue.
3. Follow the agreement and negotiate – Both sides should be ready for this and agree in advance what to do or must negotiate how this overrun will be shared between sides based on the reasons.
4. Revise the engagement model. At this step another model could be more protective.
Quality and Speed
In business, service/product quality is extremely important because it affects the success of the company and helps establish its reputation in customer markets. To ensure steady quality with the contractor you choose:
1. Decide if the contractor should fix the quality or provide an appropriate discount. In other words, If the contractor is capable of fixing the quality issues and you have time for that, give them a chance. However, if they don’t, discuss an exit fee or discount.
2. Decide how critical to you the missing delivery dates are. Sometimes you can’t wait to get a well done project. However, if you can’t shift the deadlines, try to cut the scope, set new priorities with the team, and look up for alternative solutions if applicable.
Motivation in the workplace is the level of commitment, drive and energy that workers bring to the role everyday. Without it, productivity decreases massively, putting at risk the whole process. When you choose a contractor, he must be motivated to achieve your business goals. This is very easy to identify: For example if they are not hiding from you and respond to the emails, messages, and join meetings. They should be available and communicate as before. Consider it a red flag if the contractor switches to a specific channel, like email. Also, if they suggest solutions and take or share responsibility to indicate his steps to resolve a case and minimize any damage. Finally if they are ready to compromise and to complete the project. All communications go in the way to avoid any losses, and be able to give a discount or free of charge work, etc.
In conclusion, the 7 worst things you can do to a contractor are:
1. Not adjusting expectations appropriately to the rates.
2. Not taking responsibility for the chosen solution with its limitations, constraints, incompatibility, performance etc.
3. Consider given estimates as commitments.
4. Expecting to cover negative flow scenarios properly tested by developers while not having QA in the project.
5. Expecting smoothly adding new features to the project by developers without a business analyst.
6. Expecting smooth support of the existing solution by the new team.
7. Add another contractor to compete, to review, to ”assist.