ちょっと前に、現状の課題をインタビューした時に、ある人が「仕様が出てくるのが遅い」というのと、「仕様通り作るのは面白くない」と言っているのを聞きました。わがままな話に聞こえるんですが、気持ちはとてもよく分かります。
仕様が出てくるのが遅い
これにはいくつか原因が考えられます。
- 仕様をまとめる作業が遅い
- 何を作りたいのかを決めるのが遅い
1に関しては慣れとか経験の問題もあると思います。さらに、綺麗なドキュメントを作りたがったり、綺麗なものが必要だったりする場合もあるでしょう。
それよりも問題は、2つ目の「何を作りたいのかを決めるのが遅い」場合だと思います。
目に見えている課題を解決したい場合は、解決策を考えるのが難しかったりすると時間がかかりますし、課題すら見えていない場合は、インタビューや現場の観察によって探すことからはじめなければなりません。これは時間がかかる。
そもそも、何を作りたいかすらわかっていない場合はとてもやっかいです。僕の経験だけでも「作んなきゃいいのに」という時がよくあります。
人の頭の中にあるものを形にするのは、とても難しい作業です。
仕様通り作るのはつまらない
なぜこう思ってしまうのでしょうか。
- 言われたことをこなすだけじゃ満足できない好奇心がある
- 自分の中でやりたいことがあって、それを実現したい欲求がある
1に関しては、出てきた仕様より良いアイデアが浮かんだ時に思う時がありました。僕の場合は、楽をしたい人間なので、理論は成り立っているけど、理解するのが難しく、複雑すぎる仕様を見ると、シンプルにしたい欲求があります。
また、エンジニアとして物心がつくと、言われたことをこなすだけだと、クリエイティブな部分がすり減っていく気がしてくる気持ちもあるでしょう。
2に関しては、ソフトウェアの世界はどんどん新しい技術や、面白そうなアイデアが登場するので、「自分が試したい」と考えてしまいます。
ただ、いろんな本でも書かれていますが、自分がやりたいことを押し通すのは、あえて強く言うとエゴでしかないと思います。自分のキャリアのため、興味のため・・・といった視点は、組織内で様々な害をもたらします。
VSじゃなくてバランスを取る
僕が見ているチームの場合、徐々に開発チームからもアイデアを出していくことを促していきます。アイデアを双方向に流しあうことで、認識を深め発見を増やすためです。
例えば、「確認が必要」と言うならば、「提案をしよう」とつっこんだり、「どっちがいいかわからない」というなら「どっちがおすすめかは決めよう」とつっこんだり。受け身ではなく能動的な姿勢を体感してもらいます。
多分、自分の頭で考えることがいい刺激になるのではないでしょうか。
さらに、そこで新技術が魅力的ならば、リスクを背負ってのチャレンジも時には必要だと思います。こういうやりとりを通して、自分のやりたいことを実現するための「働き方」や「考え方」も、身についていくんじゃないかなぁと思うのです。
最後に、それでも判断に困ったときは、単純に自分たちのゴールに対して問いかければ、大抵の場合、答えは出ました。
「それは、僕らが達成したいゴールのためになるのか?」
ゴールはサービスに関係するものであったり、ユーザであったり、色いろあると思いますが、この質問を投げかけられたメンバーが言うには、自分自身がなんのために働いているかを考えるきっかけにもなるみたいです。