Webサービスの開発・運用に携わる者なら、管理機能の重要性について深く認識していることでしょう。ユーザーアカウント管理、システム設定、トラブルシューティング、レポート機能など、管理機能はサービスを安全かつ効率的に運用するための不可欠なツールです。
しかし、新規事業やスタートアップではユーザーに迅速に価値を提供し、ビジネスを軌道に乗せることが最優先されます。その結果、管理機能の開発は後回しになり、対ユーザー向けの機能を先にリリースして運用を始めてから管理機能を追加する、という開発ロードマップが多く見られます。このようなケースはままあるものの、管理機能追加の際に選ばれるアーキテクチャパターンについては十分に語られていないと感じています。
このセッションでは、単なるgem選定を超えて、管理画面や管理機能を後から追加する際のアーキテクチャパターンを深堀りします。それぞれの選択肢のメリットとデメリットを比較し、選択の視点を提供します。また、私が運用しているRailsアプリケーションでの管理機能設計の選択とその理由に加え、運用から得られた知見―特に監視やプロセス管理などのトピック―にも焦点を当てます。このセッションを通じて、管理機能設計と運用に対する理解と視野が広がれば幸いです。