はじめに
本記事はモブプロ開発を行っているチームでやっている取り組み Advent Calendar 2022の1日目の記事です
こんにちは、Watanabe Jin(@Sicut_study)と申します。
このアドベントカレンダーではモブプログラミング(モブプロ)で開発をしているチームがどのようにして信頼できるチームにまで成長できたのか、そこでの取り組みについて物語調で記事にしていきます。
記事1つ1つで小さな取り組みについて紹介しているのでぜひチームでやってみてください!
Chapter#0 チームのはじまり
この物語はとある小さなシステム会社のとあるチームのお話です
上司「みなさん集まっていただいてありがとうございます」
画面には見知らぬ人を含めて5人の顔が映っていた
最近はすべての会議がZOOMで行われており、緊張感が漂っている
上司「今日からみなさんには1つのチームとしてとある社内システムの開発を行ってもらいます。このシステムは外部発注を行っていたのですが、予算が尽きてしまったので続きの20%ほどを手の空いている皆さんに任せたいと思います」
このプロジェクトではRailsを用いた開発を行うというもので、社内で初めて外部発注したシステムである。普段の社内のシステムのデザインとは異なる部分が多くあるため、チームとなった4人誰もが簡単には理解できるコードではなかった
「久しぶりのRailsですが頑張ってコード追ってみます」
そう最年少の私は言った。
私はこの時、新卒入社でAシステム会社に入り3年目のエンジニアである
入社後、機械学習や自然言語処理の開発を行い、現在Web開発をしている
好きな技術はコンテナ開発、色々な技術を幅広く触っている
「form層とかservice層ってやったことないなぁ」
30代中盤のミュートさんがそうつぶやいた
この方はチームの中でもっとも社歴が長いエンジニアである
名前の由来はズームでよくミュートの状態で話していることからきている
好きな技術はアクティブレコード
「まぁなんとかなるんじゃないですか」
明らか適当な感じで言っているのが伝わるこの方はベープさん
今回のメンバーで2番目に業界経験がある方である
元々JavaやDB周りを専門に仕事をしていた。Rails開発は少しやった程度で主にチームのPMのような立ち回りで仕事をしていることが多い
好きな技術はダジャレを言うこと
「自分はよくわかってないですが、頑張ります」
20代後半の男はそう自信のなさそうにつぶやいた
この方はアールさん、私の2つ上の先輩である。元々は営業サイドでお仕事をしており、1年前にエンジニアに社内転職してその頃から私が指導を行っている。
名前の由来はR言語を触ったことがあるところからきている
好きな技術は現在模索中
上司「私も帰ってきたコードはまだほぼみれていないのですが、ゆっくり理解しながら完成まで持っていってほしいです」
ミュート「期限はいつごろまでですか?」
上司「本番利用開始が8月なので約3か月間になります」
ベープ「ほぉう」
上司「その後に開発してほしいのも既に決まっているので来期はこの4人でチームとなって動いてもらいます」
じん「次のシステムって何つくるんですか?」
上司「次は社内の技術レベル向上を一環に社内システムを新しい技術で作っていただこうと思っています。技術選定はじんさんにお任せします」
じん「なるほど。それは次の開発が楽しみです」
アール「私あまりチームの役に立てるかわからないですけど、宜しくお願い致します」
ここで会議は終了した
ZOOMに残っていた新チームの4人は話し合う
じん「ところでミュートさんとベープさんはスクラムでの開発経験はありますか?アールさんは私と一緒にずっと開発してきたのである程度スクラムは理解できています。社内的にはスクラム開発で進める流れになっているのでこのチームでもスクラム開発をしていきたいです」
ミュート「スクラムはなんちゃってでしかやったことないな。デイリースクラムくらいは毎日やってたけど、あとはよく知らない」
ベープ「私もそんな感じですね」
じん「なるほど。なら私もアールさんが経験あるので実際にやりながら慣れていきましょう」
アール「今回はじんさん、今回はTDD(テスト駆動開発)で進めていきますか?」
じん「ミュートさん、ベープさんはテスト駆動開発はされたことありますか?」
ベープ「私は自動テストすら書いたことないですね。前職も手動テストだけでした」
ミュート「Rspec(Railsのテストライブラリ)は書いてますが、TDDはやったことないです」
私はムムっとした顔をする。まさかのテスト自体もそこまで書いたことないという状況で不安が芽生えた
アール「ちなみに私もじんさんとテスト駆動で実際にペアプロしながらやりましたが、1人でかけるってほどではないです」
じん「では今後このチームで動いていくわけですし、今後はスクラム開発で進めていき、テスト駆動を教える、全員がよくわからないコードというのを考えてモブプログラミングで進めていきましょう」
一同「モブプログラミング?」
じん「詳細はあとで勉強会を開きます。とりあえず上長を説得してモブプログラミングで進めていいか許可を取ります。それまでアジャイル開発に慣れていきましょう」
こうして全く知らないメンバー、アジャイルについてほぼ知らない状態からのシステム開発が始まったのである…
次回
おわりに
今回は物語調で終わってしまいましたが、次回から実際の取り組みについて簡単に解説しながら紹介していきます。
いいねやコメントなどお待ちしております。