ソフトウェア開発するときの兼任についてふわっと

この記事読んで、いいなぁと思ったのだった。前を向いてるところとか。その中で何を優先するべきかを整理してるところとか。

zenn.dev

んで、兼任について今までふわっと思ってたのをふわっと書くだけ書いてみようと思ったのだった。

開発者として仕事をしてるとき

こんな感じ。黒い丸の部分が、僕の担当。

f:id:bufferings:20201220113451p:plain:w400

プロダクトマネージャーとプロジェクトマネージャーは、分けて考える方がいいと思ってるので、分けてかいた。スキルや考える向きが違うから。

兼任して!って言われたとき

特に何も認識合わせをせずに始めてしまうと、こういう「全部のロールで100%」を期待されてしまってたりする。上司からだったり、チームメイトからだったり、自分自身からだったり。

f:id:bufferings:20201220113921p:plain:w400

実際は最初はPdMとPjMの領域の期待値は低いだろうけど、でも「将来的には100%できることを期待してるよ!」みたいなところあると思う。

こういうのだと、疲れてしまう。

実際のところ

できるのって、こういう感じかなぁという印象。

f:id:bufferings:20201220114302p:plain:w400

3つのロールを足しても100%にはならない。プロジェクトの数が増えるとコンテキストスイッチによる損失があって、3つのロールを兼任する場合3つのプロジェクトだと考えてみると40%は損失されるから。(「ワインバーグのシステム思考法 ソフトウェア文化を創る」より)。

でもコードに触れたいなぁ

とか思って、こういう風に動いてしまっちゃうよね。「今日は何にもやってないのにもう定時だ!今からコードレビューしなきゃ!」みたいなの。実際は何にもやってないなんてことはなくて、PdMとして動いてたりするのにね。赤い部分は自分の許容量を超えてる。

f:id:bufferings:20201220120648p:plain:w400

あと、Developerの部分は、DeveloperとDevelopment Managerにも分かれるので、コンテキストスイッチはもう少し時間を持っていってしまうと思う。

んで、何が言いたいかというと

これができているだけで、とてもすごいことなんだよというのを、自分だけじゃなくて周りも認識している状態、というのがいいよなと思う。

f:id:bufferings:20201220114302p:plain:w400

それを認識したうえで赤い部分をがんばってみたりするのはいいかなと。ただその場合も「やらなきゃいけないことができていないので無理をしてでもがんばらなきゃ!」ってなるのではなくて「やるべきことはやったうえで、さらにうわのせでやってるのやで!」って認識がいいなと。

そんな風にふわっと書いてみました。