【仕事についての詳細】
▼食べログを高凝集・疎結合なモジュラモノリスにリファクタリングするのモジュラモノリスアプリケーション化エンジニアのミッションになります。
・コードのメトリクスを元に改善計画を立てて進行する
・不要なコードの削減
・結合度・凝集度・認知的複雑度などコードの質の指標を改善する
・業務ドメインの開発エンジニアと共同してモジュールの境界を定義・設計
・モジュラモノリスアーキテクチャへのリファクタリング
【ミッションへの道のり】
食べログは2007年にRubyonRailsでリプレイスして以来、約15年の長期に渡り抜本的なアーキテクチャ刷新なしに開発と運用を継続しており、モノリシックで巨大なコード、かつ巨大なデータを持つ状態になっています。
▼この巨大なシステムを以下のステップで改善しています。
1.システムをKubernetesなどモダンなインフラ基盤に刷新して変更安全性と変更容易性を高める
2.設計変更や不要なコード削除などの大胆な改修を小さく速く繰り返し、疎結合・高凝集なモノリスに作り変える
3.組織構造やビジネスファンクション・ドメインモデル・ユースケース等より、マイクロサービスの境界を考察し、定義し、分割する
【入社後のイメージ】
▼オンボーディング
食べログのRailsアプリケーション設計、基本的なシステム基盤(例えばサーバミドルウェア)、業務の概要をドキュメントと先輩社員のレクチャーを併用して学習していただきます。並行してデッドコード削減や結合度、凝集度のようなメトリクス改善を実装して開発・リリースワークフローを理解していただきます。
▼最初の業務
マイクロサービス化チームと開発チームとの合同のシステム改善プロジェクトに参画して、例えばアプリの店舗詳細機能のような特定機能のシステム改善をメインで担当していただきます。(システム改善の詳細は業務内容をご覧ください。)
▼近い将来
システム改善プロジェクトにおいてマイクロサービス化のリーダーを想定しています。
【開発環境】
・プラットフォーム:オンプレDC/GCP/AWS
・仮想化基盤:VMWare/Kubernetes
・OS・ミドルウェア:Linux/RubyonRails/MySQL/Nginx
・コード管理・CI:GitHub/CircleCI
・監視:NewRelic/Prometheus/OpsGenie/Sentry
・コミュニケーション・プロジェクト管理:MicrosoftTeams/Miro/Asana
・データ基盤:BigQuery/Tableau
【キャリアパス】
アプリケーション設計のスペシャリストとして、システムを最適化し、モジュラモノリスからマイクロサービスや新しい設計パラダイムへ進化させるキャリアパスを期待しています。その中においてご本人のスキルと志向次第で技術面でのリードや、施策やチームをリードするマネジメント方面を想定しています。
【仕事のやりがい、成長できるポイント】
▼高度な問題解決能力を鍛える機会が得られる
大規模システムのリファクタリングは、技術的な問題解決能力を鍛える絶好の機会です。保守性、パフォーマンス、スケーラビリティなどの問題に対処する必要があります。これらの課題を解決することは困難ですが、成功したときの達成感は大きいです。
▼先端技術に強い企業・部門で働ける
日本でも早期にChatGPTプラグインをリリースできたように、老舗のサービスを開発・運用しながら最先端技術の採用もできる職場です。
▼持続的な学習の機会が得られる
システムエンジニアリングは日進月歩で、最新の技術を学び続けることは極めて重要です。大規模システムのリファクタリングは、新たなテクノロジーやアーキテクチャパターンを学ぶ絶好の機会を提供します。技術スキルを維持・強化することができます。
▼プロジェクト初期から大きな裁量を持って参加できる
アプリケーションの改善は始まったばかりで、プロジェクトの初期から参加して、採用する設計パラダイムなどの意思決定に参加できます。
▼発表経験を積める
社内で発表する機会が大小用意されており、発表経験を積むことができます。
▼社会的へ大きな影響のある仕事ができる
約9,600万MAU(※1)を持つ食べログのシステムを改善するということは、多くのユーザー、飲食店経営者の生活をより良くする大きなやりがいのある仕事です。
※12023年3月現在。PC、スマートフォンブラウザ/アプリ等で同じユーザが閲覧している場合には重複カウントとなります。
▼在宅でも出社でも働きやすい環境である
業務に支障がないことが条件ですが、在宅勤務するか、出社するかの勤務スタイルはチームや個人の裁量に任されています。コロナ禍を機会に在宅勤務で働くための環境が整備されており、コラボレーションツールとしてはMiro/Asana/MicrosoftTeamsなどを採用しています。
在宅勤務環境下でもコミュニケーションがとりやすい環境になっています。
▼その他
食べ歩きを趣味にしている人が多いため、美味しいお店に詳しくなれます。
【業務変更の可能性】なし
【必須要件】
・Webアプリケーションの設計・実装・運用経験
・データモデリングの経験
【歓迎要件】
・API設計・GraphQLスキーマ設計の知識と経験
・ドメイン駆動設計、イベント駆動設計など複数の設計パラダイムに関する知識
・マイクロサービス化やモジュラモノリス化などのシステム改善の実践経験・知見
・Ruby,Railsのプログラミング経験
・大規模システムの長期運用経験
・OSや開発言語を変えるシステムのマイグレーション経験
【求める人物像】
・事業会社であるカカクコムのシステム部門メンバーとして課題解決を第一に考える指向性
・最新技術のキャッチアップを怠らない向学心
・自律的に思考・行動できる方
東京都渋谷区宇田川町
最寄駅:各線渋谷駅から徒歩5分
※エンジニアとして就業する社員の多くは在宅勤務を行っています。
※在宅と出社の両方を活用したハイブリッド型のスタイルを会社としても推奨しています。
【勤務地変更の可能性】なし
想定年収600万円〜821万円
想定月収32.3万円〜
特記事項:賃金:月給制
※詳細は面談時にお伝えいたします
賞与あり年2回(6月・12月)
厚生年金保険,健康保険,労災保険,雇用保険
交通費:通勤費支給(実費支給※上限55,000円)
諸手当:残業手当(1分単位で全額支給)、家族手当(支給条件有)、在宅勤務環境手当
特記事項:カカクコムが創業来⼤切にしてきた「働く楽しさ」に加えて、「働きやすさ」を併せて実感できる会社を⽬指しています。
今後も、利⽤状況を加味しながら、従業員の声を反映した積極的な制度の⾒直しを⾏っていきます。
【福利厚生】
・確定拠出年金制度
・団体生命保険
・従業員持株会
・社内部活動補助
・無料人間ドック(定期健康診断)
・EAPカウンセリングプログラム
・慶弔見舞金
・育児短時間勤務(最大12年間、子供が小学校を卒業するまで取得可能。コアレスフレックスタイム制の選択可)
・⾃⼰学習⽀援制度あり
【エンジニア向け支援】
・勉強会の実施
価格.comを含む会社全体での勉強会が3ヶ月に1回開催されます。
食べログエンジニア全体向けの勉強会は平均月1回のペースで開催しています。
また、食べログの各エンジニアチーム内での勉強会も不定期で開催されています。
・技術書籍の購入
会社の資産となりますが、技術書は予算の範囲内で自由に購入可能です。長期の貸出もOKです。毎月多くのエンジニアが技術書を購入しています。
・セミナー参加
就業時間内での参加が可能です。有料セミナーに参加する場合は事前に相談の上、会社が費用を負担します。
・社内外イベントの運営支援
会場の提供や協賛等の支援を行います。食べログは毎年開催されるRubyKaigiのスポンサーを務めています。
契約期間:無期
【受動喫煙防止情報】
屋内受動喫煙対策:あり
対策:喫煙室あり
特記事項:喫煙専用室設置
正社員
3カ月
※試用期間中の雇用形態および処遇の変更はありません。
休憩時間:就業時間中に1時間
コアタイム:10:00〜15:00
特記事項:フレックスタイム制
フレックスタイム勤務(標準労働時間は1日8時間)
※業務の都合上、時間外労働が発生することがあります
※管理監督者および裁量労働制となる場合は異なります。
※チームの状況や自分の仕事のペースに応じて、出勤・退勤時間を柔軟に変更することができます。
(詳細は面談時にお伝えいたします)
完全週休2⽇制
所定休⽇︓⼟・⽇・祝⽇、年末年始(12/29〜1/3)
休暇︓夏季休暇3⽇、特別夏季休暇2⽇、有給休暇、慶弔休暇、産前産後休暇、育児休暇(最⼤で⼦供が3歳になる年の年度末まで取得可能)、⼦供の看護休暇(年間10⽇とし、内5⽇は有給休暇⼦が複数いる場合は年間20⽇とし、内10⽇は有給休暇)、看護休暇、ボランティア休暇
※有給休暇︓⼊社⽉に応じて最⼤10⽇付与