プログラマと転職について

以前e-maidオフで仲良くなった、オンラインボーカロイドタイピングゲームTypenist開発者のもろへいやさん(id:quintas)と、ちょっとIT業界の話をしたのでコピペ。(本人承諾済)
IT業界にこれから入る学生プログラマに、現在IT業界にいるプログラマが、プログラマはほかの業種よりも転職がしやすい仕事だよ! ってのを、なるべく専門用語を使わずに説明してみました。かなり長い上に説明がへたくそなので無駄な部分とかもあるかもですが、あと、あくまで私の個人的な考えと経験に基づくことなので、IT業界すべてに当てはまるわけではないと思いますが、新人とか、これから業界に入るプログラマの参考になれば。

人脈が広いと仕事選びができる(前置き)

maju : 結局、仕事任せる任せないって人格への信頼とか、技術への信頼とか、色々な信頼が重要だけど、知人の会社に誘われるとか 知人が仕事くれるなら 人格と技術力への信頼両方顔パスだし 知人が仕事を紹介してくれる場合、技術力はしばらく様子を見て・・・ってなるけど、人格はだいたい形式だけの軽い面接でよっぽどじゃなけりゃ通ったようなもん。だから人脈広いと、仕事の面接で落ちるとかがないから仕事探しの労力がすげー低い
もろへいや : なるー
maju : なんか給料やすいなーとか ちょっと社内の雰囲気悪そうとか やばげなプロジェクトだな・・・ とか 逆に仕事選べる立場になるから、自分が得意な技術の仕事とか 自分の勉強したい技術が勉強できる仕事とか 選べると スキルアップにもプラス

  • 人脈が広いと仕事を紹介してもらえる。紹介のある仕事では普通は面接は形だけでパスできる。仕事探しに労力がかからない
  • 仕事探しに労力がかからないと、逆に仕事を選べる→スキルアップ

プログラマって転職するのが普通なの?(質問提起)

もろへいや : 一つ気になることが。技術職ついて、一つの会社に就職してとどまることは普通じゃないんですかね?
maju : そういう人もいるけど、そうじゃない人も普通にいる。仕事できる人ほど転職に対しての抵抗感は低い。ただ、最初の数年は一つの会社にいて 会社のしくみとか 業務の回し方とかを色々勉強したほうがいいとはいわれてるね。まあ、あくまで言われてるだけであって 俺の友達の 俺と同い年のフリーランサーのうち 2人は正社員経験もほぼ皆無で即フリーになったくせに月100万くらい稼いでるから個人の力量のほうが大きいとは思う

  • 仕事ができるプログラマほど転職への抵抗感は低い
  • 稼げるかどうかは個人の力量も大きい

IT業界ってほかの業界と共通しないところが多い?

もろへいや : なるほどー・・・ IT関係ってどうも一般企業と共通しないところが多い気がしてよく分からない
maju : んー、一般企業って具体的にはどういう業種?
もろへいや : そだなー、サラリーマンとか、営業とかについてる会社勤めの人かなぁ
maju : サラリーマンって、外見はスーツだから同じに見えるけどやってる仕事はみんな全然違うからサラリーマンとか一般企業って一括りにできない。まあ所謂外回りの営業なら大体似てるけどね。IT企業にも営業はいるよ。ほとんど全ての企業に営業をやる人とか部署がある
もろへいや : そうなんですか、やっぱり社会に出ないと全然分からないなぁ
maju : うん、それはあると思う。まあ、想像すれば十分理解できると思う。今から簡単な経済の本とか読んどくといい。会社ってのは仕事うけて やって お金貰うっていうフローがあるじゃん
もろへいや : うん
maju : IT業界って聞いてイメージするのって、仕事やる部分だけじゃね? さっき「一般企業と共通しない」って言ったのはその部分しか視野に入れてなくね?
もろへいや : それはある
maju : うんうん、でも、実際に仕事でプログラム作る場合、必ずその前に「仕事もらう」ってターンがあるじゃん
もろへいや : 確かに確かに
maju : ↑の「営業とかサラリーマン」はそこで重要なわけ。俺が「一般企業って言っても業種によって全然違う」って言ったのも、仕事もらう(=営業)部分はどこもある程度同じだけど、仕事貰った後は 建設業 製造業 小売業 サービス業 全然やることが違うよね
もろへいや : 違う

  • どんな業界でも、営業についてはある程度似ている
  • 中核業務については、IT業界だけが特別なのではなく、業界によってさまざま

プログラマが転職しやすい理由(1)専門職である

