# プロジェクト概要
- 動画制作のマッチングサービスの新規機能開発を行うプロジェクトに参画。
- 主な機能として、求人公開・応募機能、メッセージ機能がある。
# チーム構成
- プロダクトマネージャー: 1
- バックエンド: 7
- フロントエンド: 1
# 開発環境
- Webサーバーサイド: Ruby, Ruby on Rails
- Webフロントエンド: Vue.js, Vuex
- インフラ: AWS(Fargate, ECS, Aurora), Elasticsearch, Terraform, CircleCI, GitHub Actions
- ローカル: Docker, Docker Compose
- データベース: MySQL
- 情報共有ツール: Slack, esa
- その他: GitHub, Zeplin
# 担当業務
- Ruby on Rails での API 開発
- Vue.js でのフロントエンド開発
- API スキーマ駆動開発 の主導
- Rspec での自動テスト
# アピールポイント
## 認証基盤のIDaaS(Auth0)移行
複数サービスで共有可能にするため、認証基盤をAuth0へ移行している。実装工数とUXのバランスを取りつつビジネスサイドと競技しながら、設計から実装まで携わっている。
## Vue.js でのフロントエンド開発
担当サービスは SPA 構成のためフロントエンドのタスクが多く、フロントエンドエンジニアの作業がボトルネックとなり、作業が滞りやすい状況にあった。私自身はフロントエンドの開発経験は少なかったが、プライベートの時間を投下しキャッチアップ。JavaScript(ES6)、Vue.js、StoryBook、Atomic Design の学習を行った。業務では Rails の Haml テンプレートで実装された画面の SPA 化のフロントエンドを担当した。Atomic Design に則って、コンポーネントごとに実装し、都度 StoryBook を利用しながら進めた。結果的に、フロントエンドエンジニアの過負荷を軽減し、チームの開発速度向上に貢献できた。自身としても、技術領域を広げられ楽しい経験だった。
## API スキーマ駆動開発 の主導
チーム内には OpenAPI に関する知見が少なかったため、ミーティングを開催して知見を集約。結果として、バックエンドエンジニア、フロントエンドエンドエンジニアが並行して開発をを進められるような体制づくりに貢献。
## Rspec での自動テスト
4年以上運用されているサービスであり、ローンチ当初はグロース優先のためテストコードを実装していなかった影響により、参画当初はテストコードがあまり書かれていない状況だった。API サーバーへの機能追加時に既存コードのテストコードを追加することでカバレッジを高めた。