はじめに
こんにちは。成蹊大学 法学部 政治学科 3年の高橋光(たかはし ひかり)です。2026年8月17日(月)から28日(金)までの2週間、ディップ株式会社のインターン生としてソリューション開発本部 プロダクト開発統括部 プロダクトソリューション部 メディアWeb開発課に所属し、求人サイト「バイトル」のサイトリニューアル業務に参画しました。
本記事は、サイトリニューアルに携わったことにより学びになった点、改善したい点について振り返ったものになります。
インターンシップでの目標
インターンシップに参加するにあたり、私は次の目的とゴールを設定しました。
目的
大規模プロダクトの開発を通じた、実践的な実装力と課題解決力を向上させる
ディップ株式会社の代表的なサービスであるアルバイト・パート求人情報サイト「バイトル」は20年以上の歴史を持つサービスであり、「求人情報サイト」という分野では日本最大級の規模を持ちます。本サービスの開発ではチーム開発やハッカソンなどで見られる少人数・小規模の開発体制とは異なり、多くのエンジニアが並行してコードを書き進めています。このような大規模環境特有の設計思想やコードベースに触れ、「堅牢な実装をどう進めるか」「発生した課題にどうアプローチするか」を実践を通じて学ぶことを目指しました。
ゴール
多角的な視点を活かし、コードの意図や設計背景をわかりやすく可視化・明文化することで、チーム内の認識齟齬や対立を未然に防ぐ仕組みを作って動けるようになる
近年のAIの発展に伴い、AIの作業可能な範囲は急速に広がり、これまで人間の作業領域であったものは代替されていっています。一方でチームで価値を届けるための「コミュニケーション」や「意図の共有」の重要性はより高まっていると感じています。「仕様の勘違いや手戻りといったコミュニケーション起因の課題を防ぐため、コードの意図や設計背景をわかりやすく可視化・明文化し、チーム全体がスムーズに開発を進められる環境づくりに挑戦しました。
取り組んだこと
業務内容の概要
今回のインターンシップでは、バイトルのサイトリニューアルに携わりました。バイトルの旧システムはレガシーな技術構成、スマートフォン(SP)版・PC版が別々のシステムとして存在するなど、様々な点がボトルネックとなりスピード感を持った改善サイクルが回せない、という課題がありました。本課題の解決のためサイトリニューアルを実施し、変更に強く、スピーディーに直せる体制になるよう技術的な変革を進めています。
サイトリニューアルのうち、私は「企業別仕事一覧」ページのサイトリニューアルに取り組みました。企業別仕事一覧ページは、ユーザーが特定の企業が掲載している複数の求人案件を一覧で閲覧できるページのことを指します。求人サイトでは同じ企業が複数の求人を掲載することが多く、企業別に求人を確認できる点で重要な意味を持ちます。
「新しいページを実装する」という難しい業務にインターン生3名で挑戦しました。
大規模コードベースの理解
参画初日、最初に直面したのが大規模コードベース特有の構造と歴史あるファイル群でした。環境構築を終えてコードを読み進める中で、独自の命名規則やディレクトリ構成に戸惑う場面が多くありました。
そこで意識したのが、「なぜこの修正が必要で、コードのどこに影響するのか」という意図を理解して取り組むことです。
最初にアサインされたフリーワード入力画面のUI修整などの軽微なタスクにおいても、ただ指示通りに修正して終わらせるのではなく、「プロジェクト内のどこにどの処理やCSSが配置されているか」を理解する機会と定義して取り組みました。結果として、作業の副産物としてコードベース全体の解像度を大きく引き上げることができました。
設計方針の策定
プロダクトの構造が掴めてきたところで、主タスクである企業別求人一覧画面の実装に着手しました。実装に入る前段階として、旧システムと新システムの比較検証を行い、実装方針(How)を念入りに検討しました。
この設計方針の策定にあたっては生成AIも活用しました。AIによるコード理解や仕様調査は非常に効率的である一方、出力された情報の一部に抜け漏れや誤りが含まれていることに気づきました。AIの回答を鵜呑みにせず、出力結果を自分自身で深く読み込み、正当性を検証した上で設計を詰めていく姿勢の重要性を学びました。
また、本タスクは3名で協力して作業に取り組むため、実装内容をサブタスクに分割し、3人で配分しました。
他部署との連携、レビューでの発表
設計計画の策定にて、企業別求人一覧の検索機能を成立させるには、既存の内部検索APIに修正を加える必要性があることがわかりました。
そのため、課内だけに閉じず、バックエンド担当のチームへ自らIssueを発行し、バックエンドで必要なデータ仕様や確認事項を整理して回答・調整を行いました。両者の領域をまたいで協調して開発を進めるプロセスを身をもって体験しました。
ここで重要だったのが、画面を描画するフロントエンドの視点だけでなく、バックエンド側の処理や仕様まで考慮する多角的な視点を持つことでした。
ただ「〇〇が欲しい」と曖昧なお願いをするのではなく、なぜこれが欲しいのか、バックエンドはどのように処理するのか、についてまで考慮する視点を持つ重要性を学びました。
レビューでは、企画側のレイヤー(上長や意思決定者)の方々に実装した内容を発表する機会をいただきました。そこでは、「なぜこの実装を行ったのか」という背景や目的を意識して発言しました。
一方で「この実装が企画・ビジネス側の目的にどう貢献するのか」「ユーザー体験にどう影響するのか」といった、相手の関心事や視点に合わせた発表構成にできればより良かったと感じています。発表を聴く相手の立ち位置まで考慮した伝え方の重要性を深く学びました。
「企業別仕事一覧」の実装
設計方針の策定後、実際に実装を行いました。以下は私が担当したタスクとその詳細です。
- 企業別求人一覧ページの基盤構築
- 企業別求人一覧ページ(`/cjlist{企業管理番号}/`) のルーティングを追加
- 求人一覧コントロールの実装
- 通常求人一覧と企業別求人一覧のコンポーネントを共通化
- PC向けコントロールバーとSP向けソートタブを実装
- 求人件数、並び替え、ナイトワーク切り替えに対応
- 企業別求人検索のAPI統合
- 企業別求人一覧を求人検索APIに接続
- 検索条件、ソート、ページネーションをURLと連携
- 企業情報、求人カード、0件表示を実データに対応
これらの実装のフェーズにおいても、既存仕様の把握やコード理解にAIを積極的に活用し、開発スピードを上げました。一方で、AIによるテスト実行やコードチェックを行っていたものの、実際の挙動において並び替えやページ遷移などで不具合が発生する場面がありました。
この経験から、AIは効率的なツールであるものの「抜け漏れは必ず発生する」という前提に立ち、自分自身の目でコードを読み込み、テストを徹底する重要性を実感しました。
2週間で得た学びと成長
2週間のインターンシップを通じ、技術面・マインド面で以下の大きな気づきと変化がありました。
目的意識を持つことの重要性
どんな小さなタスクであっても「何のために行うのか」を定義して臨むことで、得られる学びの量とプロダクトへの理解度が劇的に変わることを実感しました。
AI時代における「設計方針の検討」と「検証力」の価値
コードの実装自体はAIの手を借りて効率化できるからこそ、実装の前段階で「どのように動かすか」という設計方針を深掘りすること、そしてAIの出力を鵜呑みにせず自力で検証する判断力こそがエンジニアのコアな価値になると感じました。
意図の明文化と多角的視点の重要性
大規模開発においては、意図や背景をわかりやすく可視化・明文化することが手戻りや認識の不一致を防ぎます。特に他部署やレビュアーとのやり取りを通じ、自分自身がまだ持てていなかった様々な視点に気づかされました。
バックエンドの担当者の方は、単に「画面にこのデータを表示したい」というフロント側の都合だけでなく、「どのようなAPI仕様で、何を返すのが適切か」というシステム全体のインターフェース定義や責務の視点を持っていました。
レビュアーの方は、単にデザイン通りにコードを組むだけでなく、「なぜこのUIが必要なのか」というプロダクトやUX(ユーザー体験)の意図・背景まで掘り下げる視点を持っていました。
こうした他職種やレビュアーの視点まで先回りして考慮し、意図を明文化して動くことが、チーム全体の開発をスムーズに推進する鍵になると学びました。
まとめ
2週間のインターンシップでは、大規模なサービスの開発に参画することができ、普段の開発では得られない様々な経験をすることができました。
特に学びになった点は「ただ作業をこなすだけでなく、目的を持って作業を行う」ことの重要性です。
「実装しろと言われたから実装する」「修正しろと言われたから直す」のでは学びには繋がりません。「〇〇という理由があるためこの実装をする必要がある」「この実装では将来的〇〇というリスクがあるため修正する」といった「意図」を理解した上で行う作業がより良い学びに繋がると感じました。
これからインターンへ参加する方には、「なぜ」「どうして」といった「意図」を理解した上で作業を行うことをおすすめします。
今回得た学びを、今後の開発にも生かしていきたいと思います。

