無印のプログラマという夢
単なる「プログラマ」でありたいと願っていたが、その夢が破れつつあると感じる。今の自分はモバイル・プログラマである。今から他のものになるのはだいぶ大変。
気のせいかもしれないが、世の中からも単なる「プログラマ」は姿を消しつつあるように見える。だいたいもうちょっと限定がついている。Frontend engineer, backend engineer, SRE, data scientist とか、いわゆるインターネット企業の中だけでもこれだけある。自分が学生だった 15-20 年前にこうした細分化はなかった気がする。もちろんゲームとエンタープライズのような業種の壁はあったけれど、それ以上は細分化していなかったような。
自分の視野が狭かっただけで、昔からそれなりに色々あった可能性はある。逆に、自分と同年代の知り合いにもたとえばガラケー向け組み込みから現代的なモバイル、ウェブ、今はクラウドバックエンドと河岸を変え続けている人もいる。だから職能の細分化にしろ分野の壁にしろ必ずしも一般化できる普遍的なものではない、かもしれない。
と前置きした上で、細分化が実際におきているとしたらそれはなぜだろう。情報産業が成熟したからと考えるのが自然に思える。成熟に伴い給料は上がり世間から認知もされた。それと引き換えに専門化を求められた。
成熟の程度は産業の中でもばらつきがある。自分は大企業勤務なので細分化はより顕著に感じる。ここには自分がどうやってもたどり着けない専門家がたくさんいる。一方で比較的成熟の浅い、若くて小さい企業ではより広い職能が求められる。産業全体の成熟と産業の内側での spectrum を区別するのは自分には難しい。
特に細分化は進んでいないとしたら自分の感じているものはなんだろう。たぶん老化、よくいえば成熟、なのかもしれない。一人前に給料をもらうための期待値が昔より高くなった、これが成熟。一人前であるための能力を新たに獲得するのが難しくなった。これが老化。期待値が高いのは obligation のためでもあるから、人生の都合という面もある。
産業全体としての職能の細分化と自分の立場を区別するのもやはり難しいし、区別することに大きな意義も感じない。自分の前に職能の壁があるのはどのみち事実だから。
有り余る能力があれば、あるいは経済的な自由度が高ければ、職能を超えて「無印のプログラマ」、ジェネラリストでいることができる。自分にはそれがない。
専門家になるというアイデアを受け入れることはできないのか。自分は既に一度ウェブブラウザの専門家になるのに失敗し痛手を受けている。そして専門にしようと期待していた Android を好きになれず、再び失敗している。専門家のなりそこないである自分という事実を認めたくないから無印のプログラマというファンタジーに逃げ込もうとしている面はある。
ただ純粋な逃避でもないと思う。テクノロジは移り変わる。時代にあわせて自分の専門を切り替えていかないとやがて行き詰まる恐れがある。無印のプログラマは、素朴なジェネラリスト信仰ではなく専門を乗り換えられる実力への aspiration でもある。
そう考えると、職能の壁と感じているものは時代の流れの速さに過ぎず、自分の不安は時代から取り残される恐怖なのだろうか。そんな気がしてきた。職能の細分化とかいうのは年寄りの愚痴だったか。腑に落ちた。