好きこそものの上手なれ。でもね、好きなだけでは上手にはなれないよ。

SEをやってるのですが、この業界「プログラミングが好き」で志望してくる人がいます。この「好き」っていうのは、なかなか厄介で、一つの動機としてはいいのだけれども、仕事で求められるモノとごっちゃになったらだめなのです。


ウチの会社の場合、最初の2、3年はコーディングをメインにします。このころ「好き」なひとは嬉々として仕事に取り組みます。
その後、徐々に「どんな画面デザインがいいだろう?」というシステム設計に移っていきます。この頃も総じて楽しそうにしてます。
その次は「仕事を効率化するためには、どんなシステムがいいだろうか?」というユーザー業務の効率化についてのシステム全体の設計です。この辺りから「好き」なことと違う事を要求されて、だいぶややこしくなってきます。
最後は「業務のこの辺りが問題なので、そこを変えましょう。そのためには、こういうシステムを用意して」という業務改革の話になってきます。プログラミングと全然違う話ですので、もう無理です。


要は、だんだんユーザーと話をする事が多くなっていき、ユーザーから指示されていたのが、提案(指示)するようになっていきます。それに従い、「好き」で会社に入った人はつらくなってきます。だって仕事の内容も求められるスキルも全然違いますから。で、「もっとコーディングしたい」という希望を出す人も出てきます。ところが、年次を重ね給料が上がってしまっているため、会社は許してくれません。


一般的に動いているシステムの中身は「とりあえず動くもの」「ちゃんと作っているもの」「よくできてるもの」と全然違うのですが、パッと見は同じように見えるので、それなりに動けば「できた」とされ、仕事は完了します。会社が求めるプログラミングはこのレベルなのです。*1


それでも割り切って「好きなプログラミングをしたいです。評価もいりません。新人並みの給料でいいです。」と言う人もいます。ただ、向上心を持ってそういうのならOKだけど、今の自分なら楽にできる仕事をやり続けたいというのはちょっと違うと思うのです。


ホントに好きなんだったら、向上心を持って頑張ってほしいわけです。それこそプログラミングの世界なんて限りなく広く深く続いていってるのだから。そしてスキルを身につけて、それが評価される会社に移ってもいいと思います。もちろん残っていっしょに頑張ってほしいですが。


ということを、あの人に言ってみたい。

*1:もちろん、「よくできている」方がいいわけですし、そういうプログラミングができる人もいます。でも、ウチのような会社にいると「そんな人だからこそできる仕事」がないので、評価されにくい、ということになります。まあ役不足というやつです。