見出し画像

Vertical SaaS とカスタマイズ - コンフィギュレーションという選択肢

Vertical SaaS のプロダクト開発はいいぞ。

みなさん、こんにちは。
「物流の真価を開き、あらゆる産業を支える。」をミッションに掲げるアセンド株式会社でCTOを務めている丹羽(@niwa_takeru)です。今回の記事では Vertical SaaS 開発と切っても切り離せない個社カスタマイズ要望との向き合い方について整理していきます。


一般的に SaaS 開発では個社要望をいかに受けずに、抽象化された機能を展開することがプロダクト開発の肝であると考えられています。個社名が刻まれた if 文は技術的負債の発生要因としてよく挙げられます。一方で産業特化型の Vertical SaaS のような業務アプリケーションにおいては、プロダクトの顧客業務への業務適合は欠かせません。

今回は SaaS としての機能の抽象化から一歩踏み込んだ「コンフィギュレーション」という選択肢を紹介すると共に、プロダクトエンジニアとしての開発の面白さをお伝えしたいと思います。

なお本記事は #アセンド真夏のアドカレ 企画の一環です。いつも重めな記事ばかり書いてしまうので、比較的ライトな記事を書いてみようと思います。

SaaS において個社カスタマイズは悪か

まず前提として、SaaS(Software as a Service)の最大の魅力の一つは、標準化された機能を多くの顧客に迅速かつ効率的に提供できる点にあります。顧客側にとっては安価に使い勝手の良いサービスを享受でき、提供側にとっては単一プロダクトで迅速に市場展開できる、SaaS is beautiful と呼べる Win-Win なビジネスモデルです。

一方で、SaaS である前に、それが業務アプリケーションであり、業務に使えないプロダクトは利用されないことも事実です。特に Vertical SaaS では産業固有の課題を深く解くことが競合優位性であり、業界という TAM を取り切ることも欠かせません。プロダクトの顧客業務への適合のためには個社要望を叶える必要性があります。これは二律背反なのでしょうか?

私は SaaS でもカスタマイズ可能な領域は作っても良い、長期目線でプロダクト価値を築く重要な一手だと考えています。これを実現するのがコンフィギュレーションという選択肢です。

コンフィギュレーションという選択肢

SaaS における個社カスタマイズの課題に対象する1手が「コンフィギュレーション」になります。これは顧客ごとに個別対応の開発を行うのではなく、設定を変更することで顧客業務に適合できる機能を提供することを意味します。コンフィギュレーションにより、開発リソースを最小限に抑えながら、多様な顧客要望に対応できる仕組みを構築することができるようになります。

この考え方は Salesforce のアプローチから学びました。Salesforce は顧客自身または Salesforceパートナーが設定を変更し、高度なカスタマイズを実現する機能を提供しています。Salesforce のデータベースとしての基本的な価値の上に、顧客の業務適合という強い価値を生み出しています。これにより顧客の導入ハードルを下げると共に、アップセルも発生させています。

アセンドでのコンフィギュレーション事例

トラック運送会社向けのSaaSを展開するアセンドでは、複数の機能でコンフィギュレーションの選択肢をとっています。この背景には、運送業があらゆる産業の荷物を運ぶ機能を持っているが故の案件や業務の多様さがあること、運送会社は日本で最もデジタル化の遅れた産業が故のアナログ業務の多様さがあります。

勤怠ダッシュボード機能

コンフィギュレーションの事例として、まず分かりやすいのはデータ可視化のダッシュボード画面です。2024年問題を迎えたトラック運送会社ですが、労務管理のために個社ごとに違反しやすい労務指標を見る必要があり、カスタマイズの要望があります。これに対して各指標ごとにリスト表示・グラフ表示を用意し、顧客がコンポーネントを自由に配置できる機能を提供しています。

労務ダッシュボード機能

柔軟なエクセル帳票の出力機構

日本の BtoB SaaS で切り離せないのはエクセルではないでしょうか…。アナログで長年業務を続けてきたトラック運送会社にも多様なエクセル帳票があります。この多様さから、アセンドでは帳票の個別開発は早期にやめ、柔軟た帳票出力エンジンを作成しました。具体的にはカスタマーサクセスがエクセルに出力パラメータを埋め込んでフォーマットを作成する形で対応しています。ある意味でカスタマーサクセスが個社要望を叶える機能を開発している状態といえます。

