A case study – how to end cooperation with a software house or contractor "Product people - Product managers, product designers, UX designers, UX researchers, Business analysts, developers, makers & entrepreneurs July 07 2021 False Business Strategy, Case Study, Outsourcing, Mind the Product Mind the Product Ltd 1913 Programmer,Writing,Program,Code,With,Two,Monitors,And,Working,On Product Management 7.652

A case study – how to end cooperation with a software house or contractor

BY ON

So you outsource. If everything is going well and according to the plan and budget, then perfect. But what to do, if not?

I have had this case twice now. The company I was working with outsourced a software house and external consultants. The reason for that was valid, pros and cons discussed. Yet, after some time (to be precise: for both, it was nearly one year), managers from different departments started to see problems. The communication was delayed. The quality was poor. The costs were high. The engagement was small. All the cons previously discussed and accepted for almost a year started to be too big to swallow. The decision was made: let’s fire externals and, at the same time, manage those tasks internally.

Because both: the software house and consultants were engaged in product development, I was at the centre of this process. Therefore, I had to organize simultaneously two flows: disconnect those that we fired smoothly and introduce new people to the team, to be able to handle all the tasks internally. Not to forget that product development should run as planned (also smoothly) at the same time.

It sounds like a nightmare, but there is a way out of the situation. What you need is to be calm and have a checklist (in other words: an action plan). Then the offboarding of external providers can be less painful.

The checklist (action plan)

When things are organized in a simple-looking checklist, everything seems more straightforward. I strongly recommend creating your action plan, but helping you start, here is what I used in my case.

Step one: Create the replacement before you fire someone

Start thinking about replacement immediately when you know you have to get rid of external cooperators. Recruitments, especially for the product team, will last a while. Discuss the process with your HR in the company, or, for example, if you work in a startup, check best practices and do it by yourself. Just do it fast. The thing with contractors is they can vanish more quickly than you expect, especially when they understand that there is a problem.

Creating a replacement is essential if you don’t want to lose any information in the contractors’ possession. When you know the situation here, you can prepare for the knowledge transfer.

Step two: Onboard when you still have external resources

It would be a perfect situation to have new team members on board when still working with external providers. Prepare a series of meetings and list all the questions with the new team.

If it isn’t possible, ask an external software house or consultant to pass the knowledge to you – but also ask for recordings from those meetings together with written summaries and descriptions. You will then have a knowledge base for the new team, just waiting.

1. Check the agreement with the outsourced team

You need to know what the terms and conditions of your cooperation are. Then, based on that, you know, for example:

  • How much time you have to arrange the process,
  • What are the responsibilities of both sides,
  • When will be the last time you pay their invoice,
  • What is excluded, so you need to take care of this faster
  • What is included, so you will ask for it in advance (for example: who is the owner of the developed code, if your company, ask for the source code, etc.)
  • If there is any ‘warranty’ period or SLA (if the provider delivered software or other things that will stay in the company).

If you have doubts, for example, you see that the end of the cooperation won’t be friendly, then ask your company’s lawyers for help. That’s one of the best decisions I made during this kind of situation, as I have learned all the risks, and then I wasn’t surprised.

2. Assume the risks and how deep are you bonded

Based on the agreement, prepare a list of tasks the provider was responsible for. Then, mark which of them were crucial for the whole company, for example, which tasks were strictly connected with the revenue. This kind of list will help you to decide what things are the firsts that you need to find replacements for. For example, to avoid a situation where you will focus on finding a person to handle your website WordPress editing when at the same time nobody will take care of the servers.

3. Communicate the decision with an action plan

Internally prepare a message and send it internally to the teams. It should inform you about the reasons and action plan (in general). Thanks to that, you will be able to re-plan some tasks together with other departments (because of the transition period and, for example, lack of resources).

Externally prepare a meeting or a message with the news. Be professional: do not accuse, do not point out only negative feedback. Instead, try to keep it simple and explain the reasons for the end of cooperation calmly. Here focus more on the action plan rather than scratching the wounds.

The action plan should include:

  • A summary of the agreement you have, with the transition period and end dates
  • Steps that you would like to take before the end of the contract, including a proposition of workshops (to pass the knowledge), the date to establish a detailed action plan (the best: together, so both parties will be involved), and also to summarise last invoices and other formalities.

