こんにちは! マネーフォワード京都開発拠点の井上(@ino_dev)です。
マネーフォワードさんの中では現状比較的珍しく(?)、業務委託のメンバーとして、2019年12月頃から開発をお手伝いさせていただいております。 今日はそんな自分の立場から客観的に見て、いつもの京都拠点でのスクラム開発において、ここが良いなーというところなどをお話しできればと思っています。
目次
- マネーフォワードの京都拠点って何やってるの?
- 緊急事態宣言でフルリモートでのスクラム開発に
- リモートワークでのスクラム開発の知見
- リモートワークでの反省
- 京都拠点メンバーを大募集中だそうです
マネーフォワードの京都拠点って何やってるの?
京都拠点では主に、IPOを目指されている企業向けに内部統制を強化する機能を追加した「クラウド会計Plus」と言うサービスの開発を行っています。 他にもいくつかのプロジェクトが並行して動いていますが、スクラムでクラウド会計Plusの開発に携わっているエンジニアメンバーが中心となっています。
私自身は今までいくつかのスタートアップベンチャーなどでも開発を行ってきましたが、マネーフォワードの京都拠点並に本格的にスクラムをしようと取り組めているところはあまりないと感じているので、特に開発体制などに関して日々色々と勉強させていただいています。
緊急事態宣言でフルリモートでのスクラム開発に
マネーフォワードでは以前から少しづつ在宅ワークできる仕組みの整備が始まっていたのもあり、緊急事態宣言後も比較的スムーズにフルリモートでの作業にも切り替えていけました。(VPN環境の強化や全社員600名程度のPCの接続など相当大変そうでしたが…ありがとうございました!)
京都拠点では特に、去年の拠点立ち上げからスクラム開発での環境改善に奮闘されてきたのもあり、フルリモートでもその体制を維持しながらやってきました。 ただ、やはりコミュニケーションが軸となるスクラム開発において、どうしても今までよりもコミュニケーションコストが上ってしまいバタバタする部分もありました。
しかし、各々が意見を出し合い、振り返り等を中心に改善しながら、結果として大きく開発速度を落とすことなく業務が継続できていたので、その中でも個人的にチームの取り組みとしてよかったなと感じる知見などを紹介できればと思います。
リモートワークでのスクラム開発の知見
元々実施していた内容も含めてになりますが、個人的にリモートワークをするにあたり京都拠点での特に良いなと思う活動・工夫を5つです。
(1)追加機能は基本的にモブプロで開発する
お互いのレビュー待ちや細かい仕様確認などの細かいコミュニケーションコストを削減する為に、特にリモート作業が中心となった最近では積極的にモブプログラミングを取り入れて開発を行っています。 4人ほどで構成されたチーム全員が仕様を把握して、『同期的に』話しながら開発を進められる為、リモートワークでもほとんどオフィスと変わりなく…寧ろ画面共有や音声環境などを同一のレベルで揃えられる為、リモートの方がやりやすいくらいになりました。
(2)プロダクトオーナーがチームとして機能して疑問の早期解決を試みる
京都拠点では少し前から、プロダクトオーナーへの仕様の確認や問い合わせなどの集中を避ける為、プロダクトオーナーチーム(PdOチーム)として立ち回れるように動き始められていました。 特にリモートでのSlack上でのやりとりは無駄に時間がかかることも多いので、PdOチームの誰かしらに声をかけてDiscord等に召喚させてもらい、口頭や画面共有でさっと確認を済ますことで、リアルに近い相談しやすい環境が成り立っています。
(3)Discordでいつでも話しかけられるようにする
リモートワークではSlackよりDiscordを中心に会話でのコミュニケーションを取ることが増えました。 特定の会議はZoomでも行いますが、常にDiscordを繋いでおくことで特にモブプロを行う小規模開発チーム内でのコミュニケーションのハードルが大幅に下がったと感じます。 Discordでは自分のマイクだけでなくイヤホンのON/OFFも設定&表示できる為、「今話しかけてもいいですよ」と言う状態を表現でき、モブプロ以外の雑談や相談などの会話をすぐにはじめることができます。 (朝会後同じチームで同じ部屋に常駐して作業していたりします)
【基本的にチームごとにDiscordで集まって作業を行う】
(4)スプリントプランニングの粒度を出来るだけ細かくする
京都拠点では1週間を開発サイクルを回す単位のスプリントとして、毎週水曜日にその週の振り返り(レトロスペクティブ)と、次の週にやることを決めたり詰めたりしていくスプリント計画会議(スプリントプランニング)を実施します。
機能追加等は複数人のモブプロで行うので、その場で決めながら進めることも可能ですが、スプリントプランニングの段階で、やることが決まった後に開発チーム内で出来るだけ詳細に設計やテスト計画まで実施してしまいます。
【Jiraで機能追加のサブタスクを切って細かく設計した状態】
PdOチーム等への確認のコミュニケーションコストを下げたいと言うのも勿論ありますが、モブプロをする際に(特にリモートにおいて)チームの誰かが急な呼び出しでモブプロから抜けたり休んだりしても、個々人の状況に左右されずにタスクを完了させていくことができます。 はじめに密度の高いコミュニケーションをしておけば、断片的な同期作業でもあまり効率が落ちないなと実感しています。
(5)振り返りや勉強会をデータ化してコンテンツ化する
京都拠点では、開発チームの振り返りや会計業務理解の為のワークショップなどもZoomを繋いで行い、その動画やMuralで作った図解などを蓄積したりしています。 元々オフラインの勉強会でも一部動画化したりしていましたが、全員リモートでの(Zoom経由での)参加とすることで、むしろ(音声データや画面映りでの関係上)オフラインでやっていたものより分かりやすい動画などになっていると思います。
特定の会議や勉強会などに参加出来なかった人向けのキャッチアップ用の記録としては勿論、新規にチームに参加される方向けの研修資料としてもより質の高いコンテンツが蓄積されているなと感じ、直近でもどんどん受入体制も改善出来ているなと思います。
【例:勉強会の動画等をGoogleDriveで蓄積してesaなどからリンクしたりもしている】
リモートワークでの反省
比較的スムーズに業務を行えており、これといって大きな問題は起きておらず、リモートワークで改めて「どんどん改善していこう」という京都拠点の文化はとても居心地がよく感じます。
強いて改善すべきところをここで挙げれば「別の開発チームとのコミュニケーションをいかにうまく取るか?」というところがありそうです。
京都開発拠点ではメインのプロダクトとなるクラウド会計Plusにおいて、最近では4名程度の開発チームが2つ並行して同じスプリントバックログ(実装リスト)を分け合いながら実装を行っています。 ただ、チーム内ではDiscordで活発にコミュニケーションが取れているものの、先日予想外にお互いのチームで開発した機能がコンフリクトしてしまうことなどがありました。 スプリントプランニングの段階、及びモブプロの最中にリモートでも別チームの作業も気軽に認識できる仕組みをもう少し整備していけると良いのかと検討中です。 また、最近は雑談の機会をあえて作ろうということで、業務時間中にランダムでグループを作って会話する「シャッフルトーク」という内容も試し始めています。
京都拠点でメンバーを大募集中だそうです
これからより様々なことをチャレンジしていくにあたり、マネーフォワードの京都拠点でITエンジニアメンバーを大募集中だそうです!
【過去に実施したGo勉強会の様子】
- スクラム開発などにも興味がある方
- Ruby on Railsで京都でプロダクト開発したい方
- Goを用いたマイクロサービス開発などにも興味ある方
などを特に募集しているそうなので、興味がある方は是非マネーフォワード京都開発拠点のWebサイトもチェックしてみてくださいね! https://kyoto.moneyforward.com/
--
マネーフォワードでは、エンジニアを募集しています。 ご応募お待ちしています。
【サイトのご案内】 ■マネーフォワード採用サイト ■Wantedly ■京都開発拠点
【プロダクトのご紹介】 ■お金の見える化サービス 『マネーフォワード ME』 iPhone,iPad Android
■ビジネス向けバックオフィス向け業務効率化ソリューション 『マネーフォワード クラウド』
■だれでも貯まって増える お金の体質改善サービス 『マネーフォワード おかねせんせい』