SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【デブサミ2018 夏】セッションレポート(AD)

アーキテクチャを抜本的に見直し、Cassandra × Kubernetesによる大規模データ基盤を構築【デブサミ2018 夏】

【C-6】Cassandra x Kubernetesによる大規模データ基盤の仕組みと苦労

  • このエントリーをはてなブックマークに追加

システムを刷新するならば「開発体制も共に変えるべきだ」

 データベースを改善した後、彼らが次に手をつけたのはアプリケーション側のアーキテクチャ変更だった。データベースがどれほどスケールアウトできたとしても、アプリケーションが処理のボトルネックとなっては全体のパフォーマンスが向上しないためだ。では、こちらはどんな基準で新しいツールを選定していったのだろうか。

 基準となったのは、まず開発・運用やスケールアウトが容易であること。同社のアプリケーションは複数のサブシステムに分かれており、以前はインスタンスグループの管理や内部接続用のロードバランサの管理などが煩雑となっていた。そのデメリットを解消したかったという。

 次に、クラウド環境でなくても動くツールであること。ブロードリーフでは自社内開発だけではなく協力会社への業務委託も行っている。他社に対し、クラウド環境を使用することを強要すべきではないと考えたからだ。これらの条件を満たすものとして、Kubernetesを採用した。

GCP x Kubernetesでスケールも容易に
GCP x Kubernetesでスケールも容易に

 「これで、データベースもアプリケーションもスケールアウトするようになりました。何事も問題なく進んだかといえば、そうではありません。次は人がスケールしないのです」

 理想はサービスごとにチームを作っていくこと、つまり各チームがオーナーシップを持ち、スピード感を持ってリリースできる開発スタイルを採用する方式だ。しかし、現実はそうならなかった。自動車アフターマーケットを構成している業者ごとに管理体制が構築されていた。つまり、同一サービスのなかでもチームが細分化されていたということだ。

 その結果、コミュニケーションや成果物の管理が非常に煩雑になっていった。しかも、その全ての仲介をしているブロードリーフがボトルネックとなってなかなか開発速度が上がらなかった。

 さらに、他にも課題があった。必ずしも最新技術に詳しい協力会社だけではないため、新しく導入したツールについての説明が必要だったのだ。「この体制をより良いものにしていく必要がありました」と松本氏は続ける。

 システムアーキテクチャだけを改善しても、開発は円滑に進まない。開発プロセスやチームの体制なども含めて変えていかなければ、生産性の高い組織は実現しないのだ。ブロードリーフのエンジニアたちは、コミュニケーションのあり方を変えていったという。

 最初のうちは、JIRAによるチケット管理でコミュニケーションを行っていたが、より気軽にコミュニケーションを取れるようにSlackを導入した。また、社内で使用していたConfluenceページを全ての協力会社と共有した。そうすることで、よりスピーディーなコミュニケーションと情報の蓄積を行っていったそうだ。

 「最初はデータの基盤を変えていこうとプロジェクトを推進したのですが、その過程でアプリケーションやインフラのあり方、コミュニケーションのあり方すらも変えていきました。それらを改善しなければ、新しいサービスをうまく開発することはできません。このプロジェクトではデータを中心に物事を考えていきましたが、理想のアーキテクチャを実現するにはデータ以外にも数多くの知識が必要になりました。この経験から、システムや組織が成長し続けていくには、それを支えるエンジニアが変化を受け入れ、新技術を積極的に学んでいくことが重要だと実感しました」

 では、その姿勢を持つエンジニアになるためには何が必要なのか。それは、「変化を楽しく受け入れる」ことであると松本氏は結んだ。

 「技術の進化スピードは本当に速いです。新しいことを学ぶのは嫌だ、ついていけないから仕事がつらいと思えば、負のスパイラルに陥ってしまいます。だからこそ、新しい技術に対してポジティブな気持ちで向き合えることが何よりも大事なのだと考えています」

お問い合わせ

 株式会社ブロードリーフ

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
【デブサミ2018 夏】セッションレポート連載記事一覧

もっと読む

この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/11025 2018/08/28 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング