How Startup Engineering Teams Generate Positive and Negative Value
There is something special about building a solution from scratch. Like most software engineers I tend to get excited about the technology. This excitement often leads to an acute case of SSPS (solution in search of a problem syndrome). SSPS has led many-a-team into the valley of irrelevance. A place that you don’t want to be especially when operating in a startup environment. How then can you avoid this death trap?
The Engineering Value Matrix
A critical skill that every engineer needs to learn is understanding the value of something. A simple definition of value is the usefulness of something. But, in our context value can be better explained using the engineering value matrix.
This matrix comprises four quadrants. The first quadrant constitutes positive value that is visible to the customer. The second quadrant includes the negative value that is visible to the customer. The third quadrant contains the positive value that is invisible to the customer. While, the fourth and last quadrant amounts to the negative value that is invisible to the customer. What does this all mean in the day-to-day life of an engineering team?
1. Positive & Visible Value
Let’s start with understanding the first quadrant. The first quadrant comprises positive value that is visible to the customer, and this quadrant speaks to the core reason why businesses exist in the first place. That reason is often to provide a product or service that a customer is willing to pay for. Notice the two key concepts “Product or Service” and “Pay For” — two concepts translate into features and cost. When the customer is evaluating your product or service, the first question they usually ask is:
Does this product or service have the features to help me achieve my objectives?
The second question the customer will ask is this.
Are there any cheaper options that can help me to achieve my objectives?
The first quadrant is how your engineering team generates the most relevant value, and positive customer visible value is often described as the technology value stream. Optimizing the flow of the stream should be part of your team’s north star statement, and you should be able to get a hypothesis from the business. Synthesize that hypothesis into a feature. Put that feature into the hands of the customer as fast as possible. Then provide customer-feature interaction data to prove or disprove the hypothesis — too many engineering teams miss the last step. Missing the last step is akin to sailing a rudderless ship and can often result in losing direction and relevance. In a startup environment, the result of this can be catastrophic. Stop being irrelevant!
2. Negative & Visible Value
Negative value that is visible to the customer forms the second quadrant of the engineering value matrix. This negative value comes about as customers detect defects within your features, which usually results in startups stopping everything else.
It’s amazing how fast engineering teams transform into firefighters. There is nothing wrong with firefighting but you can’t firefight all the time. It’s not sustainable. A firefighting environment is one of the best ways to lose customers and talent, and I’ve seen so many engineering teams stuck in this vicious firefighting cycle. How then can one escape this cycle and still remain relevant within the business? The answer lies in understanding the last quadrants of the engineering value matrix.
3. Positive & Invisible Value
Our third quadrant contains positive value that is invisible to the customer. Engineering teams generate this type of value in three ways. These include building software architecture, satisfying non-functional requirements, and process improvements. Architecture forms the foundation of a startup’s product or service offering. Non-functional requirements include aspects such as performance, scalability, and maintainability of the architecture. Whilst process improvements talk to ways of work and tooling geared to optimize the flow of work. For you to win in this quadrant, testing and automation need to be your best friends. You as the engineering team have to drive the testing and automation initiative — don’t expect the business to lead because of this quadrant’s “invisible” characteristic. What is invisible to the customer can sometimes be invisible to the rest of your business.
Test Coverage (150%)
Before we move on to the fourth quadrant, let’s chat a bit about testing and automation. Testing is how you build intrinsic value within your codebase and architecture. Many will say, “But, we don’t have time for testing”. You should know that one hour spent on testing can translate to a saving of three to four hours on bug fixing. For your engineering team to win, they need to be passionate about testing. Testing may be invisible to the customer and business, but the effects of not having it are very visible.
I Need To Automate Eveeerything
To enable automation within your engineering team, you need great tooling. Always select your tools using the perspective of optimizing your technology value stream, as this tooling covers design, development, and deployment. Select tools that reduce the hardship of transferring work between workstreams. Once you start reducing hardship within your team, the flow of work increases.
4. Negative & Invisible Value
The fourth quadrant constitutes the negative value that is invisible to the customer. What makes up this quadrant can bring any startup to a grinding halt. Like a zombie that keeps coming to life, so is technical debt.
Technical debt is the collection of short-term compromises that a team makes when building a product. It comes in two flavours — intentional and unintentional. Managing technical debt can be tricky because of the following. It can be invisible to the customer, business, and the engineering team. Technical debt always needs to get paid-off. If your team doesn’t manage it well, you will end up paying it off at the worst time possible. A great example is the popular social network behemoth, LinkedIn. The LinkedIn team experienced a 3-month feature implementation freeze after IPO. Why? Because of technical debt. How then can your engineering team manage technical debt?
“The best approach to managing technical debt is by not collecting it in the first place.”
Pay Me My Money
Many engineering teams collect technical debt that is avoidable. This avoidable debt comes from using the wrong tools for the job. It’s critical to always be on the lookout for upcoming industry tools that assist in this area of concern. When you can’t avoid technical debt, the best that you can do is manage it. Managing technical debt means being aware of it. Ensure that you have your debt list within your product backlog. This will go a long way in allocating time for your team to re-architect, re-write, or re-factor.
Summary
At Founders Factory Africa we assist startup founders and their teams across Africa to understand the dynamics of the engineering value matrix. We also go a long way in helping teams select the correct tooling to ensure optimal flow of work through the technology value stream. There is no excuse for any engineering team to continue walking through the valley of irrelevance.
Start being relevant, start generating real value.