営業職の俺がエンジニアになる〜群馬Web化計画編〜

2017年に未経験からエンジニアに転職をした私が群馬でイノベーションを起こすまでの備忘録です。

初学者にチーム開発の楽しさを伝えるプロジェクトを走らせた結果

ちょっと前にこんな感じのツイートをして、プログラミング初学者にチーム開発の楽しさを伝えるプロジェクトを発足させました。

もともとMENTAでプログラミングを教えていたメンティー2名に声を掛けて実質メンタリングの延長戦という形で走り出したプロジェクトでしたが、先週新たに1名の仲間が加わり、現在では私含め4名で開発をしています。私の役割はスクラムマスター兼プロジェクトオーナー。「如何に開発メンバーに気持ちよく開発をしてもらえるか」というのをミッションにプロジェクトを運営しています。

具体的なプロジェクト運営

プロジェクトの具体的な運営に関してはスクラム開発を基調とし、スプリント期間を1週間で回しています。毎週金曜20:30〜定例を行っており、この定例の中では「この1週間の振り返り(スプリントレトロスペクティブ)」と「次の1週間の計画(スプリントプランニング)」を行っています。なお、レトロスペクティブではKPTの進化系GPTK(Good / Problem / Try / Keepの頭文字)という手法を用いて振り返りを行っています。ちなみにこのGPTKは私の務める「しくみ製作所」にて編み出された振り返り手法です。

GPTKとは?(よもやま話)

手法の話で長く取るつもりはないのですが、ざっくりと内容を説明すると、

  1. メンバー全員に5分程度で「今週のGood / Problem」を箇条書きで書き出してもらう
  2. 順繰りにGood / Problemを口頭で発表してもらう
  3. スクラムマスター主導で共通ないしは重要なProblemをまとめる
  4. Problemに関しての解決策(Try)をメンバーで話し合って決める
  5. Goodの中から特に良かった内容(Keep)をヒアリングしてまとめる

といった手順で行います。よかったら参考にしてみてください。

っと話がそれてしまいましたがそんな感じで振り返りをやっています。

プランニングに関してはプランニングポーカーで見積もりを行い、その後メンバーのベロシティをもとにタスクを割り振っていいます。このあたりは割とオーソドックス。

週次の定例以外にDSもやっています!っといいたいところなのですが、流石にメンバーも他にメインでやることがあるためDSは簡素化し「今日やったこと」「明日やること」「困り」の3点を毎日20:30頃に日報として提出するというルールで運用しています。

ここで下記2点の絶妙な工夫を取り入れています。

  • 進捗がなくても空の日報を出してもらう
  • 私は日報を出さず、見守ることに徹する

前者に関しては、日報を習慣づけるためです。仮に進捗がない場合に出さなくてもOKにすると、進捗がなくて出していないのか?はたまた純粋な出し忘れなのか?が把握できずに形骸化し、「出てないよー」というリマインドも行いにくくなってしまいます。そのため、デフォルトで出すということにして、出ていなければ「出てないよー」というリマインドを行うことにしています。

後者に関しては、私自身が開発ポジションではないので進捗あまりなく空の日報が続くのが目に見えているためです。前者で「空の日報を出せ」と言いつつ自分は出さないのか?という疑問が生まれるかも知れませんが、私が空の日報を出し続けた場合、今度は「空の日報を出し続けてもOK」という雰囲気が生まれる可能性が高まります。そのため、私は日報を出すという関わり方ではなく「見守る」に徹する、要は日報を見て進捗が芳しく無ければ声を掛けたり、困りがあれば手を差し伸べたりする、という開発における雰囲気作りを大事にしていきたいと考えているわけです。

やってみてどうか?

そんなこんなで今日3スプリント目に突入をしたのですが、結論から言うとめちゃくちゃ楽しいです!!こんなにも優しい世界でチーム開発ができるものなのかと、正直自分でも疑っています。きっとメンバー個々がいいキャラを発揮してくれているからなんだろうなぁと思います。

それ以外にも、私個人として学ばせてもらっていることはもちろん、今回の一番の目的であった「チーム開発やエンハンスを学ばせる」という目標も現段階では十分に達成できてるようです。

というのも、今回加わったメンバーは別のチーム開発も掛け持ちしているそうなのですが、私のチーム開発手法をもう一方のチーム開発に早速流用してくれているという話をされていました。学んだことを他で即実践に移せているのは非常に嬉しいことです。

それ以外にも、開発メンバーは全員初学者なので基本的に自分で書いたコードにしか触れたことがない面々なのですが、今回私が書いたコードのエンハンスをすることで、自然にコードを読んで実装するという流れが生まれています。エンジニアリングを学ぶにあたってコードを読むというのは非常に重要な要素ですが、初学者ではそのあたりに触れる機会は非常に少ないと思うので、良い場が作れていると感じています。

今後の展開

プロジェクトを走らせてみて「楽しく学びに繋げられる」ということが検証できました。今後の展開としては、もっと多くの初学者(未経験〜エンジニア歴1年目くらいの層)にこの体験を広げていきたいと考えています。また、開発以外にも「スクラムマスターの実践練習がしたい!」とか「プロダクトのマーケティングの実践練習したい!」とか、そういったある種「〇〇の卵」として今の所現場ではそういった業務ができないけど、来る日のために実践練習を積みたいという方にも視野を広げてプロジェクトを拡大できたら、更に面白い世界が待ち受けているんじゃなかろうかとも考えています。

そういった意味でも、私自身このプロジェクトを広げる活動には力を注いでいこうと考えています。もし、そういったチャレンジをしたい方がいればお気軽にご連絡ください。

ということで「初学者にチーム開発の楽しさを伝えるプロジェクトを走らせた結果」でした。