You don’t need to have a detailed plan upfront. However, it is essential to communicate that you want to work on it together.

4. Start removing all the “roots”

By “roots,” I mean all the places external contractors were involved. The list of possible locations is quite long. Let’s dive deep.

Infrastructure

Check if the provider was involved in some core architecture tasks for the product. If yes, then you have to discuss how to manage the transition. For example: if they were providers for the cloud, you have to decide who will take care of that and if any changes should be applied. And you need to know it and organize the work before the agreement ends.

Source code

Check what your external providers developed and ask for source code. If you will have resources to check if the code is okay, then the best. Arrange supervised test deployments on production while external providers are still with you. If it won’t be possible, then to feel safe, ask external providers to sign a form with a statement that they delivered current source code, free from bugs.

Systems/documents access

List all the systems the provider had access to. Then, start to change the accesses when possible — to “read-only” or remove altogether. This list will help you manage the task during the transition period and after the cooperation will be ended. There will be no surprises after a year, that “gosh, those guys still see our financial reports!”.

Other dependencies

Think together with your team or other departments where the external provider was involved. Write down everything you hear because it may occur that they were a part of another project, and you also have to take care of removing them from there. For example, even if a software house is developing a website, you should check if the marketing team didn’t share access to some tools you do not use, but they do.

Here’s a useful list to take a look at:

  • G Suite or others
  • Google Analytics, Firebase, Hotjar, etc.
  • Emails and SMSes systems
  • CRMs, Zapier, or other automation tools (connected with e.g., landing pages)
  • Slack, Jira, Confluence, Asana, Monday, etc.
  • App stores, Git, BitBucket, etc.
  • Ownership of hosting and domains
  • E Signature software, HR systems
  • (…fill in everything you can think of regarding your company).

Documentation

Ask about all instructions, documentation, everything – they were responsible for. Be sure that the documents they will provide are up to date. To feel safe, ask external providers to sign a form with a statement – that they delivered current versions of documents.

Communication

Check with whom external providers had direct contact. Perhaps they were involved with some talks with your customers, stakeholders, or even investors. Try to be CCd everywhere from the moment you pass the information of the end of cooperation. It is crucial to start taking over the communication and exclude those who soon won’t work with your company.

5. Clear the obligations

Check if all the invoices are paid and that no other things are hanging. Then, thanks to that, you are in a precise position at the end of cooperation, and you will not hear arguments like “pay us or we will not give you the files.”

6. Close the process: summarise

It is a good practice to wrap up all the details after the process is finished.

An internally sent message could be a short report or just an email to stakeholders, the supervisor, or the CEO. It should include steps you have taken, what went smoothly, and where you experienced some bumps on the road. In addition, summarize your new team (together with the cost and predicted performance compared to the cost of external providers and their performance). Finally, always provide a recommendation: if there were a need in the future, would you recommend hiring this provider again?

Also, you should summarise the process to those external providers you just terminated cooperation with. No matter if the end was smooth or not, be professional. Send a message with enlisted arrangements that were made and wish everything the best. If there is no response – do not worry. If there is a negative or angry response – be patient and do not follow this path. Just thanks for the feedback and close the topic.

Case study

I had to deal with all those mentioned above when my external consultant surprised me with a decision of halting all the work until we solve one problem. I understood that the problem was enormous, and to solve it together was essential. Yet, their decision to stop all the other tasks was a bold one. They didn’t consult us, and they also didn’t give us time to prepare ourselves. They just cut the jobs and contacts. It sounded a little like blackmail, at least in my perception. It also affected other departments and could put at risk our Q2 sales. What to do in this kind of situation?

I decided to cut the provider completely, starting from this point. I had a list prepared and just accelerated the actions. Before I made a move, I sent an urgent message to our managers, describing the situation. I also checked with the team: which tasks we can do alone, even if we need to work overtime. Having this, I asked about the permission to act. I got it – and time proved it was a good decision. Our provider tried to press us against the wall to win some additional benefits. Us not agreeing helped us to end the cooperation without more significant losses.

To wrap up

It seems that there are a lot of things to remember (and do) when you want to end cooperation with an external provider. There are a lot of possible problems that may occur during the end of the collaboration. But a good plan can help a lot. Still, the most crucial part of the process is to remain calm. Everything will work fine, eventually 🙂

 

So you outsource. If everything is going well and according to the plan and budget, then perfect. But what to do, if not? I have had this case twice now. The company I was working with outsourced a software house and external consultants. The reason for that was valid, pros and cons discussed. Yet, after some time (to be precise: for both, it was nearly one year), managers from different departments started to see problems. The communication was delayed. The quality was poor. The costs were high. The engagement was small. All the cons previously discussed and accepted for almost a year started to be too big to swallow. The decision was made: let's fire externals and, at the same time, manage those tasks internally. Because both: the software house and consultants were engaged in product development, I was at the centre of this process. Therefore, I had to organize simultaneously two flows: disconnect those that we fired smoothly and introduce new people to the team, to be able to handle all the tasks internally. Not to forget that product development should run as planned (also smoothly) at the same time. It sounds like a nightmare, but there is a way out of the situation. What you need is to be calm and have a checklist (in other words: an action plan). Then the offboarding of external providers can be less painful.

The checklist (action plan)

When things are organized in a simple-looking checklist, everything seems more straightforward. I strongly recommend creating your action plan, but helping you start, here is what I used in my case.

Step one: Create the replacement before you fire someone

Start thinking about replacement immediately when you know you have to get rid of external cooperators. Recruitments, especially for the product team, will last a while. Discuss the process with your HR in the company, or, for example, if you work in a startup, check best practices and do it by yourself. Just do it fast. The thing with contractors is they can vanish more quickly than you expect, especially when they understand that there is a problem. Creating a replacement is essential if you don’t want to lose any information in the contractors' possession. When you know the situation here, you can prepare for the knowledge transfer.

Step two: Onboard when you still have external resources

It would be a perfect situation to have new team members on board when still working with external providers. Prepare a series of meetings and list all the questions with the new team. If it isn't possible, ask an external software house or consultant to pass the knowledge to you - but also ask for recordings from those meetings together with written summaries and descriptions. You will then have a knowledge base for the new team, just waiting.

1. Check the agreement with the outsourced team

You need to know what the terms and conditions of your cooperation are. Then, based on that, you know, for example:
  • How much time you have to arrange the process,
  • What are the responsibilities of both sides,
  • When will be the last time you pay their invoice,
  • What is excluded, so you need to take care of this faster
  • What is included, so you will ask for it in advance (for example: who is the owner of the developed code, if your company, ask for the source code, etc.)
  • If there is any 'warranty' period or SLA (if the provider delivered software or other things that will stay in the company).
If you have doubts, for example, you see that the end of the cooperation won't be friendly, then ask your company's lawyers for help. That's one of the best decisions I made during this kind of situation, as I have learned all the risks, and then I wasn't surprised.

2. Assume the risks and how deep are you bonded

Based on the agreement, prepare a list of tasks the provider was responsible for. Then, mark which of them were crucial for the whole company, for example, which tasks were strictly connected with the revenue. This kind of list will help you to decide what things are the firsts that you need to find replacements for. For example, to avoid a situation where you will focus on finding a person to handle your website WordPress editing when at the same time nobody will take care of the servers.

3. Communicate the decision with an action plan

Internally prepare a message and send it internally to the teams. It should inform you about the reasons and action plan (in general). Thanks to that, you will be able to re-plan some tasks together with other departments (because of the transition period and, for example, lack of resources). Externally prepare a meeting or a message with the news. Be professional: do not accuse, do not point out only negative feedback. Instead, try to keep it simple and explain the reasons for the end of cooperation calmly. Here focus more on the action plan rather than scratching the wounds. The action plan should include:
  • A summary of the agreement you have, with the transition period and end dates
  • Steps that you would like to take before the end of the contract, including a proposition of workshops (to pass the knowledge), the date to establish a detailed action plan (the best: together, so both parties will be involved), and also to summarise last invoices and other formalities.
You don’t need to have a detailed plan upfront. However, it is essential to communicate that you want to work on it together.

