Misocaに必要なことは全て受入プロジェクトで学んだ

こんにちは、 thara aka @zetta1985 です。
7月からMisocaに入社し、現在はRuby on Railsを中心に触っています。
Railsを仕事で使うのは初めてですし、採用面接のペアプログラミングではPythonを使いましたが、今のところなんとかなっています。

自分は入社後1ヶ月間 受入プロジェクト に配属され、そこでMisoca流の仕事の進め方を会得することになりました。 今回は、その受け入れプロジェクトという取り組みのご紹介と、実際に配属された上での感想を述べたいと思います。*1

受入プロジェクトとは

今回の受入プロジェクトでは、入社した人と受入担当の2人が配属され、1ヶ月間同じ課題に取り組みました。
その課題は、普段から開発チームが受入プロジェクトで取り組むのにふさわしいタスクとして日々積み重ねていたものの一つです。

f:id:zetta1985:20180815175114p:plain

具体的にどのようなタスクに取り組んだかはここで明らかにすることはできないのですが、以下のような特徴を持っていました。

  • 実装難易度が低い
  • UIに影響を与えない(見た目の変更がない)
  • DBマイグレーションが必要
  • データマイグレーションが必要
  • 運用担当との調整が必要

1ヶ月という短い間に取り組む課題として、タスクの粒度もリリースまでに必要とするプロセスも多様的であり、自分にとっても最初に取り組むタスクとしてちょうどよいものでした。

なお、自分は名古屋本社勤務で、受入担当の方はフルリモート勤務でした。

受入プロジェクトの進め方

プロジェクト開始直後は、受入プロジェクトの目的や受入タスクの全体像の把握、タスクや調整が必要なことの棚卸しを行いました。 このとき、受入タスクの解決すべき課題を理解することも兼ねて、既存プロダクトの機能をコードベースと照らし合わせながら説明を受けたり開発上のTipsなどを教えてもらったりなどしました。

プランニング後は、プランニングであげたタスクをベースに、毎日の朝会と振り返りとともに日々の作業を進めていきました。朝会や振り返りなどはzoomで画面共有しながら行いました。

朝会と振り返り

受入プロジェクトの朝会は、毎朝決まった時間に実施され、今日着手するタスクの確認などを行いました。 geekbotに回答した結果をベースに行われるので、すぐに終わります。 タスク以外の会社や組織/規定に関するちょっとした質問も、すぐに答えが出るようであれば、その場で答えてもらえました。 また、毎日17時ぐらいに振り返りを行い、タスクの進捗確認などをしました。 一日のタスクの進捗状況を見て、タスクを分割したり統合したりして、タスクの粒度を調整していました。

プロジェクト専用 channel

日中の受入プロジェクトに関するやりとりは、専用のSlack channel*2でやりとりしました。 先程のgeekbotに回答した結果がこのchannelに通知されるほか、PRレビューの依頼やタスク進捗上の質問、ペアプロやペアオペの依頼など、基本的にこのchannelをベースにプロジェクトが進行していきます。 テキストベースでは伝えづらいことは、このchannelにzoomのURLを貼りつけて口頭で伝えたりもしました。

このchannelでは入社後の受入タスク以外のイベントも展開されていたので、とりあえずここを見れば予定がわかるというのは、まだMisocaでの各ツールの使い方が確立してない状況だとありがたかったです。

f:id:zetta1985:20180816174357p:plain

*3

上の画像に含まれているイベント以外にも、試しにリモートをやってみたりMisocaのシステムアーキテクチャの概要を説明してもらったりと、新しくジョインした人向けの細かい取り組みがありました。

感想

今まで何回か転職してきましたが、ここまでしっかり受入してくれる会社は初めてでした。 プロジェクトのライフサイクルや調整が必要なDB/データマイグレーション含むリリースを早期に経験できたのは良かったと思います。 受入用のタスクを日々確保しておく、というのは目からウロコでした。*4

毎日朝夕と定期的に受入担当の方とリモートとはいえ直接話せる機会があったのは、組織に慣れていない身からするとすごく安心感がありました。 リモートでやり取りしたか否かはあまり問題ではなかったと思います。むしろ、リモートの方が抱えている問題にフォーカスできる気がしました。

自分が今までしっかりとした受け入れをされた経験がないからか、周りのメンバーがプロジェクトの枠を超えてバリバリとバリューを出していく中で、自分は受け入れタスクのみにフォーカスしており他の人に比べてバリューを出せてないことに後ろめたさを感じることもありました。しかし、PRレビューしたり esa.io 上のドキュメントを修正したりなど間接的にもチームに貢献することができましたし、チームとしてのやり方を把握した上で他のメンバーと協調してバリュー出すべきなので、これで良かったと思います。

総評

総評として、この受入プロジェクトは非常に良かったです。 ペアプロ/ペアオペでMisocaのやり方を身につけられましたし、毎日の朝会/振り返りで日々の疑問と不安を解消できました。
Misocaでよりバリューを出していくことを決意させてくれましたし、これからも受入プロジェクトという取り組みがさらに良くなっていくだろうことを感じました。

Misocaには、リモートワーク経験がない人でもRails経験がない人でもしっかりと受け入れてくれる土壌があります。
過去の経験ではなく、これから何を成し遂げていくかにフォーカスしたいエンジニアを募集しています。

recruit.misoca.jp

*1:Misocaは、プロセスやルールを組織やメンバーの成長または対象や状況によって、ドラスティックに変更していく文化があります。このエントリで言及したやりかたも、あくまでこのタイミングかつ対象が thara であることを背景としてあります

*2:このようなプロジェクト専用チャンネルは、受入プロジェクト以外のプロジェクトでも採用されています

*3:channelの人数が0なのはすでにアーカイブされているからです。当時はpublicだったので10人ぐらいはchannelに入って様子見てくれていたと思います

*4:自分が知らなかっただけで当たり前なのかもしれませんが