# Offboarding checklist

For leaving any software supplier, including SoftWrites.

Several of these are things a supplier will not raise on your behalf.
Take it, edit it, use it on us.

Published at https://softwrites.com/ownership

## Before you tell them

- [ ] Confirm the repository is in your organisation, not theirs.
      Check the URL. If it is under their account, this is the first thing to fix and it is easier before the conversation than after.
- [ ] Confirm you are the billing owner of every hosting account.
      Billing owner, not administrator. The person who pays cannot be locked out.
- [ ] Confirm the domain is registered to you.
- [ ] Take a database backup you have restored yourself.
      Not one they took and handed you. One you produced and proved works.

## The handover

- [ ] A written description of what the system does, by area.
- [ ] How it is deployed, and how to deploy it.
      Including which branch, what runs on merge, and what has to be set for a fresh environment to work.
- [ ] Every scheduled job, what it does and when it runs.
      The most commonly missed item, and the one that fails silently three weeks later.
- [ ] Every third-party service, what it is for, and whose account it is in.
- [ ] Every environment variable, and what breaks without it.
- [ ] The backup and restore procedure, with the date it was last tested.
- [ ] Known problems and what they would have done next.
      Ask for this in writing. A supplier who will not write down the weaknesses is telling you something.

## Access

- [ ] List every account they can reach, and remove each one.
- [ ] Rotate every credential they have held.
      Removing a person does not rotate a key they copied. These are separate jobs and only one of them is obvious.
- [ ] Check for automation running under an individual's login.
      If a scheduled job authenticates as a person who has left, it stops when their account does.
- [ ] Confirm nothing sends email from a domain they control.

## After

- [ ] Deploy once, yourselves, before you need to.
      The handover is not verified until somebody who is staying has done a deployment.
- [ ] Restore a backup into a scratch environment.
- [ ] Confirm the monitoring alerts reach somebody who still works there.
