【15-D-7】 02/15 16:20 ~ 17:05
タウンワーク90万原稿の掲載を支えるレガシーバッチパフォーマンスチューニング

10年以上に渡り維持・保守開発を続けられてきたタウンワークのバッチは巨大かつ複雑に絡み合った相互依存性の強いシステムになっていました。
これにより、バッチ改修における影響範囲も非常に見にくい、いわゆる「レガシーコード」になっていました。
そんな中において、全体の見通しが悪いが故に、コードレベル、テーブルレベル、バッチレベルで「影響範囲」が閉じるように中間テーブルや類似処理の複製を新しく「追加」したくなる心理バイアスがエンジニアに働き、結果的に更に複雑度が増すという負のスパイラルに陥っていました。
しかしながら、ビジネスの成長に伴い、原稿数は増加し、掲載バッチ処理時間は徐々に伸びて行き、事業継続リスクを孕んでいました。サブシステム内に閉じた対応は毎年を行っていたものの局所的な対応では対応しきれなくなっており根本的な対応が求められていました。
一般論的にはバッチの「再構築」や「アーキテクチャー刷新」という手法を取りがちですが、約1000本のバッチ群の単純な作り直しは現実味がありませんでした。
本セッションは、システム全体の視点に立ち返りなにが出来るか模索し泥臭く取り組んだ組織全体でのパフォーマンスチューニングの取り組み事例の紹介になります。

本セッション枠は、株式会社リクルート様より提供させていただきます。

森廣 隆行[リクルートテクノロジーズ]

株式会社リクルートテクノロジーズ
ITエンジニアリング本部 プロダクトエンジニアリング部 リクルートジョブズグループ

SIerで金融系業務システム運用保守開発を5年、ナビゲーションアプリ会社にて自社サービスの開発を5年経て株式会社リクルートテクノロジーズに2015年入社。リクルートジョブズが運営するタウンワーク、フロム・エーナビ、はたらいくなどのテックリードとしてサービス品質を支えている。趣味はゲーム。会社公認サークルモンハン部部長。その活動がゲーム雑誌に載ったのが自慢。