テスターや運用保守の仕事からプログラマー職に昇格する方法
テスターや運用保守の上級職がプログラマってわけでもないので、『昇格』って言葉を使うのは正しくないかもしれないですね。
ただ、ブログの読者の方たちから、
「テスターからプログラマーに昇格したいんですけど」
みたいなメールをよくいただくので、イメージとして分かりやすいかと思って『昇格』って言葉を使ってみました。
私自身、運用保守からプログラマー職へ昇格というか転身した経験があるので、そちらを紹介します。
経験がないからプログラマー職は無理だって?
新入社員時代の話です。
私は専門学校卒業してすぐに新卒でSIerというかソフトハウスというか社員数80名くらいのシステムベンダーに入りました。
3ヶ月間研修を受けて、最初の仕事はプログラマーの仕事でした。3ヶ月のプロジェクトだったんだけどもふつうに仕事できて現場での評判も良かったんですが、次の仕事がなぜか運用保守のオペレーターの仕事だったんです。
システムに障害が発生した際に、障害レポートが手書きで届くんで、それをひたすら端末で入力するっていう仕事でした。
オペレーターというかキーパンチャーみたいな感じですよね。
上司に「こういう仕事じゃなくてプログラマーの仕事がしたいんですけど」って言ったら、
「君はまだプログラマの経験が十分にないから無理だ」って言われたんです。
今だったら上司の発言が矛盾してることが分かるし、反論もできます。
- 経験ないって言ったけど、最初の仕事プログラマーの仕事だったやん?
- 経験がないから仕事できないって言うんだったら、その仕事するための経験をいつするんですか?
いくらでも言えますよね。
当時は新入社員だったので、「自分はまだまだダメなんだなぁ」みたいな自己嫌悪に落ちてしまいました。
落ち込んでいても仕方がないのでオペレーターをやりながら、時間を見つけてプログラムの勉強をしました。
チャンスに備えて努力しておく
私は2000年入社なのでずいぶん前の話です。
当時、業務システムのWeb化が始まった時期でした。Javaが仕事で使われ始めた時期でもあります。
今じゃJavaって古くて堅牢な技術みたいなイメージですが、2000年だとJavaは最先端って感じだったんです。
直感的に「Java流行りそうだな!」と思って独学をはじめました。
それで、そのオペレーターの仕事は9ヶ月間ぐらいやって、次の仕事はC言語でバッチ処理を開発する仕事でした。それを1年くらいやって、次の仕事がJavaでWebアプリケーション開発する仕事でした。
上司の言葉を鵜呑みにしない
大きめのプロジェクトで同じ会社の先輩社員もたくさんいました。
私のことを「君は経験がないからプログラマーの仕事無理だ」って言ってたぐらいだから、
「じゃあ経験のある先輩方はさぞ凄いスキルを持ってるんだろうな」
と思って楽しみにしていたのですが、全くの期待外れだったんです。私が一番できるくらいだったんです。
Javaは当時新しい技術だったんで、まだやってない人が多かったのはタイミング的に仕方ないかもしれませんけど、それどころか基礎的なことが全然身についてない人たちがいっぱいいたんです。みんな私より先輩ですよ。
上司は私のことを「経験がないからスキルが足りない」と言ったのに、
「私より経験のある先輩が私よりスキルがない」
つまりは上司の言うことを鵜呑みにしちゃいけないってことです。
だから、上司に批判されて「自分は全然ダメなんだな」って自己嫌悪してはいけないんです。
本気で自己嫌悪して「自分なんてダメだ、プログラマは無理だ」ってあきらめちゃったら、独学する気力も起きなかったでしょうし。
実際、私と同期の人で全然プログラマーの仕事やってない人いるんです。
オペレーターとか運用保守の仕事から入ってずっと触れ続けてるんです。もともとはプログラマーになりたかったはずなんですけどね。
今どうしてるかはわからないけれど、新卒で入って例えば5年間、運用保守の仕事やってたら、おそらくその先も運用保守の仕事を続けることになると思うんです。
それを変えるには運も必要ですが、やっぱり自分自身の行動が重要です。
自己嫌悪は可能性をつぶす
行動を起こすには内面からです。自己イメージというか自分が何をやっていきたいかってことです。
「自分はこういうことができるんだ」っていう自己効力感みたいなのってすごい大事です。
自己効力感がないと学ぼうっていう気持ちも起きないから学ばない → 学ばないとスキル身につかない → スキルが身につかないから自己効力感が上がらない
っていう悪循環になってしまいます。
私の場合も運良くJava開発の仕事が3年目で来ましたが、それまでに独学するなどの準備をしてなかったらあまり活躍できず、上司から「やっぱり君は経験がないからスキル的にもダメだな」と言われていたかもしれません。
「あいつだめじゃん、彼はやっぱり開発の仕事は無理だな」ってなって月から開発の案件があってもアサインされないっていうことになってしまうかもしれません。
なので、
・自分が何をやりたいか
・何ができるか
・何ができるようになるか
・何を目指すか
っていうことを正しく考える、これが重要です。
自分を信じることで始まること
やる気のある人でプログラマーの仕事ができないってことはありえないと思うんです。
先程話した先輩方は、やる気がなくて勉強もしてなくて基礎的なことも身についてないのに、開発の仕事やってたわけです。
やる気があって努力してる人が、「君は経験がないからダメだ」って言われたって、そんなの嘘です。
今は「運用保守の仕事しかないからこれをやってください」というのが本音です。
開発の仕事があれば、そちらにアサインされます。開発の仕事の方が単価が高い場合が多いでしょうからね。
だから、上司の言うことを言葉通りに鵜呑みにしてはいけません。
自信とは、自分を信じることです。
上司の言葉を鵜呑みにするんじゃなくて、自分を信じてあげてください。