One of the big balancing acts you have to perform when running a company involves how you deal with structure and processes.

Both are somewhat dirty words in the startup community at large (which Shanley recently pointed out).



Process is associated with large companies.

All the cool hipster startups seem to do without anything of the sort. It is certainly a very attractive idea that small groups of smart engineers can create wonders if left to their own devices.

However, the truth is not as black and white.



Rather than being seen only as the antithesis of innovation, companies at a certain stage should welcome a bit of “good” process. Unfortunately, process is often introduced in a panic without an overarching philosophy that fits with the company’s culture. This post is about my philosophy when it comes to running a growing company, and some of the lessons I’ve learned.



Any process you introduce should have inbuilt mechanisms for keeping it going without a human cracking the whip. When a process involves doing a task on a regular basis, you should invest time in building lightweight tools that make it as painless as possible.

Good processes allow you to keep everyone aligned and autonomous, and put off the need for armies of line managers. Bad processes are often the result of those line managers justifying their existence.

Carve out time to think

When a company lacks processes but is still seeing some degree of success, things can become a little chaotic. This chaos spawns more chaos, and is generally a bad thing. One of the most costly aspects of this chaos is that founders spend too much of their time on dealing with day to day activities, and not enough time working out where the company sits in the bigger picture.

Rather than being a stifler of innovation, processes that make teams more self-sufficient create room for more innovation.

Focus activities on your longer term goals



Any company has goals it needs to achieve.

These may be BHAGs such as getting a person into space, or operational goals such as increasing the number of visitors of your website or achieving a certain percentage of monthly revenue growth.



In the early stages of a company’s life, the primary goal can simply be “find out what kind of product people want in X problem space”. Once you have some notion of what that product is, you start making more operational goals such as selling more of your product. It’s at this point that you want to create a machine that is broadly predictable in its growth. Feed it X dollars, and it will return a multiple of that as revenue.



Processes are therefore there to help everyone in the company focus their time on the tasks that will bring the company closer to those goals.



Like most companies, Pusher has a certain amount of (finite) resources to achieve our goals. We also have an almost limitless amount of ideas we could spend time on that might move us closer to our goals. What we’ve tried to create and maintain is a framework for channeling effort in a concerted way, rather than having everyone going off in their own direction.



When we have too many things going on, we tend to start a lot of awesome stuff, which is pretty fun. However, what is not fun is not making the most out of each opportunity. Disorder therefore creates waste (which you'll care about if you follow Lean).

Order allows a closed system to do work



In standard textbook examples of thermodynamics, a closed system is capable of doing work as long as its energy has a certain amount of order. Entropy is a state of maximum disorder where the system cannot be used for work.



I see processes as a means of maintaining order, and hence a capacity for work. Under this definition, ordered energy means:

determination to make things better

awareness of the business objectives

motivation to do awesome things

Processes can therefore be seen as thing is done repeatedly (either regularly, or in response to other factors), that re-aligns effort towards goals by rebuilding order (reporting progress towards goals is also process, but it serves to help re-align effort).

What makes a process suck



The kinds of processes I particularly dislike are those that have a high tendency towards entropy or disorder. This process decay happens because people (like me) will forget what they're meant to do, or they'll procrastinate because they don’t like the process.



Bad processes suffer the same fate as most New Year’s resolutions. You forget the reasons why you wanted to do something.



The speed that this happens is determined by 2 big factors:

how people are reminded of the process, and

how much much friction is involved in keeping the process going.

These are the 2 big levers that you can play when designing and adding processes. The balance you want to put on them often reflects management style.

Keeping processes fresh



In larger corporations, this is what line managers are for. Regardless of the amount of friction involved in a process-related task, if you have armies of managers to coerce people, then you can make sure the that the tasks are done.



For my own part, I hate reminding (nagging) people about processes they need to do, and I put quite a lot of effort into making sure I don't have to. This is probably a symptom of our company culture, and its heavy engineering focus. Reminding people what they are meant to do is something we should allow computers to do for us!



The upshot of this attitude is that I end up investing time into software tools that reduce the amount of friction involved in completing a task.

Removing friction from processes



Factors that introduce friction come in multiple flavors, with varying impact.



In my calendar is an item that occurs every Wednesday afternoon to think about what PR we should be doing in the company. While I applaud myself for trying to bring to my attention the fact that PR is important, the format is too unclear.



A critical User Experience consideration for all processes is "don't make me think". This doesn't mean that thinking is not allowed while carrying out the task, just that if you have to think what the nature of the task is, then it will probably have a short lifespan.

Make sure that the goal and output of a process related task is always clear. Usually the purpose and goal of the task is pretty clear when it is created, but the reminder doesn't include enough information about it to remind the person that is actually a very worthwhile thing to do.

"Don't make me do work a computer could do better"



Related to not making me think is a whole slew of tasks that can be categorized as "don't make me do work a computer could do better".



When I recently decided that I needed weekly reports from people in the company about what was going on in their area of responsibility, I was very aware that this was the kind of process that could easily fall by the wayside.

When I was looking at solutions for this online, many apps sent a regular email that a report needed to be filled in, but didn't allow the reporter to respond directly to the email (they had to click a link and login to an web app).

There's no need for these tiny barriers that can contribute to the failing of a process. Using some cloud services like iron.io and sendgrid, I was able to rustle up an app for our internal use in reporter.io.



Likewise, backlog grooming is a process that is common in agile development teams, and involves re-prioritizing all the potential work we could do. If the software you use to prioritize your work fights you, this practice will only remain if management keeps it going, and even then, it is a huge waste of people's time.

We've added new interfaces to the tools we use to make this job easier, like a backlog view of our github issues.

Final thoughts

While I hope that I've shown that processes can help you be lean and mean, and work together as a team, I do try and go sparingly on any new processes in the company. It's important not to create a process you won't follow through on, because when it crashes and burns, it erodes confidence in the value of processes.



On a similar note, make sure that you create opportunities to kill processes that aren't working on a regular basis. As companies grow their process needs change, and there is something incredibly depressing about people following a process that has a goal that no-one remembers.