レイヤ数を多くしてセキュリティ保持
--運用以外でどんなところに注力しているか。
できるだけ早くしっかりとしたプロダクトを提供することです。そのため、開発者が開発しやすい環境を常に意識しています。もちろん人間でしかできないことはあるため、それ以外を半自動で回すことを考えています。品質担保やテストをできるだけ自動で回すなど、そういうところは積極的に会社として時間をかけています。
具体的には、例えばツールです。エンジニアがコードを書いたとき、それを本番システムにリリースする前にチームで作ったものをマージし、テスト環境を構築するツールを活用しています。たとえば「GitLab」などですね。ツールもどんどん進化していますので、最新版を早く社内に展開しています。開発を早くしたり楽にするためにも、ツール面の整備はよくやっています。
また、コミュニケーションツールも重視しています。現在は開発と連携できるようなチャットツールもあり、半自動で運用できます。ある状態になったら自動でつぶやいてくれるので、それを見て人間同士がコミュニケーションしていきます。それがまたシステムに自動反映されていきます。チャットツールはそれぞれ特長があるので、いくつか使って比較しています。
全社的には「チャットワーク」を使っていて、エンジニアには「HipChat」が好評です。それぞれ特徴が違うので、それぞれ使いやすいものを使えばいいと思っています。開発やモノ作りをしていく上でのフローに直結するところなので、そこで人との繁雑なコミュニケーションするよりは、チャットをハブとして使うことでいろいろなものがうまく回ります。
--センシティブな情報を扱う上でのセキュリティや方針とは。
具体的なことは言えませんが、前職、前々職で金融機関でエンドユーザー向けにシステムを提供する部分でセキュリティの設計や実装、運用をさんざんやっていました。そこでやっていたセキュリティの手法は踏襲しています。スタートアップでアプリケーションエンジニアが数人で使いやすいアプリを作りましたというような会社やサービスに比べると、ベースとなる安心さ、しっかり作って運用しているというところは、これまでの仕事以上にやっています。
システムのアーキテクチャとしては、例えばウェブのレスポンスが多少遅くなっても、サービス用ネットワークの階層構造をなるべく増やして、さらにその中にファイアウォール的なものを何層も入れています。ユーザーにとっては若干ウェブレスポンスが遅くなりますが、そこを犠牲にしてもセキュリティをしっかりガードして壁を厚く、レイヤ数も多くという観点でシステムのデザインをしています。
また、データの保存箇所も1カ所ではなく、データをセキュリティ観点での重要度でランク付けをして重要であるものとそうでないもの、いくつかグループ分けし、レベルに合わせて管理の仕方も変えています。特に守らなければならないものは最上級の取り扱いをしています。そこにアクセスできる人間は、社内でも数人程度です。
システム概要 ネットワークレイヤごとに通過制限をかける
--意思決定に役立てているツールはあるか。
基本的には、ユーザーがどう動くかがすべてなので、(システムではないが)自社のユーザー分析です。提供したものに対してユーザーが100%でなくても使っていただいたか、思った通りに使ったかをチェックしています。思った通りに使ってもらえてないものは考え方が正しくないわけです。ユーザーの動きは常に正しいですから。それを判断材料にすることを第一にしています。アプリのリリースは週に2回としていますので、それに合わせて機能追加や修正などを反映しています。
--今後の展望は。
法人向けのサービスが売り上げの柱になるよう、しっかり伸ばしていきたいと考えています。今後さらに機能を追加していき、トータルパッケージも提供して売り上げをしっかり増やしていきたいと思います。それはコンシューマー向けも同様です。その中でビジネスの制約にならないよう、先回りしてシステムをしっかり作っていくことに注力していきます。