maju : ITって転職に抵抗ないの?→ないよ→一般業とIT業界が違うからよくわからん ていうのが話の流れか
もろへいや : そんな感じ。
maju : プログラマって専門性が高くて普通の人じゃできない。求人あっても申し込みが少ないから、プログラマというだけで就職が有利。これはわかる?
もろへいや : うん、 需要と供給みたいなものかな?
maju : そそ。学校のクラスに例えると、たぶんクラスの中にプログラムできる奴って1人か2人くらいじゃん? コンビニバイトとかはクラス40人誰でも(やりたいやりたくないを問わず、物理的に)できるから 俺時給1000円でやる!→あたし900円でやります!→俺が800円でやる!となって安くなる。プログラマは物理的にもろへいやしかできないなら、言い値で雇って貰えるので時給10000円になったりする
もろへいや : hmhm
maju : で、時給800円とか900円とか1000円の仕事(=コンビニバイトとか)は、転職しても100円か200円くらいしか違わないじゃん。でも時給10000円だと、会社による給料の誤差の割合がコンビニと同じなら、1000円とか2000円くらい違うよね
もろへいや : うんうん
maju : そうなると、転職の労力はコンビニバイトもプログラマも一緒だけど、転職成功したときの利益はプログラマのほうが大きい。もちろん失敗したときの損失も大きいけど、例えば平均時給が10000円の業界で今時給8000円なら転職した方が給料増える確率高そう
もろへいや : なるほどー
maju : とりあえずこれがひとつの理由

  • 専門職で基本的にほかの業種よりも給与水準が高いので、転職時の賃金変動が大きい。
  • 現在給与水準の低いプログラマは、転職にかかるコストに対する、転職で得られる賃金上昇のメリットがほかの業界よりも大きい

プログラマが転職しやすい理由(2)業務にかかわる人的要因の割合の大きさ

maju : 2つめの理由。システム開発っていう仕事のために必要なのはPCとプログラマ、比較対象として、コンビニだとコンビニと店員、トヨタだと自動車工場と工員が必要、これはおk?
もろへいや : おk
maju : で、システム開発・コンビニ・トヨタ どの現場でも、仕事してる人が同じくらい超レベルが高いとする
もろへいや : hm
maju : ここで全員が転職か独立したとする
maju : プログラマなら、次の職場でもそのプログラマの技術はそのまま生かせるよね
もろへいや : うんうん、技術が使い回せるってことかな
maju : プログラマが独立しようとすれば PC買えばおk
もろへいや : ネットとPCさえあればいい?
maju : コンビニ店員が独立するにはコンビニが、自動車工員が独立するには自動車工場が必要。人間の給料が100万だとして、PCが10万、コンビニが1000万、自動車工場が1億すると、プログラマは、コンビニとかトヨタよりも仕事を回すための全要素に占める人間の割合がすげー大きいのがわかる
もろへいや : hm
maju : 人的要因には、仕事のノウハウとかも含まれてる。自分が作ったシステムを保守するには 自分が圧倒的に効率がいいとか。コンビニだと商品を本部に注文してそれが届くシステムとか、工場だと工場そのものの機械の配置とか、多くの業種だと機械とか全社のシステムとかみたいな仕事に必要なノウハウのうち、IT業界はプログラマのスキルに占める割合が大きい
もろへいや : 技量すな
maju : 技量っていうか、一人の人間としてみると、プログラマ=コンビニ店員=自動車工員 だけど、仕事内容を見るとプログラマ=コンビニオーナー=自動車工場オーナーに近い
もろへいや : へー、それは意外だった
maju : プログラマが転職するってことは、コンビニ店員が店ごと転職するとか 自動車工員が工場ごと転職する感じ
もろへいや : なるほどー
maju : これは、転職しやすい+フリーランスとして自営業しやすいっていう大きい理由になってるね。トヨタだと、客「車くれ」→トヨタ「はい」→[工場]→工員「車つくるよー」みたいな感じ、客と工員の間に工場がないと車作れないけど、プログラマなら 客「プログラムくれ」→社長「はい」→プログラマ「プログラムつくるよー」みたいな感じで、間に社長とか会社なくても 客「プログラムくれ」→プログラム「おk、プログラムつくるよー」ってできるよね
もろへいや : レスポンスが早い、でいいのかな?
maju : まあそこはいろいろ問題点もあるけど、メリットがあるとしたら客のメリットね。今回問題になるのは、間に社長とか会社がなくてもプログラマは仕事ができるというところ。トヨタが工員に「給料へらすぞ」て言っても工場ないと仕事できなくて給料もらえないからやめれない。プログラマは会社に「給料へらす」って言われたら、えーじゃあ俺自分でやるわばいぶーって辞めても、客から直接仕事もらえりゃ生きていけるじゃん
もろへいや : うんうんー
maju : それが2つめの理由かな
もろへいや : なるほど、わかりやすいです

  • プログラマは、ほかの業界よりも雇用主やオーナーへの交渉手段として「転職」「独立」を選ぶ敷居が低い