運送案件の項目制御機能

トラック運送会社の運送案件は多様さの塊であり、野菜・機械部品・ガソリンなど質量も物質状態も異なるもの、長距離・中継輸送・地場ルート配送など運び方も多様です。これの吸収のために、案件を自由にカスタマイズして設定できる機能を開発し運用しています。標準化されたデータモデルの中で、利用する案件項目を顧客の要望を聴きながら設定をしています。
これがアセンドが提供するコンフィギュレーションの中で最も大きく複雑性はあるが重要な機能となっています。

運送案件の項目制御機能

コンフィギュレーションの要点

SaaSの業務適合を実現するコンフィギュレーションですが、もちろん実現の難易度は非常に高くあります。技術的なプロダクト開発の難易度や、実際にコンフィギュレーション工数を誰が持ち最小化させるかビジネスモデル的な課題があります。

プログラムを作るプログラム:メタプログラミング

メタプログラミングは、Google Form を思い浮かべてもらえると分かりやすいと思います。ユーザーは自由に使いたい設問とその種類(フリーテキスト・選択形式など)を選び、並び順を変更し、フォームという個別開発を実現することができます。

アセンドでメタプログラミングをフルに活用しているのが、運送案件の項目制御機能になります。このメタプログラミングに関する技術記事を書こうとすると1万文字があっても足りないくらいなので、いつか書きたい別記事に委ねます。技術的なメタプロの面白さを1つ言うと、制御対象の項目1つ1つの振る舞いを抽象化するプログラミングの集大成的な開発となります。

エンジニアによる個別開発から、カスタマーサクセス/顧客による設定へのシフト

スタートアップで難易度の高いコンフィギュレーション機能を初期から開発することは難しくありますが、適切な経路を辿ることで実現できます。個別開発か顧客設定かの2択と考えるのではなく、徐々にコンフィギュレーション機能を洗練化していくことです。

初期のカスタム機能は設定ミスが致命的となるため、エンジニアが要望を受けて設定を行っています。次に、設定画面のUX的な使いやすさを作ることも難しいためCS(カスタマーサクセス)による設定に変更します。そして、機能と画面が磨かれた末に顧客に設定機能を開放していきます。(もちろん顧客のITスキルによって開放しないこともありえます。)

  • コンフィギュレーション担当のエンジニア→CS→顧客へのシフト

  • コンフィギュレーションを民主化するUX向上と工数削減

コンフィギュレーションはやらない時はやらない。

ここまでコンフィギュレーションの必要性はお伝えしましたが、やはり難易度は非常に高いため、やらない時はやらないことが重要です。特に以下の観点が解消されない限りはコンフィギュレーション機能には踏み出さないことが重要であり、アセンドもいくつかのケースにおいて以下が起因で課題を産んでいることも確かにあります。

  • 多くの顧客にとってプロダクトの導入障壁となること

  • 最終的に顧客側での設定が可能となる、または提供側の設定時に追加課金がしうる、この道筋が見通せること

Vertical SaaS のプロダクト開発はいいぞ。

業界特化型であるが故に、多様な顧客要望に向き合うことは宿命づけられています。一般的なSaaSの抽象的機能と比較して、コンフィギュレーションという数歩踏み込んだ機能開発が求められるのは Vertical SaaS ならではと思います。機能開発の難易度は高いが、これによって顧客課題を深く解くことで
きます。

コンフィギュレーションサービスへの移行はアプリケーションエンジニアにとって非常に挑戦的であり醍醐味が詰まっていると考えています。またこれらのプロセスを通じて、顧客に最大の価値を提供し、同時に持続可能な機能開発を実現することはプロダクトエンジニア冥利でもあると思います。

以上に高い難易度の開発を魅力的に思ったプロダクトエンジニアの方、ぜひともに物流の社会課題解決に挑みましょう!(また、他にも難易度が低い機能も当然あるので、少しでも関心を持たれた方よろしくお願いいたします!)

■ リードプロダクトエンジニアの求人はこちら。

■ カジュアル面談はこちら。
 CTO丹羽がお話ししますのでどうぞお気軽にお申し込みください!

■ CTO 丹羽のSNSはこちら。


この記事が気に入ったらサポートをしてみませんか?