ITエンジニアと言うとプログラムを書いて何でもできてしまうようなスマートなイメージだったり、システムと名のつくものは簡単にハッキングできるようなイメージがあるからか、とても技術がある人たちだと思われる。
そのためかパソコンが壊れたり家電が壊れたりした時にエンジニアと聞くと何となく直してもらえるかもしれないと期待される人も多いのではないだろうか?
まるでドラクエの「さいごのカギ」のように何でもできてしまう不思議な力を期待されている。
そんなITエンジニアに憧れてSEやプログラマとなる人も増えているし、今は子供に習わせたい習い事でもプログラミングが上位に入ったり、憧れる職業の上位にも入るぐらいだ。
知らない間に下級職から上級職にランクアップしたらしい。
また最近ではSEは土日が休めるからいいとのイメージで転職してくる人もいるとのことで、一昔前に比べると随分と良いイメージとなったと思う。
勇者とまではいかないが賢者やバトルマスターぐらいにはなったのだろうか。
ちょっと前まではSEと言えば3Kなんて呼ばれていてキツイ、給料が安い、帰れないという時代もあったぐらいだから随分な進歩だ。
これは働き方改革のお陰なのか、技術の進歩なのか、はたまた他の業界が目立つからかなのかは不明だが、確かに時代は変わった。
しかしその一方でよく聞く課題がある。
それが「技術力のある人が少ない」という問題。
技術でスターにもなれる一方で技術力がないと言われ業界を去る人もいる。そんな事が起きているのだ。
だからこそ技術力を底上げする方法を本日はお伝えしたい。
とにかく仕様書やコードに触れる機会を増やす事で基礎は向上する
技術力を上げたいと思ったら一番なのは実際に動くシステムを作り、触り、本番稼働を迎えることだ。
出来れば上流と呼ばれる設計から運用テストまですべてを経験し、本番稼働を迎える経験をする事が望ましい。
1つのシステムを作ろうと思ったら多くの困難が待ち受けているし、実際に現場で得る事ができる経験は血肉となって経験値となり確実なレベルアップをする事につながる。
しかし、実際にはそうそう都合よく自分のレベルにあったプロジェクトに携われるとは限らないし、実際にはそこまで技術が必要ないタスクばかりが降りかかってくる事もあるだろう。
そんな中でおすすめなのが仕様書やプログラムコードをとにかく読み解く。死ぬほど読み解くことだ。いわゆる自己レビューを繰り返すというものである。
入っているプロジェクトに関わらずとにかくコードを読んだり、仕様書や設計書の不明な用語をすべて調べる。ただこれだけ。
とくにプログラムのコードについては1000本ノックのように1000本単位で読む事で一気に技術力が向上する。
泥臭く思われるかもしれないが、とにかく数を打つというのは初期の技術力向上にはとても役立つし、気づいたら一気にレベルが10ぐらい上がっている事に気づく時が来る。
そしてその気づきが更に自分を高みに上げてくれるという経験になるはずだ。
はじめのうちは訳がわからないかもしれないが、実際にプログラミングをする事以上にソースコードの自己レビューというのは自分の知識レベルを振り返るのにももってこいだし、思った以上に力がつく。
仮にプログラムを組む環境になくても間違いなく技術力向上に繋がる事は折り紙付きなので、騙されたと思ってやってみてほしい。
とまあここまでプログラムや仕様書がある環境でやれる事を述べてきたが、現在はプログラミングのオンラインスクールのCodeCampやTechAcademy [テックアカデミー]のような自宅からでも勉強できる環境があるため、興味のあるものから家で休みの日にでもやってみるのも相乗効果を生むことができて非常に良いと思う。
買い切りの講座も多いので一度購入したら継続利用できるので安心してほしい。
注目されるIT業界の裏で起きている「デキる人がいない」問題
少し話は変わるが、IT業界は現在圧倒的な人手不足と言われている。
極端な話、ちょっとやる気があれば簡単に転職できてしまうぐらいの会社もいくつも存在する。
もちろんやる気があるのはいい事なのではあるが、ちょっとした問題も起きている。
それが「技術力のある人が少ない」と言われている事だ。
IT業界は日進月歩どころか急激な進歩により業界全体が活性化されてきた。
それこそ3Kと言われた時代を乗り越え、近年では働きやすさも増し、一部のトップスター達が業界全体を活性化、多くの若者が憧れる業界になったと言える。
そのような時代を経て昔よりも多くの人がIT業界を志す一方で「技術力のある人が少ない」と言われる事が昔に比べて増えてしまったのだ。
それは技術力のある人が管理職世代となって開発現場からいなくなったという事と技術力のある人が新規で入ってこないという2つの事実から発生しているように見える。
デキる人は勇者になり、旅を終えて名誉を得た事を節目とし、その名誉を見た新しい冒険者が大勢増えたわけだ。
結果的に年代を問わず新規のエンジニアばかりが増え、上級職のエンジニアが現場では希少になってきたのだろう。
初級職のエンジニアが熟練度を上げることができず、上級職になりきれていない人が多いとも言える。
当然環境の変化や団塊の世代の増加という面もあるが、それ以上に根本的に出てこない理由の1つが働きやすい環境になったにも関わらず人材不足という状態が弊害を呼んでいる。
強制的にレベルアップできた昔と自力でレベルアップする必要がある今
IT業界に入ってくる人は実に様々だ。
現在は昔に比べて注目度も高いし技術革新によって多くのIT技術者が注目を浴びるしIT長者なんて言葉もある。
またIT社長と言えば芸能人と噂になる人も多いし、スマホゲームも活況で夢がある時代となった。
そういった光の側面がピックアップされるのは良いことだし子供達の夢となってくれるならこんなにいいことはないだろう。
しかし、実際にはそういった憧れの光が当たる側面ばかりではない。
実際にやることはとても地味なことも多いし、どちらかと言うと大量の仕様書を読み込んだり、たくさんのコードを書いたり、バグを見つける為に大量のコードをレビューしたりといった地道で泥臭い作業の方が多い。
ドラクエで言うところの村人に話を聞いたり、モンスターを倒してレベル上げしたりといったことがほとんどなわけだ。
そうやってレベルを上げ、熟練度をあげることによってようやく強い技を覚えることができる事は現実も同じで、経験値がモノを言う。
ここで関係してくるのが現在の状況。
昔はゼロから作る滅茶苦茶な環境なら中で納期に追われて土日深夜関わらず仕事ということも平気でやっていた。
終電になっても「お先に失礼します」と遠慮して帰る状況がザラだったわけだ。
そういった環境だから、好きでもそうじゃなくても一定量以上の仕事と向き合ってきたし、死ぬほど仕様書やコードを見るといった経験をしてきた人が大多数だったはずだ。
強制的に大量の設計書やプログラミングコードと向き合う時間が長かった事から大量の経験値を得てることができ、知らぬ間にレベルアップしていたとも言える。
しかし、今の時代は違う。
定時に帰ることが推奨されるし、土日連続で働こうものなら指導も入る。
必ず月の残業時間に対しては指導が入り、早く帰ることが推奨される。
その中で効率よく業務を進めるためには、多くの無駄の削減が必要だったし、決まったことをやるように型決めを進めてきた。
そのために地道なレベルアップ作業なんてものも経験できずにいきなりボスにぶち当たるものだから、対応などできるはずもない。
その結果、「技術力がない」とか「仕事がデキない」という状況に陥る。
要は圧倒的な経験不足がそこら中で起きているのだ。
レベル5や10で魔王を倒せる訳がない。
レベル不足でラスボスにつっこむなんてことは初回プレイでやるのはよっぽどの物好きかゲーマーだけなので、一般人には難しい事は想像に難くない。
デキる人に聞くと必ず返ってくる言葉が「経験」
上記のようにすぐにバグを発見したり、プログラムを組める人に「何故そんなに簡単にできるのですか?」と理由を聞くと必ず返ってくる言葉がある。
それが「経験」という言葉だ。
だいたいデキる人に聞くと勉強したからとか様々な理由を述べた後に「経験」という言葉がついてくるのだ。
この経験という言葉の裏には様々な意味が込められており、場面場面で意味が変わってくるのだが、共通していることが1つだけある。
それは経験と呼べるだけの仕事やタスクを一定量こなしているという事。
無意識に経験値を積むということを大量にやってきたから今があるのだ。
プログラムをすぐ組める人はプログラミングをたくさん経験してきただろうし、バグを発見して修正するのが早い人はバグ修正を多く経験してきている。
中には火消し担当なんて呼ばれてトラブル対応ばかりやってきたトラブル解決のプロなんて人もいるだろう。
この人たちに共通するのが得意な事柄に触れている機会が多かったことから、それぞれの得意技となり周囲からも尊敬の眼差しで見られるようになったということだ。
それは意識的にした人よりも無意識にしていた人の方が多いのが今の30代から40代の人たちで、その中には圧倒的にデキる人も多く存在した。
一定の経験が必要たがらこそがむしゃらに数を打つ事の大切さ
上述したような経験がものを言うという事を聞くとやっぱり時間がかかるように思えるが、そこで役立つのが冒頭で述べた1000本ノック。
とにかく見れるものは関わっていなくても見ることによって強制的に経験値を上げていく事ができる。
はじめのうちは自分の経験値の低さから何を見ていてもわからない事ばかりかもしれない。
それでもそのうち経験値がたまっていき自分の能力値が上がってくる。
するとあるタイミングで魔法を覚え、一気に強くなれる時が来る。
その実感を持った時が成長できた時。気づいたら重宝される存在となりデキる人となっているだろう。
まとめ
魔王を倒すためには伝説の武器やある程度の能力値が必要だ。
レベル1で魔王に突っ込む事はできないし、ちょっと油断したらスライムにですらやられてしまうだろう。
少なくともレベルを上げるという行為は地道な行為の積み重ねである為、誰にでもできる行為でもある。
現在は働き方改革で仕事に縛られる環境ではなくなってきている。
だからこそ自分自身で経験値稼ぎをしていく事で何者にでもなれる環境が整っている。
勇者になるには誰よりも経験が必要になってくるのは自明の理なので、頑張ってレベル上げをしていってみてはいかがだろうか?
プログラミングのオンラインスクールのCodeCampやTechAcademy [テックアカデミー]のような場所でのレベル上げもあわせて使うとなお効率的なので試してみてほしい。