For the last 4-5 years of running with the WitFoo revolution, I have constantly had to defend our small team. In the early days, potential investors would remark, “You can’t get all this done with such a small team.” Now that we have accomplished building the product, the go-to-market strategy, have many happy customers we are still told, “I don’t see how you can get so much done with such a small team.” I want to respond with “that seems to be a problem with your ability to see since we’ve already done it and you are looking at it,” but I realize that is not going to help the situation.
In dealing with customers, analysts, partners and investors I am regularly faced with having to decide whether I should acquiesce and deliver what they want or try to teach them why they should change their minds and accept what I believe they need.
I was recently explaining this small team issue to an old Navy buddy and he wisely said to me “The Chicago Symphony Orchestra has 106 members. They play great music, but it took 4 guys to write & play Stairway to Heaven. You guys are Rock. Rock doesn’t work with 106 people. Rock on.”
While WitFoo isn’t ready to trade in our bass guitars for cellos or our drums for violins just yet, I thought I would share some of the mystery to help people “see how we get so much done with such a small team.”
The Math of Creation
To build WitFoo Precinct 6.0 we expended approximately 52,000 labor hours. If you divide that by 8-hour work-days, and 5-day work-weeks it is 25 labor years. There are several ways to do 25 labor years. You can hire 25 laborers and knock it out in a year. You can have 1 laborer spend 25 years of his life to get it done. WitFoo did it using a development team of 3-5 people that worked 100-120 hours a week for 4 years. This means the WitFoo developers worked 3x the hours that are acceptable by any employee (carrying the weight of 3 developers for years.) The reason our team did that is they are not just employees. They are owners/shareholders of WitFoo and zealously believe in the mission and vision of what we are doing. We believe we have an opportunity to make the world safer for future generations and we do not want to miss our opportunity to make that difference. We aren’t just code-musicians, we are revolutionaries.
Reducing Waste of Effort
Just like in physics, energy loss occurs more frequently in larger, more complex systems. WitFoo Developers haven’t had a standup or scrum meeting in the last 4 years. Every developer knows exactly what the big picture is and how his code and decisions impact his teammates. When we have questions of each other, we don’t schedule meetings; we post it in Slack. If we need to spitball, we jump on Zoom or phone call and hash it out. When we need to come up with big ideas we get in the same room for a few days and hash it out over beers. When we have an idea we want to present, we record it in a video so our fellow WitFookin can watch it when they have the time and mindset. It also makes the content available to the new WitFookin when they join in the future.
When it is time to think, we stop everything and think together. When it is time to code, we tune everything out and we code. A WitFoo labor hour delivers more features than an average dev shop and very few hours are spent on non-productive cycles.
Ryan and I often give conference talks on the details of what we call Metric Driven Development. You can download the deck in this blog post. While 52,000 labor hours was a monstrous mountain to climb, the required work would have been 2 to 10 times higher had we not failed and learned very quickly. To build Precinct 6.0 we had to run 2,415 unique experiments on live deployments of Precinct. We needed to know what worked and what did not without breaking things for our early customers and trials. We baked a ton of metrics into all our code to answer questions ranging from processing cycles to user experience happiness. The cold hard truth of those metrics allows us to make rapid decisions to keep our labor costs down and still churn out the next set of amazing riffs.
Before WitFookin write new features, we first write tests that the code will have to pass, and we write metrics that will report issues to us (and tell us if we wrote the correct tests.) Our DEVOPS is unforgiving and forces us to write quality code all the time. All code is run through functional tests, unit tests, system tests, static code analysis, performance test and the scrutiny of the broad WitFoo team before it gets to hit our early-access customer deployments. Any issues with the build create metrics that alarm the dev team that something is wrong in production. Working in and with large development shops, we have all seen the poison that technical debt is. When hygiene is ignored long enough, it becomes impossible to innovate and improve. WitFoo never stops rocking and moving. While some may think Rock & Roll is reckless, it requires a ton of regimented discipline to deliver sustained hits.
A Good Label
As a rule, tech companies must raise money that come with strings and timelines attached. There is a limited amount of time to build a good product before the company is pushed into a frenzied growth tempo with nearly every eye on quarter over quarter growth. These tempos lead to short-cuts and compromises which stimy innovation. Additionally, there are several layers of oversight with differing motivations driving priorities.
WitFoo has benefited from not taking on that type of capital. We can focus on building what our customers need and have virtually no stress of arbitrary growth or revenue numbers. We’re not trying to exit, we are trying to deliver on our mission of delivering the tools and data our heroes need to mature the craft of cybersecurity operations. We are devoted to the success of our shareholders, customers and partners using sustainable approaches that enrich everyone while we collectively make the world a better place. Every great band needs a label that understands the vision and nurtures and supports it.
Solving problems with a small team is not always easy. It is often exhausting and terrifying. It confounds onlookers when you make audacious claims and flabbergasts them when you deliver on them. Some battles require a battalion of soldiers, others require a small, elite force. Beethoven is best heard by the Chicago Symphony Orchestra but no one can play Stairway to Heaven like Led Zeppelin. Alright, I got to get back to coding a new riff…