プログラマが転職しやすい理由(3)能力格差

maju : で、3つめ。これは、プログラマのスキル格差。コンビニバイトの仕事内容は通常の店員だとだいたい 掃除、レジ、品出し、倉庫整理、商品発注 くらいかな
もろへいや : hm
maju : とりあえず一通りできる店員なら、まあ掃除の綺麗汚い、レジ打ちの早い遅いとか、品出しで商品そろえるの綺麗、雑、とかそういう違いはあってもまあみんな同じ。トヨタの工員なら、新人と熟練の人だと10倍くらい作業速度が違うかもしれないけど
もろへいや : うんうん
maju : プログラマの場合は、100倍とか1000倍くらい性能差があったりする
もろへいや : なるほどー
maju : これは プログラマ1000倍説 っていう有名な言葉があるからぐぐるといっぱいでてく。実際、DBが絡むと低レベルプログラマとスーパープログラマでは普通に1000倍以上性能差がある。低レベルプログラマが作ったものだと 毎日のデータを処理するのに5,6時間かかってるのが スーパープログラマが作り直すと1分ですんだりする
もろへいや : おおお
maju : たとえば、生徒IDと点数のあるuser_score っていうテーブルがあって点数の高い順に出力したいなら普通は select score from user_score order by score desc ってやると一発じゃん
もろへいや : うんうん、Typenistでもランキングで使ってるかな
maju : ここで、order by を知らないプログラマがこれをやろうとすると、select score from user_score でとってきたデータをソートしないといけない
もろへいや : しかも全件取得だから負荷も大きそう
maju : もちろん、DBはデータを効率的に扱うためのシステムだし、selectした時点で全データをなめてるから order byは一瞬で終わる。ところがphpだとそもそも言語が遅いし、配列をもっぺん見るからもっと遅い。そして、一番レベルの低いプログラマはソートのアルゴリズムを自分で実装する。
もろへいや : うわー
maju : phpにはsort() っていう関数があるんだけどそれを知らないので自分でソートを実装する
もろへいや : そりゃ6時間の差も出るわな・・・
maju : うん、そのレベルで月40万もらってる人間がまじでいっぱいいる
もろへいや : ぬう
maju : 自分が入った会社の、プロジェクトリーダーがそういうレベルで、40歳で40万もらってる、自分は20歳で20万もらってる、そういう会社に5年も10年も勤め続けるのと、違う会社に転職しようとするのと、どっちが自分のためと思う?
もろへいや : 違う会社だろうと思う、もちろん
maju : うん、プログラマ自身が転職を強く意識する。これが1つ。もう1つ、会社側の意識。その40歳で40万もらってる人はレベルが低いから、処理に6時間かかるけど「一応」仕事はちゃんとこなしてるじゃん。会社側もそれは承知してる。そこに「俺これ1分でできるよ! 今までこういう仕事してきてこんな実績あるよ!」っていう人がきたら、仕事が回ってて手は足りてても雇いたくなるんじゃね?
もろへいや : 確かに
maju : まあ実際に仕事してるところ見たことないからいきなり50万は難しくても、30万なら出るかもしれない。元々20万だったのが、いきなり30万になる
もろへいや : それは美味しい話
maju : これがコンビニだと、「俺、ここのバイトのひとよりレジ打つの10倍速いっすよ!」って言っても、十分人数が足りてる場合「んーまあ人間足りてるし、またこんど足りなくなったらおねがいするね」ってことになると思う そもそも求人出さない。システム会社はだから人がいてもだいたい年中ずーっと求人出してる。いい人がきたら即確保したい
もろへいや : だから求人いつも出てるのか
maju : うん
もろへいや : なるほど!
maju : 要は、ぱっと見 業界にシステムエンジニアがいっぱいいて どこの会社も社員がそれなりの人数いて仕事回してるようには見えるけど「使えるプログラマ」はけっこう少ないので、仕事ができるプログラマは転職しほうだい
もろへいや : それがプログラマっていう職種の特徴?
maju : うん
もろへいや : ほー、かなり納得。参考になる話ありです

  • たまたま入っちゃった会社がレベル低かったら転職したほうがましだよね
  • 能力あるならベースアップ稼ぐより転職したほうが一気に給与水準上がるよね

長いよ

maju : 長くなってごめん、まだまだ話あるけどあんまり長いとうざいなw
もろへいや : いやw やっぱり自分が入ろうとしてる業界の詳細が聞けたのはかなり嬉しかったです。ありがとうございました

  • 長くてごめんなさい