未経験からプログラマーに転職する際に、コーディング経験が必要な理由
# 概要
久々にプログラマーの採用していて、いろいろ思ったことがあった。
その中でも、コーディング経験がほぼ無い状態だと採用するのは難しいよ、って話が応募者はともかく転職エージェントの人もあんまり理解されてないので、その辺の話を書きたくなってきたので書く。
# コーディング経験が必要な理由
# 結論から
これからエンジニアになろうとしているのに、コードを自分で書いて何かしら作ったことが無い人は、やる気や関心が無いこととほぼ同義である為。
IT 系企業でどの企業でも重要視しているのは、やる気と IT 技術への関心。その 2 つが無いと、エンジニア業務を行う会社では、入社しても成長できないか、すぐ辞めてしまう可能性が高い。
エンジニアは学習しなければならないことが広く深く、更に IT 技術は現在進行形で日々進化し続けている為、事実上学習しなければならないものは無限にある。
仕事で得られる技術知識や経験はほんの一握りレベルしかなく、仕事以外でも常にインプットアウトプットをし続けることは必須。
それが苦にならない、つまりそれ故やる気や関心の高さが必要になる。ということ。
# そもそもの話
何か自分で作りたいという意欲が無いとそもそもエンジニアに向いてない。(別にそれが悪いと言ってるわけではない。向き不向きの話)
WARNING
なんで自分でコーディングして何か作らないの?って聞いた時にたまに、「今は ○○ の理由で作成してませんが、今後は ×× のようなものを作成したいです」という回答があるが、そりゃ悪手じゃろ。。。
たぶん採用エージェントやそういう系の配信している人が、そういう風に濁せば印象崩さずいけるみたいなこと言われているかもしれないが。。。
○○ の理由が、例えば一国の大統領やってますとか、とんでもなく忙しい理由なら分かるが、たいていは、いや時間あるやん、って話でなんで今やらないの?ってなる。
自分でコーディングして何かを作成したいというモチベーションがどうしてもわかない場合、最初から無理してエンジニアになろうとせず、IT 業界の別の職種からチャレンジして、そこからエンジニアになるほうがいいと思う。
- SIer や IT コンサル
- 運用保守オペレーター
- エンジニアリングあまりしない系の SES
- 事業会社のシステム部門
などなどで、そこで技術の深いところに興味を持てばエンジニアに方向転換すればいいし、それほど興味なければ続けたり別の職種を探したりとすればいい。
# スキルや耐性を最低限つけておかなければならない
エンジニアの業務は実際にコーディングを行っている時間よりも、どういうシステム構成にするか設計したり、バグを調査したり、問題解決に向けあれこれ思考したりと考える時間のほうが多い。
コーディング経験をすることで、
- 製造の過程で、様々な壁にぶつかり、それを経て知識がつくことと、実際の業務ではその繰り返しなので、課題発見 → 調査 → 改善のプロセスの習慣づけができる
- 設計~開発~テスト~デプロイといった一通りの工程をして開発フローを知っておくことで、チーム開発で周りの足を引っ張ってしまうようなことがなくなる
といった部分が最低限保証され、エンジニアの業務ができるスタートラインにようやく立てる。
# 本気度や考えの浅さが見えてしまう
コピペや自動生成で作成した成果物が、見破られないだろうと思ってしまうという、浅はかな考えや IT 業界の基本理解不足が露呈される。教材のコードや AI で生成したコードなどの成果物を見せられても、当然だが現役エンジニアからすると、本人が作成したものじゃないなというのはすぐに分かる。
これは応募者側に非があるわけではなく、人材業界のビジネスモデル上採用率を上げなければ売り上げは上がらず、売り上げを上げるために人材会社側がいろいろと最善を尽くそうとしているからだと思ってる。
物の商品売買なら商品売るために最善尽くすというのは当たり前だけど、人材は物じゃないので、そんな入れ知恵や小細工するくらいならちゃんと本人のキャリアに少しでも有意義になるような教育やアドバイスしてくれよ。。。
# 所感
人材業界はやっぱ闇が深い。。。