Software-based businesses come in many different sizes and shapes: SaaS or cloud-based, mobile, open-sourced, consumer, SMB and Enterprise, etc, etc. Even many successful “hardware” companies could really be viewed as software companies, as they are in fact driven primarily on novel software or firmware under the hood. With the diversity of form factors, it’s very hard to generalize what makes a great software company.
But I believe that there are some common factors among the great ones. It’s much easier of course, to take a look at successful companies and work backwards in a postmortem fashion. The problem with this approach is that you tend to see a lot of “revisionist history” utilized when folks tell the story of what made a company successful.
Institutional technology investors have their own pretty well documented list; in general it goes something like this:
- Strong Management Team with relevant experience in the space
- Distinct competitive advantage, usually via breakthrough, defensible technology
- Product/Service that addresses a serious pain point felt by the target customer
- Large market opportunity
You’ll see various flavors of the above list and ordered in a variety of ways, but I think this is a pretty good representation of what VCs and other investors say they look for before they’ll write a big check. When discussing what makes great companies, there’s no doubt in my mind that the list above is valid and important. But I think it’s also incomplete. Here’s a few criteria of my own that I would add:
Management team chemistry
I’ve seen a whole bunch of management teams that looked like a great group on paper from a skills/experience viewpoint. But in practice they couldn’t work together for a variety of reasons: excessive competitiveness, selfishness, incompatible personalities and different communication styles are a few common reasons. As an example, I often see hard-driving CEOs with Type-A personalities who hire exclusively in his/her own image. The resulting management team often resembles a pack of hungry dogs fighting over a single piece of meat, with everyone fighting to be in the lead. Putting together a management team with good chemistry and mutual respect is more art than science and requires a leader with refined sensibilities in the “softer” aspects of management practice.
Lack of management arrogance and openness to learning
Management arrogance can be a big problem that you find with people that perceive themselves as very successful. Sometimes they start to believe their own headlines and think they have all the answers. The problem is that when leading a software company the certain answers of yesterday can be the disastrous strategies of tomorrow, as software markets change so rapidly. I find that most leaders who are able to take their companies to greatness are not so full of themselves that they won’t listen to other internal and external voices. This is an attribute that enables management to navigate the treacherous road up the software industry food chain and raises the odds of taking a software business all the way to the top. Of course there are some famous leaders of large software companies that don’t fit this description–but I believe they are exceptions to the rule.
Realistic self-evaluation at every stage of development
To maximize the potential of a company to reach greatness, it’s important that once you’ve had some success you don’t get become over-enamored with it, or over/underestimate what more is possible. At every stage of a company’s development the financial resources, personnel resources and realities of your market dictate what’s “possible” going forward. It’s sometime very hard to self evaluate where you’re really at as a company; some people are natural optimists and others pessimists. I’ve always felt that a little bit of marketplace paranoia is healthy in a management team. But the closer you can get to “reality” in your evaluation of what’s really possible, the more likely you will be to optimize that next step and keep moving forward on that long path to greatness.
Positive overall company culture
I believe that this may be the most important factor of all when it comes to a path to true greatness. There’s an old American football saying that “it’s not about the X’s and O’s, it’s about the Jimmy’s and Joes”. For those of you who aren’t sports fans, it’s just a funny way of saying that coaching (management) can only do so much; it’s the players (company staff) you recruit that really make it happen. In my opinion, this is very, very true and means that getting the best people possible really makes the difference in how successful a company will ultimately be. What is the biggest factor that allows you to recruit great people? In the long run, it’s a positive company culture that the current employees really feel good about, which allows you to recruit great new people.
Those are my thoughts on what it takes to have a GREAT–not just good–software company. What would you remove or add to the list? Leave a comment below with your own criteria for software industry greatness.
Follow Phil Morettini and Morettini on Management via Twitter, Facebook, LinkedIn, RSS, or the PJM Consulting Quarterly Newsletter. Contact Phil directly at info@pjmconsult.com
Some can be deceived in thinking they are on a great team if they only hear what people think they want to hear. Type A’s are lied to and sucked up to more often than not because of fear in having a different opinion. Type A’s have to learn to take open and honest criticism and surround themselves with really open honest people that are technically savvy but believe in team over themselves. Honesty and transparency in leadership will take you much further than bullshit.
Great Article Phil! However, too often I see people like you analyze this solely from a financial point of view. With this statement “…VCs and other investors say they look for before they’ll write a big check…” you seem to imply a GREAT software company is only one that achieves big financial success and not one that withstands the test of time providing its owners and employees with a lifetime of intellectual fulfillness and happiness.
Unlike you, I do not feel VCs are particularly good candidates to describe how GREAT a software company is but rather how good it can be for their investments. By the same token, addressing a large market does not gauge how relevant a software company and its people can be. This to me, is also a monetary perspective that is relevant to those who want to invest in the company.
Software people have to renew their skills, reinvent themselves and adapt at an incredible pace which makes our profession uniquely challenging and rewarding and, in my opinion, a GREAT software company is formed by those individuals who are motivated by this thirst for knowledge and perpetual change, regardless of the amount of money that can be amassed in the process.
P.S. I could not agree with you more on “getting the best people possible really makes the difference in how successful a company will ultimately be…”
Your blog is really informative. Your blog benefited me. By the way, built the great software company I think, you need morale and a skilled, strong team.