Hi guys, I recently started working at a company with about 50 people that has grown to large for their current IT setup. They have no documentation or any SOPs. Has anyone been in a similar situation and how did you go about creating documentation, especially when you are new and don’t fully understand all of the services they have in place?
Thankfully it’s mostly a Microsoft shop and pretty low tech but there are dozens of exchange rules in place that no one knows why they exist or what they do, dozens of SharePoint sites with critical information strewn about them and so on. It’s hard to think where to even start and decide what the best way to organize this information will be, and keep in a place a system where we will update it regularly. Any advice would be greatly appreciated.
Personally, I think the biggest challenge with documentation is keeping it up to date.
The only way I’ve found to be actually up-to-date on docs is to do GitOps and have self-documenting code. That way every change being made is automatically documented with a commit message.
If you can’t do that because your tools aren’t GitOps compatible, you need management to enforce some kind of documentation rule. Like every time a system gets touched, documentation needs to be updated. A project isn’t complete until docs are done/updated.
This is easily said, but in practice it’s just not going to happen. You need a team that both actually wants to this, and has the time to do it.
On top of schnapsidee’s already correct feedback, if the company is willing to enforce documentation deliverables (which it really should), I’ve found it important to have a minimal documentation deliverable formulated. Don’t immediately overshoot with all the different types and subjects, but find a set of documentation aspects that are agreeable by the company at large as a minimum. You can always increase this later, but it’s hard to set the bar too high immediately as that removes any willingness from the organization as well.
You also can’t just ‘reset’ the organization and suddenly do things in a different way. It will need to be evolved into a better documentation structure. Perhaps you could start with just a portal that points to the various existing documentation libraries and services. That can help you identify what types of documentation you have, and perhaps even find a good grouping. Also, try to see what information should be protected (don’t want to have passwords laying around, or other risky information) versus which information should be easily accessible.
One thing that worked for me in a similar situation was to enforce an “owner” tag or some kind of registry on everything.
Basically, if you set something up, change some configuration, whatever - put your email address on it.
Write a readme.md or wiki or guide too, but at the very minimum put your name down as the owner so that when someone comes along and wants to know if it’s safe to change/upgrade/delete, they can find you and ask. If someone leaves, you can do a quick search and get them to handover/write up anything they were responsible for.