I used to be a mobile Internet entrepreneur and now do software venture capital. One problem I often encounter in my work is how to measure the technical threshold of a product. I have abstractly developed a methodology for measuring technical thresholds. This framework is best suited for software products, which is the area I’m most familiar with. But this framework is also partially applicable to hardware products such as chips, medical devices, consumer electronics, and robots.

Start with a definition of the technology threshold. If a competitor wants to make a product that looks exactly like ours, what kind of people will they hire? What difficulties he had to overcome, what pitfalls he had to step into, what work he had to do; How much money and how much time it takes to build this product. The process of reproducing a product often reflects the technical threshold of a product.

This is, of course, a narrow definition of a technical threshold. Because a competitor can reproduce all the technical aspects of a product and not necessarily deliver the same product experience. In addition to the technical aspects, there are often many other determinants of product experience: data precipitation in the product, the improvement of the algorithm and model by the data, for example, the same short video recommendation, you may not be as accurate as the headline; The network effect generated in the process of mass user use of the product, such as a duplicate QQ, but without user use and social relations in the early stage, it could not be cold started; The influence of brand and price on users’ mentality, for example, the effect of famous teachers in educational products will be better transformed into payment, and the effect of education will also be more recognized by users. There is no doubt that these factors are the competition threshold of the company, and even in the long run, they are more important core competitiveness than pure technical threshold. But this article will focus more on the pure technology threshold itself, which is the most important step for many startups to go from zero to one.


The technical threshold for most products consists of three aspects: System Design, Engineering, and Know-How.

System design refers to the architecture design of the system, as well as its macro technical decisions. Software system design is the abstraction of complex things, better design represents a more beautiful product experience and faster product development. For example, if we want to design a SaaS product for medical clinical trial, we need to abstract all participants, processes and policies in the whole clinical trial to form a system model and a data model. This kind of system design not only needs the designer to know the industry very well, know the meaning behind the various requirements, but also needs the designer to have very experience in system design. Good system design can be adapted to more requirements, and can be more easily extended in the later stage.

In complex system design, many factors are usually considered together to make a trade off. It is often said that there is no perfect system, because many factors are interdependent and satisfying A will sacrifice B. Therefore, the biggest test of architecture design is to deal with many mutually restrictive factors at the same time. It is a vivid metaphor to press the gourd to play a gourd. Second, the product needs to have a deep understanding and forecast. The product defines the most important usage scenarios, which are first met when designing the system. At the same time, the product designer should also consider the possible development direction of the product in the future and put the scalability into the consideration of the system design in advance. System design and product design are completed simultaneously, to find the appropriate product positioning, what to do and what not to do, and what changes will take place in the future market. All the best system designers often work with product managers who are best able to understand and anticipate requirements, or both together.

The threshold to engineering realization first comes from the amount of work in the project, which in software engineering terms is man-months. For example, very complex software such as Office, Staple, and Database requires a large team of engineers to do very long development. The second is the scarcity of engineers needed to develop the software. The implementation of complex systems and algorithms often requires very skilled engineers, and you can’t just recruit engineers to do it.

Know-how refers to an algorithm, a trick, or an industry insight. Know-how thresholds are essentially cognitive scarcity. The perception of scarcity is often a feature of something as it emerges, such as a new AI algorithm, a new way of operating and maintaining. When new technology appears, relatively few people master it, so there is a high cognitive threshold. Such knowledge scarcity tends to have a window of time, as knowledge spreads from the best technical teams to the wider population over time. For example, deep learning was very scarce before 2015. After 2020, it has even become surplus in first-tier companies, but it is still scarce in second – and third-tier companies and traditional industries.

Software development has many skill areas, and some of them are technical areas that few engineers have mastered. This is also a form of know-how. Usually, the closer the software is to the underlying and hardware, the scarcer its engineers are. For example, compilers, operating system kernels, graphics and graphics, they are relatively deep in the field, in the market with these skills of engineers are very scarce. A software project that requires scarce technical capabilities is clearly a higher hurdle.


Among all kinds of software products, Infrastructure software is a kind of high threshold software that I like very much. Because they tend to be very complex systems, such as storage systems and databases. These systems involve a lot of complex algorithms and mechanisms, both the algorithm know-how and the system design threshold. Many of the core systems of the underlying software do not require a particularly large technical team in the early days, but do require high levels of skill from the early members. Even at large companies, it’s hard to speed up core development of basic software with big teams and big budgets. Therefore, if a start-up company can gather about ten high-level engineers, it will basically compete on an equal footing with large companies in core software development.

Some software that is closer to the hardware has a high barrier to entry. For example, the software of the smart network card, because the talent of FPGA is relatively scarce, the talent who has done the network card is also very few.

Industry application of SaaS also has considerable technical barriers. Industry SaaS design needs to combine industry know-how to do a very good system design. In addition, many industry designs have very rich functions, which are also the accumulation of engineering workload.


This is my framework for measuring the technical threshold of a software product. There are bound to be shortfalls. Welcome to exchange and discuss.