やがて、このシステムアーキテクチャの考え方はソフトウェアにも適用された。1990年代までに、開発者はソフトウェアを「情報を格納するデータベース層」「計算を行うアプリケーション層」「ユーザーに情報を提示するインターフェース層」の多層構造として捉えるようになった。
あるエンジニアは特定のレイヤーの専門家になった。別のエンジニアは「フルスタック・エンジニア」と自認し、複数のレイヤーにまたがって仕事ができるタイプの人材になった。
この思考様式は、テクノロジー企業が戦略に取り組む方法を形作ってきた。どこで勝負するかを考える際、彼らはスタックの中で自社が占める位置を特定する。そして、自社のレイヤーが他のレイヤーとどう接続するか、あるいは他のレイヤーを不要にしてしまうかを考える。
テック業界以外の企業は、戦略へのアプローチが異なる傾向がある。どこで勝負するかを検討するとき、彼らは「新市場」「新たな顧客セグメント」「新カテゴリー」を考える。非テック企業がスタックを吟味することに最も近いのは、バリューチェーンのどこで勝負するかを考えるときだ。そして「フルチェーンのプレイヤー」になろうとすることはほとんどない。現実世界のバリューチェーンは、まったく異なる領域や能力にまたがることが多いからだ。露天掘りによるグラファイト(黒鉛)の採掘ノウハウと、それを使った鉛筆の販売とでは、ビジネスとしての距離があまりに大きい。
Amazonなどのテック企業は、別の前提で動く。彼らにとって、産業の境界は固定されたものではない。設計上の選択にすぎない。システムが本来あるべきほど機能していないなら、問うべきはその中での自社の位置をどう最適化するかではない。システムそのものを作り替えるべきかどうかである。
Amazonは小売業者として始まったが、品揃えを拡大するために素早くマーケットプレイスを構築した。他社に依存すると速度と信頼性が制約されるため、フルフィルメントにも投資した。「ラストワンマイル(最終目的地への配送)」に乗り出したのも同じ理由だ。各ステップはシステム内部の問題解決のために動き出し、興味深いことに、その多くはスタック上の他のプレイヤーにも価値を提供した。
このように、外から見れば拡張に見えることも内側からは必要性として感じられることが多い。企業は制約に次々と直面し、それを回避するのではなく置き換えていく。時間の経過とともに、その結果としてスタックのより多くのレイヤーを引き受けるようになる。アップルが自社直営店(Apple Store)を立ち上げたのは、当時米家電量販大手のCompUSAで自社製品が十分に優遇されなかったからだ。その発想を論理的に突き詰め、同社はいまやプロセッサを設計し、スマートフォンをつくり、ソフトウェアを開発し、アプリを販売し、製品を流通させ、小売店舗を運営している。


