会社のためvs自分のため
会社のためvs自分のため
機内書き物。(2026-03-08 (日))
主に仕事を念頭に、どういうコードを書くか、プロジェクトの中で自分は何をするか、という話。 会社のため、チームの為に必要な事をやるという立場と、自分のために自分のやりたい事を会社を使ってやる、という立場があると思う。
組織のフェーズや時期による違い
一見すると会社のため、チームのための方が「良い事」に見えるが、ソフトウェア開発においてはそうでも無い。 やりたい事は会社にとって大きな利益になる事があるし、皆がチームのため、組織のためにしか行動していないと、 凡庸で主体性の無いものづくりになってしまったりもする。
ただし、チームのため、組織のための方がチームや組織のためになる事ももちろんある。 何か成功したプロダクトやサービスがあり、それを広げていく事が主な関心事であるようなフェーズだ。 そういう時には、各開発者の作業が、その後に続く開発者に「迷惑をかけない」事が重要になったりもする。 そういう時に、やりたいからと変なコードを書いたり変なライブラリを導入したりする事はコストが高い事もある。
組織のため、会社のために働きたいというなら、後者のようなフェーズの組織で働くのが良いだろう。 ただし、後者のフェーズの組織もそれが永続的に続く事は無い。どこかで国内市場は飽和するし、主要な機能や要望を満たす段階に来れば、 やはり次にはまた創造性が問われる段階が来る。
会社のためが良いフェーズは、一見するほど「普通」の状態でも無い。むしろこれまでのキャリアを振り返ると、そうしたフェーズは3〜4割くらいだったと思う。 人によっては半分を超える人もいるだろうが、もっと少ない人もいるだろう。
現場vs会社全体
自分のための仕事というのは、会社にとってもメリットが多い。 まず、やりたい事をやってもらうのは、コストがかからない福利厚生になっている事がある。 給料を上げたり休暇を増やしたりというのはコストが掛かるが、やりたくない事の代わりにやりたい事をやってもらうのは、コストが掛からない「事もある」。 会社の必要な事と一致していたらコストはゼロだし、会社が必要としている創造性や独自性の源泉になっている場合はコストとごろか利益ですらある。
独自性のような部分は、現場居のチームリーターくらいでは価値を認められない場合もある。 経営陣はまさにそういう事を望んでいるのに、社内から新たなブレークスルーが全然出ない!と悩んでいるが、 それはチームリーダーくらいがうまく奨励出来ていないという事は非常に良く見る光景だ。 だから小さい組織の経験が無く、創業者や経営陣と接点が無い状態でずっと働いている人は、 自分のために働く事を実際よりも悪い事と誤解しがちだ。 その辺は組織の人材の多様性の重要性という部分でもある。
オープンソースとしてライブラリを作ったり公開したりする、というような作業も、そのメリットをチームレベルで正しく認識出来ないが、組織としては必要としている場合がある。 開発者の露出を増やし、良いプログラマを引き寄せる事は、人材の採用を楽にするし、 また採用される人材と組織の望む人材のギャップを少なくするようなメリットもある。 社内で書かれているコードを部分的にでも知れる事は、コードを重視するプログラマにとっては重要な事だし、 そうしたギャップが無い事は双方にとってメリットもある。
自分のためにする事が、会社の事だけを考えるとコストの場合でも、そのコストがそんなに高くないという場合もある。 多少は余暇プロジェクトのような部分もあるけれど、使わない訳でも無い、とか、たぶん使わないだろうけれど試してみる価値はある、みたいな実験的な試み、 今必要としている実装や作業では無いし短期的には費用対効果が合わないUnitTestを書くのに必要な足場の整備などだ。
なお、UnitTestの足場が全て組織にとってコストで不要なものだと言いたい訳ではなく、むしろ通常はメリットの方が多いものでやるべきものでもある。 ただものによってはこれは足場を整備する価値は無いだろう、というものもある。 例えばリリースして全然反響が無く大してバグも出ないままサービス終了になるものは、時間のかかる足場はだいたい費用に見合わない。 当然時間のかからない足場はそういう場合でも費用に見合う。
話を戻して。やりたい事は会社全体としてはやってもらう方がいい事も多いが、チーム単位では誤って抑制してしまう事も多い。 やりたい事をやりたい!といってやっていくのは、そうした風土を改善するのにも役に立つので、単体の作業の費用対効果を超えて価値のある場合も多い。 だから現場の印象よりはやりたい事をやる方が良い事は多いものだと思う。
自分のやりたい事をやる難しさ
自分のやりたい事をやるのは、このように組織にとってすらメリットが多いし、当然自分にとってもメリットが大きい。 だが、難しさも当然ある。 いろいろな難しさが考えられるので、以下にその難しさの話もしてみたい。
自分のやりたい事をビジネスとして成立させる見せかけの難しさ
自分のやりたい事をビジネスとして成立させるのは、より頭を使う必要があるように見える事が多い。 見える事が多い、というのは、本当は頭を使う必要がある事が明白である、というのが実態だと思う。 自分の印象では、チームや組織のための事をする場合でも本来は同じくらいにこの問題は存在している。 だが、それをサボっていても分かりにくく、大多数の社員はそれをサボって日々を過ごすものでもある。 それは見えづらいボディーブローのような感じで組織にダメージを与えているが、 チームや会社のために既存の枠内の作業をしていると、それが隠されてしまう。
自分のやりたい事をやろうとする場合、そうした枠の外にある仕事なので、ビジネスとしてどう成立させるのかをより明白に求められるし、解決する必要もある。 そしてそれを失敗する事も多く、その失敗がわかりやすくしめされてしまう。 実際はチームや会社のための作業もその多くが失敗しているので、これは本当は自分のやりたい事をやる難しさでは無いのだが、 明白な失敗と見せかけ上わかりにくい失敗は、後者の方が抵抗は明らかに少ない。
さらに、明白な失敗の原因が自分であるのが明白になるので、それを背負うリスクを個人が追う必要がある。 これは理想的には組織がうまい事負担を共有してくれるのが望ましいし、そうしないと創造性の欠如により長期的には組織は衰退していく事になるので、 本当は組織が解決すべき問題だと思う。 だが、本来がどうであれ会社員として自分がよりリスクを追う可能性があるのは間違い無い。 そこには仕事をして家に帰ってプライベートを楽しむという個人の側からの視点で考えると、 不要なリスクを追うという要素は組織によっては否定出来ないものとして存在する。
ソフトウェア開発組織は、個人が現場で感じるほどは失敗に不寛容では無い事が多い。 チーム内で評価が低くなる事はあるかもしれないが、実際は評価の差は言うほど重要でも無い。 給料は大して差は出ないし、レイオフの時に好きな事をやってきた人とチームや組織のためにやってきた人のどちらが良い立場かは結構曖昧だ。 特に他の会社に移る方がいいようなケースでは、自分の好きな事をやってきた人の方がずっと良い立場な事が多いので、 実はそちらの方が有利な事が普通にも思う。
やってみていまいちでない何かを思いつく難しさ
自分のやりたい事を持つ事自体に難しさがある。しかも自分のやりたい事が実現可能でしかも面白い事である事であるのには難しさがある。
これは趣味でコードを書いている人なら当然知っている事である。 やりたい事を思いつく事自体はそこまで難しくなくても、やってみるといまいちな事は多い。 やってみたらいまいちだった、という失敗は、ある程度は必要経費でもある。 だが打率は重要だ。 やってみたい事のうちの幾つかはモノになる、というためには、やってみたい事にセンスが必要だ。
このやってみたい事と現実の折り合いをつけるのは、創作活動の本質的な難しさとしてある事で、 自分のやりたい事を仕事でやる場合にも当然あるものだ。 上手くやるには経験が必要だし、失敗も必要だ。
そもそもやりたい事なんて無い
そもそもにやってみたい事が無い、というプログラマもいるだろう。 自分のやりたい事にはある程度の創造性が伴う。 そうした創作活動的なものがそもそも苦手な人はいる。
ただ、この辺は文化の要因も大きいとは思う。 最初から仕事とはそういうものを考えてやっていくものだ、 と思っていれば、意外と多くの人は出来るのでは?という気もする。 この辺はやっていると必要な「筋肉」のようなものがついていくという類の話で、 そういう事を殺して仕事をする事になれると出来なくなっていくという側面は強いと思う。
だから言うほど難しく無いのでは?と個人的には思うが、実際の所は良く分からない。
自分のやりたい事を無理してやらなくてはいけない度合いの時代変化
自分のやりたい事を仕事でやる難しさは確かにあるし、ある種の適性を求められるのも間違いない。 で、そういうのが苦手だったりやりたくない人もいるだろう。
以前はそういうのが苦手なら無理してそんな事はせずに、 チームや組織のための事をやっていくのが求められている場に行くようにすれば良い、といえたと思う。 そういう会社は、先に述べた通りに永続的にそういう状態で居続ける訳では無いが、 そういう状態から脱してしまったら転職すれば良い。 ある程度渡り歩いて行けば、ずっとそういう事だけやって生きていく事はむしろ容易であった。
ただ、自分のやりたい事をやる必要性みたいなものは、時代と共に変わっていっているとも思う。 今の時代、これからがそうなのかは良く分からない。まぁこれからの事はいつも分からないが。
自分が新卒の頃、日本はITベンチャー大ブームというか、いわゆるライブドア・ショック以前だった訳で、 東大を中退してベンチャーを起業するのが流行ってたような時代だ。 始まりは本当に何をやるかも決めて無くて、とりあえず起業してみた、何しよっか?と創業メンバーで集まって話し合う毎日、みたいなノリだった。
あの時代は、自分のやりたい事はかなり強く求められていた時代だった気もする。 ただソフトウェア開発におけるメーカーの存在感が今よりももっとずっと大きく、 そういう所では逆だった気もする。 ただベンチャーの時代だったとは思うので、時代としてはやはり自分のやりたい事を求められる度合いは強かったんじゃないか。
LLM以前の2015年のあたりとかは、中堅優良企業が存在感を増していて、それほど自分のやりたい事を求められていない時代だったような気もする。 別に自分のやりたい事をやっていく事は出来たけど、必要だったという感じでは無い。 チームの課題、組織の課題をこなしてくだけで良いという状況が多く、そういうのが好きな人はそういう事だけやっていっても特に問題はなかったし、 それが多数派だったような気もする。この時代は結構長く続いたような気はする。
そして2026年現在は、正直まだ良く分かってない。 だけど、ふたたび自分のやりたい事をやる事を求められる時代が来たような気もする。 コード生成が完全では無いが有効に機能するようになってきて、 これまで組織のため、チームのため、という形で存在していた仕事が圧縮されていっている一方で、 自分のためにやっていた仕事は大して変わっていないので、相対的に自分のためにやる仕事が残っていっているように見えるし、 組織としても重要度が増している気がする。
なんか先が見通せず良く分からない変化が激しい時代では、自分のやりたい事を求められる傾向があるのかな?
現在の認識はあまり自信は無い所だが、もし正しいとするのなら、 自分のやりたい事をやる難しさに、これからは多くの人が向き合って克服していく必要があるのかもしれない。
あまりうまくまとまらなかったのでこのままRandomThoughtsに置いておく事に
もともとは機内書き物としてブログにするつもりで書いていたが、 最後の結論がどうもしっくりこないのでこのままRandomTHoughtsに置いたままにする。