株式会社カカクコム
システムの変更容易性・変更安全性を高めるための、モダンなシステム基盤を開発・導入することがミッションになります。
・新たに必要になるシステム基盤開発の検証・導入・運用
・既存のシステム基盤の導入拡大
これまで導入してきた基盤には以下のようなものがあります。
・メッセージング基盤 + 非同期処理基盤 (Kafka)
・分散トレーシング (OpenTelemetry)
・Change Data Capture (Debezium)
・GraphQL (Apollo)
【ミッションへの道のり】
食べログは2007年に Ruby on Rails でリプレイスして以来、約15年の長期に渡り抜本的なアーキテクチャ刷新なしに開発と運用を継続しており、モノリシックで巨大なコード、かつ巨大なデータを持つ状態になっています。
この巨大なシステムを以下のステップで改善しています。
1.システムをKubernetesなどモダンなインフラ基盤に刷新して変更安全性と変更容易性を高める
2.設計変更や不要なコード削除などの大胆な改修を小さく速く繰り返し、疎結合・高凝集なモノリスに作り変える
3.組織構造やビジネスファンクション・ドメインモデル・ユースケース等より、マイクロサービスの境界を考察し、定義し、分割する
(詳細は「食べログの大規模なレガシーシステムを段階的に改善していく取り組み - https://qiita.com/tkyowa/items/6417b0a7895399f8f9be 」で公開されています。)
業務内容の変更の範囲は会社の定める業務となります。
<食べログの事業・食べログシステム本部のミッション>
2005年にスタートした「食べログ」は、口コミとランキングで探せるレストラン検索・予約サイトです。「失敗しないお店選び」という課題に向き合い続け、現在、月間約9,600万人 (※1)を超えるユーザーが利用する日本最大級の飲食店検索サービスに成長しました。目まぐるしく変化する外食産業を盛り上げるべく、近年は飲食店や卸売業者など外食を支える人たちの課題を解決するDXプロダクトにも挑戦しています。これらのサービスを通して人々とレストランをつなぐプラットフォームになるべく世の中に貢献していきます。
※1 2023年3月現在。PC、スマートフォンブラウザ/アプリ等で同じユーザが閲覧している場合には重複カウント
私たちは市場や事業の変化に素早く対応できるシステムと、それを実現させる開発組織を作る事を責務としています。システムが事業成長のボトルネックにならないよう、モノを作るだけでなく作ったモノの健全性を保ち続けることやビジネス理解もそのための大事な手段の一つと考えています。サービス開発のように組織の改善を行うべくFourKeysの計測とアクショナブルな指標への落とし込みや、よりインパクトの大きな成果を出すべく、1プロジェクト1チャレンジすること、人同士のつながりを大事にすること、部署やプロダクトの垣根を超えていくことを大切にしに日々の業務にあたっています。
<マイクロサービス化チームのミッション>
技術部マイクロサービス化チームは巨大なモノリシックサービスにおける開発の辛さを解消し、少人数のチームが自律的に意思決定しながら開発するためのシステム基盤を作る事をミッションとしています。
開発環境
・プラットフォーム: オンプレ DC / GCP / AWS
・仮想化基盤: VMWare / Kubernetes
・OS・ミドルウェア: Linux / Ruby on Rails / MySQL / Nginx
・コード管理・CI: GitHub / CircleCI
・監視: NewRelic / Prometheus / OpsGenie / Sentry
・コミュニケーション・プロジェクト管理: Microsoft Teams / Miro / Asana
・データ基盤: BigQuery / Tableau
入社後のイメージ
<オンボーディング>
食べログのRailsアプリケーション設計、基本的なシステム基盤(例えばサーバミドルウェア)、業務の概要をドキュメントと先輩社員のレクチャーを併用して学習していただきます。並行して開発・リリースワークフローを理解していただきます。
<最初の業務>
メッセージング基盤や非同期処理基盤など既存のシステム基盤の導入拡大と、開発エンジニアに対する導入支援を担当していただくことになると思います。
<近い将来>
既存のシステム基盤の主担当、新規のシステム基盤のPoCと技術選定を担当していただきます。
キャリアパス
食べログのシステム全体のビジョンと戦略を考えるDevOpsのスペシャリストになることを期待しています。またシステム基盤エンジニアを統括して計画遂行するエンジニアリングマネージャとしてのキャリアパスも想定しています。
仕事のやりがい、成長できるポイント
【高度な問題解決能力を鍛える機会が得られる】
大規模システムに新しいシステム基盤を導入する業務は技術的な問題解決能力を鍛える絶好の機会です。パフォーマンス、スケーラビリティ、対象外性、冗長性などの問題に対処する必要があります。これらの課題を解決することは困難ですが、成功したときの達成感は大きいです。
【先端技術に強い企業・部門で働ける】
日本最速でChatGPTプラグインをリリースできたように、老舗のサービスを開発・運用しながら最先端技術の採用もできる職場です。
【持続的な学習の機会が得られる】
システムエンジニアリングは日進月歩で、最新の技術を学び続けることは極めて重要です。マイクロサービス基盤の開発は、新たなテクノロジーやアーキテクチャパターンを学ぶ絶好の機会を提供します。技術スキルを維持・強化することができます。
【大きな裁量が持てる】
導入技術の選定などで大きな裁量があります。課題にマッチするなら挑戦的な最新技術の導入もできます。
【発表経験を積める】
社内で発表する機会が大小用意されており、発表経験を積むことができます。
【社会的へ大きな影響のある仕事ができる】
約9,600万MAUを持つ食べログのシステムを改善するということは、多くのユーザー、飲食店経営者の生活をより良くする大きなやりがいのある仕事です。
【在宅でも出社でも働きやすい環境である】
業務に支障がないことが条件ですが、在宅勤務するか、出社するかの勤務スタイルはチームや個人の裁量に任されています。コロナ禍を機会に在宅勤務で働くための環境が整備されており、コラボレーションツールとしてはMiro/Asana/Microsoft Teamsなどを採用しています。
在宅勤務環境下でもコミュニケーションがとりやすい環境になっています。
【その他】
食べ歩きを趣味にしている人が多いため、美味しいお店に詳しくなれます。