# サービス概要
・特定技能外国人を受け入れたい企業と外国人求職者の多言語マッチングサイト
・企業は求人を掲載し、求職者はサイト上から応募しその後のコミュニケーションをサイト上で行うことができる
# 機能
・求人応募機能
・チャット機能
・スカウトメール送信機能
・多言語機能
・管理機能
# 言語・フレームワーク
・PHP(Laravel)
・JavaScript(Vue.js)
# チーム体制
PM 1名
PL 1名
バックエンドエンジニア 3名(内1名兼務)
フロントエンドエンジニア 2名
# ポジション
PL兼バックエンドエンジニア
# 役割
PLとして要件定義から開発・レビューまで全てのタスクを統括しつつ、自身でもバックエンド領域の開発を行なっておりました。
# 主な業務
・基本設計
・ワイヤーフレーム作成
・詳細設計
・進捗管理
・コードレビュー
・バックエンド実装
・インフラ構築
# 課題
当初の予定より1ヶ月程度遅れてプロジェクトが開始されました。補助金案件のため、納期を遅らせることができず、工期8ヶ月のうち1ヶ月遅延した状態でのスタートとなりました。迅速な開発が求められたため、一部機能を分納にして工数の調整を行い、設計書が固まりきらないうちに開発を開始する必要がありました。そのため、手戻りを最小限にするために、毎日チームコミュニケーションを密にし、変更内容を早い段階でチームに共有することで、スケジュール通りに納品を完了させました。
# 開発内容について
## 多言語化機能
【概要】サイト内の動的テキストについて7ヶ国語での多言語化を行う
【どのような機能の開発・実装か】
掲載求人やチャットでのテキスト投稿時、7ヶ国語に翻訳し、外国人求職者選択した言語でコミュニケーションをとることができる機能の開発
【課題・問題点】
翻訳時のコストが課題であったため、システム内のDBに翻訳結果を保持し、同一テキストの場合はシステム内のDBから翻訳結果を取り出すように設計するとともに、APIのラッパークラスを作成し、外部から上記の振る舞いを考慮しなくても済むよう実装しました。
【打ち手・使用した技術】
Google Translate API
## 創意工夫・苦労した点など
開発チームが未熟で、私含め開発経験が浅いメンバーしかいないチームであったため、スケジュールも加味して中でも経験が長めの人員はバックエンド、浅めの人員はフロントエンドと役割を分けて実装を行った。技術選定については当時社内でLaravel,vuejsを使用していたため、開発速度を優先して同様のものを採用しました。
ソースレビューの工数削減やケアレスミス回避のためHuskyを導入して、コミット時にeslintやLarastanの自動実行を行うように設定しすることでルールの統一や品質担保を行いました。