Throughout my career I have heard soooo many people complain about the general concept of process - the standardized series of steps needed to perform a task. Saying something like “I think we might be helped by coming up with a process for this” has given me the looks as if I brought a skunk to a garden party. Nobody wants a process.

Processes exist to structure, manage, and optimize tasks, particularly complex multi-step tasks. For example, a process can help reduce mistakes and cognitive overhead.

In most cases, a process exists to help us by making something easier. Yet, why are processes so frowned upon? I think the answer lies in a variant of survivorship bias; We notice bad processes more than good ones. A good process is invisible. It’s there and once we have learned it, it stays out of the way for us.

As software engineers, we use processes all the time. We just don’t notice all of them. Pushing code to GitHub and submitting a pull request is a process of sharing code. There are many other ways to share patches, yet many people chose “the GitHub process”. There is a process for getting into your office involving a badge or tag. There are many processes in place for your team to collaborate; daily standups, retrospectives, planning sessions, …

Most of the above processes are flawless and help us get our job done. But then we have these processes that simply are in our way; Filing expenses in a horrible expenses system, submitting vacation requests in HR systems, creating a verbose Jira ticket…

Since the word “process” is so frowned upon, I try to avoid using it. These days, I just say something like “Could we standardize a bit how we do this to avoid mistakes?”. I propose a process. You just don’t know it.