新体制の有効性を自ら検証、オーナーシップを持つことの楽しさを実感する
現在、フロントエンド開発チームはこの新体制へ移行している最中で、新体制になったら自分自身もオーナーシップを持って開発できるだろうと村田氏は期待を明かした。
だが、村田氏はここで内省する。思えば、以前の体制でも「こういう分野に注力した方がいい」「こうした機能を実装したい」と自分の意見を出している人はいた。主体的に取り組めない原因を組織構造のせいにして、そういうものだから仕方がないと自分を納得させて何も行動していなかっただけではないのだろうか。
村田氏と同様に、半ば諦めて業務に従事していたエンジニアもいるだろう。そうした人たちが新体制になったことで、本当にオーナーシップを持って開発に取り組めるようになるのだろうか。そもそも自分自身がオーナーシップを持って開発に取り組める人材なのかを確かめるため、村田氏は検証の場を探した。そして見つけたのが、リッチテキストエディタの開発だった。
業務内容は、フロントエンド刷新後のページ内で使用するリッチテキストエディタを開発するというもの。kintone本体からは切り出して別のリポジトリで開発するようになっており、フロントエンド刷新で最初にリプレースが予定されている画面ではほぼ使われておらず、影響範囲も小さい。また、CIやテストなども別のリポジトリで開発するため、独立性も高い。
早速、開発に着手した村田氏。画面の刷新を進めるメンバーと実装方針や影響範囲の認識を擦り合わせながら、画面にどういったインターフェースが必要かなどを検討。徐々に必要なメンバーを巻き込んで開発を進めた。品質については自動テストの実装を目標に、これまでQAエンジニアが手動で行ってきたリッチテキストエディタのテスト一覧を再検討し、自動テストに向いている項目を列挙。リッチテキストエディタのテストだけでは完結しないものについては、リッチテキストエディタ単体で確認できるレベルまで分解し、このテストでは何を確認できればOKなのか、どのレベルの品質を担保できれば良いのかといった詳細を詰めながら完成を目指した。
「自動テストを実装して、QAエンジニアとWebエンジニアの両方が品質に対して責任を持てるような仕組みを構築したい」(村田氏)
実際に"少人数のチームで、チーム内で意思決定して仕事を進められる""1つの意思決定が他のチームに影響しない"体制で開発を進めたところ、村田氏は「思いついたアイディアを試しやすく、成功も失敗もすべてひっくるめて自分の責任と捉えられるようになった」と感じたという。何よりも、意思決定の機会が以前と比べて増えたことにより、当事者意識を持って製品とこれまで以上に向き合い、取り組めるようになったという。
「オーナーシップを持って開発するのは楽しいですよ。意思決定の機会が増えて、エンジニアとしての成長も実感できるようになりました」と改めて新体制の良さを実感した村田氏。今後も、開発者や開発チームが自主性を持って積極的にコミットできる体制作りに取り組んでいくと述べた。