プログラミングでメシを食えているか?
先日「プログラミングでメシが食えるか!?」の印税通知が届き、発売からだいぶ経ちましたが今でもまずまず売れ続けています。ご購読いただいた読者の皆様には心よりお礼申し上げると共に、書かれている内容のほんの一つでも役立てていただければと思っています。
さて、先週金曜日のLBIサロンの後の懇親会の雑談で、「プログラマーにクリエイティブな仕事をチャレンジさせれば、メシは食える」というような話をしたところ、「プログラマーはそもそもクリエイティブではない職種なので無理でしょ」と言われました。プログラマーは仕様書通りにコーディングするのが仕事なのだから、創造的な仕事ではない、という意見です。確かに、世の中のプログラマーの多くはそのような仕事の仕方をしていて、実際「プログラミングでメシが食えるか!?」の書評でも「夢物語だ」というような批判をいただいたりしました。
しかし、私の考えとしては、せっかくプログラミングのスキルがあるのに、それをベースに創造的な発想をしないのは実にもったえない、という感じです。プログラミングスキルがない状態で独創的なプログラムを発想することはできないことはないでしょうけれど、プログラミングスキルがあり、それをベースに発想する方がより具体的に発想できると考えているからです。
では、なぜ世の多くのプログラマーが創造的な仕事をしていないのでしょうか。
一つはIT業界の構造によるものではないでしょうか。日本の場合、開発を依頼するには信頼が最重要で、それには規模・ブランドで選択するという観点から、大手のSIerがまず元請けになります。SEが仕様の調整や外注管理をしながら、中小のソフトハウスや派遣会社が、請負もしくは委任(派遣など)でプログラマーを提供しているような状態で、さらにそれが多段階の下請構造になっているため、プログラマーは大抵、仕様通りに作らされるような仕事になっているわけです。
別の観点では、そもそも言われるとおりの仕事をする方が精神的に楽、ということもあるでしょう。指示通りに仕事をして問題が起きれば、指示に問題があると言えるので、責任逃れがしやすい、という感じです。創造的な仕事ではうまく行く保証はほとんどない状態で、自ら切り開く動きを求められます。そんな危険な橋を渡るくらいなら、言われるとおりにやろう、という考えです。
教育の問題もあると思います。以前、専門学校の先生に聞いたところ、学生には、「数年プログラマーを経験したらSEを目指し、プロジェクトマネージャーを目指しなさい」というような指導をするそうです。それではプログラマーは下っ端というイメージになってしまいますね。
さまざまな要因があることはありますが、プログラマーの皆さんにも良く考えて欲しいのです。昔ながらの終身雇用はほぼ崩れ、今時5年10年安定して儲けられる仕事などほとんど無いと言われています。そんな世の中で、言われることしかできない自分で良いのでしょうか。プログラミングが嫌いならSEやプロジェクトマネージャーなどを目指すのも良いでしょうし、プログラミングが好きなら、それを活かして、もっと独自性のある取り組みやチャレンジをしなければ、5年後10年後の自分の価値を高める、もしくは維持すらできないのではないでしょうか。誰でもできるプログラミングはますます海外での開発や、あるいは国内でも取り合いになって価格競争に巻き込まれます。言われたことしかやらないでいては、誰でもできることしかできないプログラマーになってしまいます。
それぞれの業界には、スパンの長さの違いはありますが、必ず事業の栄枯盛衰があります。今儲けられている事業が、そのまま続く可能性はまずありません。ゆっくりと衰退して行くケースもありますが、情報化社会では多くの場合、ある日突然新しいやり方が生まれて、一気に事業価値が無くなることも多いものです。自分の仕事の価値が無くなるのをじっと待っていますか?
大儲けするのも難しいものですが、現状維持するのもまた難しいのです。同じことを繰り返していては現状維持はできません。それなら稼げるうちに、余裕が少しでもある間に、次に向けてのチャレンジをしなければならないはずで、要するに「蟻とキリギリス」なのです。プログラマーの価値は何かといわれれば、やっぱりプログラムを作れることで、それを生かして何ができるかで勝負しなければ駄目だと思いませんか。
変化の早い世の中なので、そのうち考えよう、というレベルでは、あっという間に周りに置いて行かれます。今すぐチャレンジしなければ、今すぐ動いてみなければ、と、考え、行動しないと駄目なのです。これが「プログラミングでメシを食う」ためのポイントです。でも冷静に考えればプログラミングでなくても、どの仕事でも同じことですね。
5年前の自分、10年前の自分と比べて、今の自分はどうでしょう?かなり変わったと感じますか?変わっていない人はかなりまずいです。変わっている人でも、次の5年10年はもっと早く変わらないと、世の中の変化に取り残されます。自分が望もうが望むまいが、日本はあまり変化を望んでいないと思おうが、世界はどんどん変わっています。そういう社会で稼いでいくしか選択肢はないわけです。会社や周りを頼って、何とかしてもらうという考えではやっていけない時代になってきているのです。怠けていると、気がついたときには立て直しようもない状態に陥ってしまうのです。
私の会社でもアグレッシブな人・部署と、そうでないところがありますが、会社は慈善事業でやっているわけではないので、この事業は駄目だと判断したらとっとと次の事業に軸を移していかなければ潰れてしまいます。そのときに1社員として次の事業でも価値を発揮できる可能性がなければ、仕事がなくなってしまうのです。会社が何とかしてくれるというのは、変化の早い現代では無理なのです。何とかしているうちに潰れてしまうほど変化は急です。
少し脅迫的な内容になってしまいましたが、自社の社員にもあらためて気を引き締めて前に進んで欲しいということと、プログラマーなんて言うとおりの仕事しかしないんだ、という考え通りに行動していると危険と言うことを何とか伝えたいという思いで書いてみました。何もしてなければ、最後は誰も助けてくれません。自分の価値は自分で高めなければなりません。大手も中小も同じです。会社も戦っていかないと生き残れない時代です。いざとなったら会社は何もしてくれない、というより、会社もそんなに余裕がない、ということです。毎日死ぬ気でやれというような極端なことを言っているのではなく、そういう事実を頭に入れ、少しずつでも先を考え、自ら成長・変化していくことだけが、自分を守る方法と思うべきでしょう。そういうプログラマーなら間違いなくメシは食えます!