https://korekarashinro.jp/
「コレカラ進路.JP」は、高校生の進路活動をサポートする専門学校・大学の情報まとめサイトです。
私は外部委託から内製化する工程を担当し、さらに外注の開発メンバーの技術指導も行いました。
## 期間
2020年12月〜2022年10月
## 主に担当した内容
* 要件定義書/設計書の作成
* クライアント側管理画面の開発(全般)
* ユーザー側サイトの開発(一部フロントも対応)
* デバッグ作業
* リリース作業
## 開発言語・フレームワーク・他
* Ruby
* Ruby on rails
* jQuery
* Bootstrap
* IDCFクラウド
## メンバー
社内:
* ディレクター1名
* デザイナー1名
* 開発1名(担当)
外注:
* 開発1名
* コーダー1名
## どのような課題があり、どう解決したのか
### - 課題の発生と背景
入社当時、社内には開発部がなく、SEO担当者1名のみで、保守・運用は外注先に依存していました。しかし、外注先はSEO監修が主な業務で、機能追加や修正が難しい状況でした。
私はこの課題を解決するために採用され、Ruby on RailsやMySQL、Linuxサーバーの知識を活かしつつ、クラウドサーバーやフロントエンド技術(JavaScript、jQuery、CSS/SCSS、Bootstrapなど)を学びながら、2年間で内製化を達成しました。これにより、社内に開発体制を構築し、柔軟な運用が可能となりました。
### - Railsへの移行
内製化前はPHPとFuelPHPで開発されていましたが、私はRailsの知識を活かす方が効率的だと判断し、Railsでの再構築を選択しました。また、SEO担当の先輩から「Railsは初心者でも扱いやすく、自分も学んで一緒に開発を進めたい」との意向があり、それを後押しする形で進めました。
### - スケジュール逼迫と対応策
当初の目的は内製化のみでしたが、機能追加の要望が増加し、スケジュールが逼迫する状況となりました。これに対応するため、先輩と協力して要件定義書を作成し、対応範囲を明確化。さらに、Googleスプレッドシートでタスク管理とガントチャートを作成して進捗を可視化し、社内の不安を解消しました。また、限られた予算の中で外注を導入し、経験の浅いメンバーを指導しながら、フロントエンド開発を補完する形でプロジェクトを推進しました。
### - 未経験者の育成とリリース
以上を踏まえ、現職には経験が浅い人材を育てていく方針が適していると判断し、未経験者の採用に踏み切りました。
新メンバーが参画し、ペアワークを通じてRuby on Railsの開発手法やサーバー運用、データベースの基本を指導し、短期間で既存機能の改修や不具合対応、デプロイ作業を任せられるまで成長しました。さらに、仕様の議論にも積極的に参加するなど、チームにとって欠かせない存在となりました。こうしてチーム全体で切磋琢磨し、無事リリースを迎えることができました。
### - リリース後の改善と成果
リリース直後には不具合や機能不足が発覚しましたが、新メンバーと共に迅速に対応しました。具体的には、検索処理の負荷軽減のためにクエリを最適化し、請求処理の非同期化を導入して処理速度を向上させました。また、Mackarelを導入してサーバー監視体制を強化し、エラー発生時に迅速な原因究明と対応を実現。これにより、信頼性の高い進学支援サービスを提供する基盤を構築しました。
### - 内製化の成果
内製化の成果により、新機能の開発やユーザー動向の分析に必要なデータ抽出が可能となり、学校検索機能の改善や進学支援に役立つ統計データの提供など、サービスの利便性と価値を大きく向上させました。これらの取り組みを通じて、サービスの成長に直接貢献しました。
### - チーム連携と開発基盤の構築
先輩や後輩と協力しながら、仕様を協議して確定させると同時に、他チームや他部署と連携して開発を進めました。また、成果をレポートにまとめて共有する仕組みを構築したことで、情報の透明性が向上し、開発部の基盤作りに貢献しました。
また、仕様の協議や成果のレポート共有を通じて、他部署との連携を強化。情報の透明性を高め、開発部の基盤作りに寄与しました。