4. Start removing all the "roots"

By "roots," I mean all the places external contractors were involved. The list of possible locations is quite long. Let's dive deep. Infrastructure Check if the provider was involved in some core architecture tasks for the product. If yes, then you have to discuss how to manage the transition. For example: if they were providers for the cloud, you have to decide who will take care of that and if any changes should be applied. And you need to know it and organize the work before the agreement ends. Source code Check what your external providers developed and ask for source code. If you will have resources to check if the code is okay, then the best. Arrange supervised test deployments on production while external providers are still with you. If it won't be possible, then to feel safe, ask external providers to sign a form with a statement that they delivered current source code, free from bugs. Systems/documents access List all the systems the provider had access to. Then, start to change the accesses when possible — to "read-only" or remove altogether. This list will help you manage the task during the transition period and after the cooperation will be ended. There will be no surprises after a year, that "gosh, those guys still see our financial reports!". Other dependencies Think together with your team or other departments where the external provider was involved. Write down everything you hear because it may occur that they were a part of another project, and you also have to take care of removing them from there. For example, even if a software house is developing a website, you should check if the marketing team didn't share access to some tools you do not use, but they do. Here’s a useful list to take a look at:
  • G Suite or others
  • Google Analytics, Firebase, Hotjar, etc.
  • Emails and SMSes systems
  • CRMs, Zapier, or other automation tools (connected with e.g., landing pages)
  • Slack, Jira, Confluence, Asana, Monday, etc.
  • App stores, Git, BitBucket, etc.
  • Ownership of hosting and domains
  • E Signature software, HR systems
  • (...fill in everything you can think of regarding your company).
Documentation Ask about all instructions, documentation, everything - they were responsible for. Be sure that the documents they will provide are up to date. To feel safe, ask external providers to sign a form with a statement - that they delivered current versions of documents. Communication Check with whom external providers had direct contact. Perhaps they were involved with some talks with your customers, stakeholders, or even investors. Try to be CCd everywhere from the moment you pass the information of the end of cooperation. It is crucial to start taking over the communication and exclude those who soon won't work with your company.

5. Clear the obligations

Check if all the invoices are paid and that no other things are hanging. Then, thanks to that, you are in a precise position at the end of cooperation, and you will not hear arguments like "pay us or we will not give you the files."

6. Close the process: summarise

It is a good practice to wrap up all the details after the process is finished. An internally sent message could be a short report or just an email to stakeholders, the supervisor, or the CEO. It should include steps you have taken, what went smoothly, and where you experienced some bumps on the road. In addition, summarize your new team (together with the cost and predicted performance compared to the cost of external providers and their performance). Finally, always provide a recommendation: if there were a need in the future, would you recommend hiring this provider again? Also, you should summarise the process to those external providers you just terminated cooperation with. No matter if the end was smooth or not, be professional. Send a message with enlisted arrangements that were made and wish everything the best. If there is no response - do not worry. If there is a negative or angry response - be patient and do not follow this path. Just thanks for the feedback and close the topic.

Case study

I had to deal with all those mentioned above when my external consultant surprised me with a decision of halting all the work until we solve one problem. I understood that the problem was enormous, and to solve it together was essential. Yet, their decision to stop all the other tasks was a bold one. They didn’t consult us, and they also didn’t give us time to prepare ourselves. They just cut the jobs and contacts. It sounded a little like blackmail, at least in my perception. It also affected other departments and could put at risk our Q2 sales. What to do in this kind of situation? I decided to cut the provider completely, starting from this point. I had a list prepared and just accelerated the actions. Before I made a move, I sent an urgent message to our managers, describing the situation. I also checked with the team: which tasks we can do alone, even if we need to work overtime. Having this, I asked about the permission to act. I got it - and time proved it was a good decision. Our provider tried to press us against the wall to win some additional benefits. Us not agreeing helped us to end the cooperation without more significant losses.

To wrap up

It seems that there are a lot of things to remember (and do) when you want to end cooperation with an external provider. There are a lot of possible problems that may occur during the end of the collaboration. But a good plan can help a lot. Still, the most crucial part of the process is to remain calm. Everything will work fine, eventually :)