はじめに
こんにちは!
SaaS事業 Product Division Product Team の山室です。
私たち Product Team は普段チームで開発を行っていますが、5月は自分だけチームを離れて1人プロジェクトを行っていました。
今回は、その中で感じたことについて発信したいと思います!
1人プロジェクトとは?
1人プロジェクトとは、技術力の向上を目的として、いまある課題を解決することができるシステムを1ヶ月以内にゼロから作る、という取り組みです。
この取り組みには、1人で 0 → 1 の開発をすることでしか得られない経験を積んだりスキルを身に付ける、という狙いがあります。
応募条件としては、「Uzabase に入社して半年以上経過している人」というもののみで、それを満たしていれば誰でも実施することができます。
作るシステムについては、多少のルールはあれど、既存の課題を解決することができるものであれば基本的に自分が作りたいものを作ることができ、使う技術についてもすべて自分で決めることができます!
いやはや素晴らしい取り組みですね!
作ったもの
今回の1人プロジェクトでは、「Compee(コンピー)」というシステムを作りました!
何のシステムなのかを説明するために、まず Uzabase の評価制度について説明します。
Uzabase には、「コンピテンシーテーブル」という、7段階のタイトルとそれぞれのタイトルに求める役割を定義したものがあります。
また、それぞれのタイトルには枝番が付いています。
Uzabase には、評価軸として「Execution」「Value」「Edge」の3つのコンピテンシーがあり、さらに Product Team では、これらのコンピテンシーのそれぞれにさらに「観点」という小項目が紐づいています。
例えば、「Edge」のコンピテンシーの観点には「アジャイル」や「アーキテクチャ」といったものがあります。
そして、この観点のひとつひとつにフィードバックによってタイトルが付けられ、それらのタイトルを規定の計算式に則って計算することによって、最終的なタイトルが算出されます。
これまで Product Team では、観点に付けられたタイトルや最終的なタイトルをスプレッドシートで管理していたのですが、以下のような課題がありました。
- 観点毎のタイトルのこれまでの遷移が見づらい(シートを跨ぐ必要がある)
- 最終的なタイトルそれぞれの人数・割合が分からない
- 絞り込みやソートが面倒くさい
そこで、その課題を解消すべく今回のシステム「Compee」を作ることにしました!
ちなみに、すでにお気づきだと思いますが、「Compee」というシステム名は「Competency」から取っています。
いやはや素晴らしい命名ですね!
感じたこと
1人プロジェクトを始めてまず何より強く感じたのは、次のことでした。
「1人のプロジェクトは、1人休むとプロジェクトが止まる」
当たり前のことですね。
当たり前のことなんですが、これまで1人のプロジェクトは経験がなく、Uzabase に入ってからはもっぱらチーム開発だったので、自分にとっては実体験する初めての機会でした。
Product Team は普段、基本的に4人チームで開発しており、1人2人休んでも問題なく開発を進められる体制になっています。
それに馴染みきっていた自分にとって、「休むとプロジェクトが止まる」というのはかなりのプレッシャーでした。
余談ですが、 Product Team では、体調が悪ければしっかり休んできちんと治しましょう!というスタンスが徹底されています。
もちろん、1人の開発ならではの良さもありました。
時間の自由度が高い
Uzabase はスーパーフレックス制度を採用していますが、Product Team はチームで動いているので、普段はチームで決めた時間で働いています。
意思決定や開発速度が速い
自分のペースで開発できる
一方で、1人プロジェクトを経験することで、次のようなチーム開発の良さを強く認識することができました。
属人化を減らせる
コンテキストを複数人で共有できるため、「これはあの人しか分からない」という状況を生み出しにくくすることができます。
特に、Product Team では常時ペアプログラミングを行っているので、その恩恵によるところが大きいと思います。
休みやすい
自分以外にもメンバーがいるということに加え、上記の「属人化を減らせる」ことも相まって、1人のプロジェクトと比べて遥かに休みやすいと感じました。
多様な視点や発想を持てる
1人の発想力や知識量には限界があり、180度異なる考えを自分で思いついたり、自分の壁を飛び越えることは1人の力ではとても難しいと痛感しました。
スケールできる
当たり前ですが、1人の作業量にもやはり限界があるなと感じました。
相互にサポートし合える
マンパワーが足りないときに手伝ってもらえたり、自分が持たない知識やスキルをチーム内外の持っている人から提供してもらえたりできるので、非常に生産性高く開発を行えます。
おわりに
今回の1人プロジェクトを通して、Product Team が行っているチーム開発の意義や良さを身をもって感じることができました。
また、それに加えて、いまの自分のスキル感や伸ばしていきたいところなどについても認識することもできました。
普段やらないことに取り組むことで、こんなにも得られることがあるんだなということを痛感しました。
そして、その機会を与えてくれた Product Team には、本当に感謝です。
最後に、Product Team ではエンジニアを募集しています!
今回紹介した 1 人プロジェクト以外にも、Product Team では様々なユニークな取り組みや働き方を実践しています!
少しでも「気になる!興味が湧いてきた!」という方は、ぜひカジュアル面談をしましょう!