プログラマの給料が安いのはプログラマのせいであるわけがない

ごめん、言いすぎ。何事も極端に言うと本当のように思えてきてしまうものでありますが、そんな単純な話ではないですよね。
さて、僕が思うに、プログラマーってのは需給バランスが悪すぎなんですよね。というとちょっと違うかも知れませんが。大体日本の(特に業務系の)プログラマーの大部分の生産手段(プログラマー自体のね)は以下の通り

  1. 未経験者が新人として入社
  2. (省略されることもある)新人研修
  3. OJTという名の下っ端労働
  4. 死ぬまで奴隷か看守に上がるかの分水嶺

プログラマーを技術職だと思っている人は誰ですか?日本のプログラマーの95%はプログラマーではなくコーダーですというのは良く言われる(※数字は適当です)ものですが、日本のコーダーは事務職でありかつプログラマーの生産物を求められています。無理だって、この生産(教育)方法じゃあ。生産性も何もあったものじゃなくて。
でもなんでこういうことになっちゃうか。そもそもプログラマーには明らかに素質が求められます。入社時点でものを知っている必要は無いけれど、明らかに思考の方向性がプログラマーに向いている人と向いていない人がいて、向いていない人は速攻でクビにするべきなんだけど、そうもいかない。となれば、そんなクビに出来ない人々でも仕事を出来るお金の貰い方をしなければならないのです。規模が大きくなればなるほどそう。
じゃあなんでそういう採用の仕方になっているかというと、一つは日本人はまじめなのと、それなりに教育水準が高いから、本来の素養が無くてもなんとかやろうと思ったら業務プログラムぐらいは時間を引き換えにすればできないこともないのですよ。効率を度外視すれば。そしてITバブル期に人手が足りなかったことでそういう仕事のやり方が身についてしまった。もともとはユーザーもベンダーも手探りの中一緒にやってきたんだけど、それも黎明期だから方法論とかは無くって、その当時のつまり高度成長期でやる気だけでなんとか乗り越えてきた時代のものを未だに引きずっているわけです。
本題ですが、じゃあこの境遇からプログラマー自身の力で抜け出せるかというと、以下の二つの要求が満たされないと無理ですかね。

上のほうの条件が満たされればいいような気もするけど、そうなっちゃうと給料が上がることで本当に優秀な人材がプログラマーになりに来てしまうと現在待遇の悪い人はもっと仕事が無くなるわけで。なので、後者も必要。ところが、みんなが本物のプログラマーになると、たぶんプログラマーは供給過剰になってしまいます。上手くサボって働いた振りをできればよいけど、空気読まないで他人の5倍くらい生産する(生産性が良くなった分を全部仕事につぎ込むとこのくらいは楽勝ですよね)と、残りのみんながクビになる。
しかし、(精神的に)死んでも死んでもかわりが供給されるというのも、これだけ現状が知れ渡るとそろそろ終わりかも知れません。そして本当に仕事が回らなくなったら雇用側は気付くでしょう。事務職みたいなプログラマーは最終的にはお荷物だということに。どんなにデスマーチを生き抜いてきたつわものであっても。システム会社が雇用に行き詰ったとき、プログラマーの給料は上がり、人数は減らされることになると思いますよ。
本物のプログラマーにはなれないけれども、この仕事で食べて行きたかったら業務の知識や調整能力など、本物のプログラマー以前の仕事に活路を見出すしかありません。でも周りを見ているとコーダーとしてのレベルも低いまま、とりあえずルーチン的にこなしていけばなんとか食べていけるというような仕事をしている人が多いんですよね。この待遇に耐えればとりあえず生きていけると思っている。そして今のところそれは事実であり、その事実が業界の足を引っ張っている。待遇の改善を求めず唯々諾々と命令に従うのは職を失う怖れがあるからです。
最初の話に戻ると、つまり今の日本のIT産業は人材の構成が歪んでおり、その原因を作ったのは雇用側です。残念ながら、大部分のプログラマーは本来適正があるわけではなしにこの仕事をしているのですから、本物のプログラマーになれるわけでもなし、更に代わりはたくさんいるという状況で何を求めることが出来るか。ただ、いつまでも歪んだ状態でいるわけではありません。だから、少しでもこの職にしがみつきたい人は抜け駆けをしなければならないのです。生き残りをかけた戦いはもうすぐ始まるかも知れません。