【長期開発】traPortfolio
サービス概要
traP部員が部内での活動や、その制作物をを外部にアピールできるプラットフォーム
担当範囲
- 2024年4月から フロントエンドリーダー
- 要件定義の見直し
- フロントエンド実装の一部・レビュー
- フロントエンドリポジトリの管理
- 開発日程・工数の管理
- 開発環境の整備
- v1リリースに向けたデプロイ作業
開発中に心がけたこと
期限を切った開発
私がこのプロジェクトに加入したのは2023年7月のことでしたが、このプロジェクトはおおよそ2020年から始まり、開発が長期化していました。この背景には、リリースまでのロードマップが定まっていなかったことが挙げられると考えました。そこで、私がフロントエンドリーダーになったときにはまずは期限を定め、それに向かって開発を行うことでリリースを確実に行えるようにしました。 今回は「春ハッカソンで部員が開発したものを外部公開できるようにする」という明確な目標地点を定めることで、設定した期限にも意味をもたせるようにしました。
Minimum Viable Product (MVP)
先述の通り期限を切った開発を行うようにしましたが、先に定めた目標「春ハッカソンで部員が開発したものを外部公開できるようにする」を満たすためにはどのような要件が必要かをこのとき一旦整理しました。ここで必須でないと判断したものはv2の要件とし、v1の計画を必要最低限なものに削ぎ落としました。 また、この要件を一度たたき台として作った後、チームメンバーに共有し、それをもとに開発を行うようにしました。
サークル内外での積極的な発信
期限を切った開発を行うと決めた際、まずはその期限でリリースすることをサークル内で宣言をしました。これは、サークル内など比較的厳しくない環境下においても期限を形骸化させないという理由がありました。 他にも、開発チームを活発化させる狙いもありました。私が4月にフロントエンドのリーダーを引き継いだ際、定期的にコントリビュートを行っているメンバーはフロントエンドとバックエンドをあわせても5人程度でした。ただ、リリースについての情報を部内で積極的に発信したり、開発の雰囲気について言及することによって自分たちの開発に興味を持ってもらえるようにしました。その結果、現在では5人が追加メンバーとして加入し、開発が更に活発になりました。
メンバーの育成と開発環境の積極的な整備
大学サークルという性質上、メンバーの入れ替わりも企業よりも多く、開発体制を維持するのが大きな課題となっています。現に、現在のフロントエンド開発メンバーは自分と同じかそれよりも下の学年しかいません。そこで、メンバーの育成に積極的に取り組んでいます。具体的にはオンボーディングや、その後のペアプログラミングなどです。詳細は以下に挙げているブログ記事で書いています。 また、メンバーが開発に集中できるよう環境の整備も重点的に取り組んでいます。Pull Request ごとにレビューをする際、これまでは Vite をローカルで動かしていましたがこれを ArgoCD を用いてやりやすくしたり、 UI デザインのテストをしやすくするために msw を用いたモックで手元でデータを自在に書き換えられるようにしたりしました。こちらも ArgoCD についてはブログ記事を執筆しています。
関連リンク
- traPortfolio
- GitHubリポジトリ
- 開発に関連したブログ記事