Is the deck stacked against your startup business? It depends on how you decide to arrange the cards.
The full-stack approach
Thanks to Chris Dixon of BuzzFeed, we have yet another business neologism, the "full-stack startup approach." The objective of this approach is to control the customer experience using all the channel(s) required to deliver it. Instead of inventing a widget and selling that technology to another business to bundle with their product or service, you sell it directly to your customers, sometimes in your own bundle.
The challenge is that you have to be good at a lot of things: software, hardware, supply chain management, design, marketing and anything else that goes into making, selling and distributing a product. Manage that and you essentially lock out competitors who can't replicate all these interlocking pieces.
Steve Jobs was right
Dixon cites Apple as a classic example of the full-stack approach. By contrast, Microsoft builds only portions of the stack. Back in the 1990s, Microsoft dominated business and consumer markets just by making an operating system and applications software. During that era, Apple was widely criticized for not emulating Microsoft's cornerstone strategy to license its software to other hardware vendors.
Apple has had the last laugh with last-quarter profits of $18 billion, the largest ever recorded by a public company, and cash reserves sufficient to buy the equivalent of every American at a price of $556. Dixon attributes such success with Apple's ability to create a "magical experience" for its customers by building products from end to end in a way that completely bypasses the competition.
Examples of startups using the full-stack approach include ride-sharing companies Uber and Lyft, Nest and Tesla, not to mention Dixon's own BuzzFeed, which recently obtained $50 million in financing from Andreessen Horowitz to expand its own full stack. (The New York Observer comments, "For its next trick, we expect BuzzFeed will work on colonizing Mars.")
Full stack means full customer experience
Full stacking seems to be limited to high-tech companies and should not be confused with traditional notions of vertical integration used by "old-style" manufacturers. The difference is the focus on the customer experience. In vertical integration, a manufacturer or producer contracts with suppliers to reduce production costs and improve efficiencies. The customer may get a better product, or a more affordable product, but it doesn't provide the entire customer experience.
Full stack means that a tech company is building that experience from the ground up and using nontech functions, such as unique retail stores or independent drivers, to deliver the tech. Uber isn't merely an app, it's a new kind of taxi service.
Industry segments that are ripe for full-stack approaches include education, healthcare, food, transportation and financial services. All are sectors where prices have outpaced inflation, which Dixon believes is the result of lack of technology. If you have a technology that can help bring down pricing models in these sectors, the full-stack approach may be your best approach.
For those who may be skeptical of what might be seen as just a trendy phrase, Anshu Sharma points to a number of companies over the last 20 years that essentially were full-stack companies before Dixon came up with the term. These include Netflix, Amazon, YouTube, eBay and Google.
Tips on developing a full-stack startup
The process of getting into the web development industry is a fairly easy task; however, the process of being a full-stack developer may not be the right path for everyone. Taking the road to being a full-stack developer means you'll need to know everything there is to know about front-end technologies as well as the back-end technologies. Here are some tips to help you become the ultimate full-stack developer.
Area of focus
Although full-stack means learning everything there is to know in regards to web development and then some, one of the most important tips to remember is that it's equally important that you find your niche.
Perfect each step along the way
As a full-stack developer, you will need to be completely comfortable with both the front and back end of software development. The process of perfecting your skill is similar to when you were in grade school; in other words, once you have a clear understanding of the fundamentals, the rest is easier.
Begin at the basic level and continue to strengthen your knowledge on the basics. Iron out all of the kinks and expand from there. To test your skills, create basic pages, identify your mistakes and recognize what you can do to perfect the task before moving on to the next step.
Once you have a good understanding about networks, servers, data structures, hosting environments, databases, algorithms and programming languages, you can then move up in your stack. It's not simply about knowing the individual pieces of information, but being able to connect the dots.
As a full-stack developer, it's essential to keep in mind that although you must be a jack-of-all-trades, it's critical that you are the king of one. In other words, don't try to master everything at once you need to get comfortable with your knowledge on the individual pieces in order to be comfortable with the full "puzzle."
Working with all of the important technologies until you fully grasp the concept can allow your comfort level to improve with each new piece of information. Once you have a good grasp of what's required, it's time to create a good quality product, one that provides an easy, user-friendly experience.
Do not lose focus on what the end product should look like; it must serve the primary purpose that it was designed for. If you have focus, in other words, you can feel, see and experience the end product, then working toward it will become easier.