デュアルトラックアジャイルとの向き合い方。あるいはエンジニアとビジネスの距離感

昨日(もう日付余裕で回ってるので一昨日だな)Findy さん主催のイベントで話してきた。

speakerdeck.com

背景

近年「エンジニアは事業貢献してこそ」「エンジニアもユーザファーストでビジネス貢献」といった言説がIT界隈で増えて来ている感じがしている。

……とたまたま昨日関連してるようなしてないような話をしている エンジニアとビジネスの距離感の難しさ|ばんくし|note という記事があったので書き出しを真似してみたんだけど。

昨今、ビルドトラップに陥るな、アウトプットじゃなくアウトカムに着目しろ、って言われることが増えてますよね。でも僕は逆張りして、アウトプットにまず着目しろという声を上げておきたいのです。

開発生産性(いろいろある*1)の話をするときに、ディスカバリーとデリバリーの 2 軸で考えるのはコモディティ化してきたと思う。でも、それによって、デリバリーの重要性が薄くなっているとも思っている。両輪と口では言いつつ、意識は最近見つけたディスカバリー側に寄っちゃってるんじゃないか。

ディスカバリーもデリバリーもまだまだ改善の余地があるときに、開発チームはどちらを優先して伸ばすべきか。これは僕は基本的にデリバリーだと思っています。開発チームはね。

デリバリーが先、ディスカバリーが後

作る速度を上げるのがデリバリー、作るものを決めるのがディスカバリーなので、デリバリーは車の整備、ディスカバリーはカーナビの整備と言えると思う。

ナビがポンコツでも、方向ベクトルの角度が 90 度以内に入っていればゴールに近づくことはできるし、稀にドンピシャの方向を示すこともある。でも車が走らなかったらまったく近づかない。高速にアウトプットできるという状態をまず目指したい。

高速にアウトプットできる場合、良い企画に当たったら高速にアウトカムを作れる。企画なんてそもそも当たるも八卦当たらぬも八卦だし*2、当てる確度を上げていくには机上の空論をこねくり回すんじゃなく結果を見て調整するイテレーティブな改善サイクルを繰り返した方が良いよね、というのも経験主義なスクラムをやっている僕らはよく知っている。

なので、良い企画のときには爆速でリリースしてあげたいし、そもそも高速に仮説検証を回せる体制を作っておきたい。デリバリーの強さがディスカバリーの強さを引っ張り上げる。逆は無い。*3

強いチームを作るにはイテレーションが必要

まともに回っていない開発チームのときに、ディスカバリーの問題にしたくないなーとも思っている。これはそもそも論になりすぎるとか、小さな改善が発生しなくなるとかが起きるからです。

まともに回っているとは、ふりかえりが機能して毎イテレーション何かしらの改善が生まれているとか、キックオフが行われたり月例会が行われたりしてチーム全員が自分たちの As Is/To Be を理解しているとか、そういう「ふつうの開発チーム」が普通に備えているべきものを普通にやっている状態を指しています。

チームで同じ方向を目指して開発していくための前提みたいなところですね。この状態になっていないうちに「ディスカバリーにチーム全体がもっと目を向けないと」という風潮になると、本来改善しなければならない開発チームとして機能していない部分が放置される。タックマンモデルで言う統一期、機能期が訪れず、ずっと形成期や混乱期に居る状態。

  • 必要な情報がちゃんと流れる
  • 役割分担が自然とされて阿吽の呼吸で動ける
  • 自分たちの行動規範を持っている
  • チームへの帰属意識がある
  • 目標達成にコミットできる

という良いチームには、イテレーションを回して、コミュニケーションのトラブルを解決した結果、ようやく辿り着ける。改善された実感を得て、このチームなら良くなっていきそうと思えている必要がある。

なので、高速にアウトプットできる、なんでもいいからリリースを繰り返せるチームをまず目指すべきだと思っています。

デリバリーもディスカバリーも 80 点をまず目指したい

80 点を取るまでは 20% の努力でできる。2 つの軸があるならそれぞれ 80 点を取るのをまず目指すべきで、個人の努力とチームの努力で 80 点は数ヶ月で達成できると思う。*4

デリバリーは↑で書いたような普通のチームを作りましょう。ディスカバリーは 90 度以内になりましょう。ここまでは自分のプログラマやプランナーという職種の専門性の話でしょう。

僕はある程度のレベルまではそれぞれ伸ばせが良いと思っている。何よりもコスパが良い。で、ある程度を満たしていないのに反対側に手を出すのは、目の前にある自分が解決すべき問題を他責にする行為なんじゃないかと感じる。

当時もこう書いていた。*5

視座を上げるときのアンチパターン

視座を高く持って視点を探そうとすると,例えば朝会に遅刻をした時に 「そもそもリモートで参加できない状態がおかしくないですか」 みたいな発言をしがちになる。

視座・視点の切り替えは得てして論点ズラしに使われる。 他人の視座に立つというのは,他責にすることではない。

デリバリーが普通になってから、ディスカバリーと高次元にバランスさせた状態を目指しましょう。

相手が自分よりも困っているなら、もちろんチームなので助けに行きたいけど、そうじゃないのに越境してるのは、もうちょっと何かあるだろって思います。

高次元にバランスさせるところが業界の標準的な悩みになっているんだとしたら、そんな素晴らしいことはないですね。逆張りした話をここまで書いてきたけど、当然そうありたいと思っています。

*1:https://qiita.com/hirokidaichi/items/53f0865398829bdebef1

*2:他職種の仕事を貶めるような言い方だけど、プランナー専門職や凄腕の PO が異常に頼りになることは本当によく知っています

*3:当たった結果、金を出して強いチームを作れるようになるかもしれないし、当たり続けることで求心力が高まって強いチームになるかもしれない。そもそも当たらないとチーム解体になるみたいな話も置いてある

*4:何が 100 点で何が 80 点なのかの基準を揃えないと会話が成り立たないので、チームではそういう話をしなきゃいけなかったりします

*5:コロナ禍ですっかりリモートワークになっちゃったので例としてはもう微妙