プログラマーが成長するためのコツ【2つの行動で説明】

こんにちは、トミセン(@tomisenblog)です。

プログラマー 成長
プログラマーとして成長するコツを知りたいなあ…。
早く出来るようになりたいから、毎日頑張っているけど、全然分からない。
周りの人はどんどん進んでいるのに、自分は時間ばっかりかかって何も進まない。
どうしたらいいんだろう…。

こういった疑問に答えます。

私もエンジニアとして、自社他社を問わず多くのエンジニアを見てきました。
その経験から、「プログラマーが成長するためのコツとプログラミングの上達に必要な期間」について解説していきたいと思います。

プログラマーが成長するためのコツとは?

プログラマーといえど、ビジネスマンです。
「プログラマーとして優秀=ビジネススキルが高い」とも言えます。

ビジネスマンとしてのスキルを上げるための行動を解説します。

プログラマーの成長に必要な「ビジネススキル」とは?

シンプルにいきます。コツは2つです。

  •  行動①:自分なりの仮説を立てる
  •  行動②:フィードバックをしてもらう Or 一緒に考えてもらう

それでは詳しく解説していきます。

行動①:自分なりの仮説を立てる

若手
問題が起きたらどうしたらいいでしょうか?
まったく分からないです

トミセン
まずは、分かっていることを明確にしてみよう

いきなり調べないでください。
それでは端から端までチェックが必要なので、時間がかかりすぎます。

そうではなくて、前提や現状起きている問題を整理します。
例えば、こんな感じです。

  •  前提条件:C#でwindows formsを開発している
  •  問題点:form_load時にfocusがあたらない

※form_loadは、画面の表示。focusはテキストボックスなどにカーソルをおくこと。

トミセン
問題がだいぶ絞られてきませんか?

起きている事象が明確になると、問題の推測ができるようになります。
後はソースの修正にかかるのか、ググるのかは解決するだけの知識があるかどうかで決めます。

※一番ダメなのは、片っ端から調べるのと、端から端まで調べること。
自分の考えが入る余地がないから、次につながりません。

行動②:フィードバックをしてもらう Or 一緒に考えてもらう

若手
一緒に考えればできるけど、1人では出来ませんよ

トミセン
そうだね、最初からは難しいよね。
だったら先輩を利用すればいいよ

自分なりに仮説を立てて解決できるようになるには、時間がかかります。
独学中やスクールを終えたばかりでは難しいでしょう。
だから、上級者からフィードバックしてもらう必要があります。

教えてもらえる環境が無い方は、プログラミングスクールも検討した方が良いです。
おすすめをまとめてます。

TECH CAMP エンジニア転職」…最短10週間で転職ができる年齢無制限のスクール!

TechAcademy Pro」…オンラインで全て完結のコスパ最強スクール!

DMM WEBCAMP」…給付金の対象講座もある実力派スクール!

仮説を立てるのは、初心者には難しいですが、ただ「分からないからおしえてください」はNGです。

それでは、自分で考える力が身につきません。
先ほど言ったように、自分で仮説を立てるようにしてください。

できるなら、

〇〇がこうなっているから、□□で問題が起きているはず。
▲▲は問題ないから、原因は××の可能性がある。

無理そうなら、

ここまではわかったんですけど、ここから先がわからないので教えてください。

自分で考える癖をつけるだけで、成長速度は変わっていきます。
自分で仮説を立てて解決できるようになれば、自分でどこまでも進んでいけます。

プログラミングの上達に必要な期間は?

プログラミング上達には3年くらいかかる

若手
もう三ヶ月もやっているのになかなか成長しないんです

トミセン
そんな急には無理だよ。みんな時間をかけて成長してきたんだから

若手
どれくらいかかりますか?

トミセン
人にもよるけど3年くらいはかかるよ

プログラマーの成長は、こんなステップを歩んでいきます。

  1.  プログラムが「読める」 = 文字が書ける
  2.  ロジックが「書ける」 = 文章が書ける
  3.  ライブラリなどを「扱える」 = 慣用句や表現が扱える
  4.  実用的なプログラムを「組める」 = 小説をかける

人それぞれだけど、大体3ヶ月から1年ぐらいでステップアップしていきます。
だからどうしても時間が必要になります。

特に参考書を書き写すような「読める」から「かける」になるところのハードルが高いです。
文字は読めるのに、文章がうまく書けならないのと同じです。

初心者から「書ける」ようになるには?

若手
私でもできるようになりますか?

トミセン
出来るよ。
誰もが当てはまる練習法や勉強法があるわけじゃないのも理由で、慣れるしかないです。

私の場合は、問題解決のために毎日家に帰って調べていました。
その日の疑問はその日に解決するつもりで続けていればできます。

効率よく成長したいなら、フィードバックしてもらえる環境に身を置くことです。
考える→仮説→調べる→トライ&エラーは時間がかかります。「調べる」がはぶけるので、仮説と検証のサイクルが早くなります。

まとめ:仮説を立てて検証できることが大切

いきなり出来るようにはならない。全リソースを投入して続ける事が前提。

自分を振り返ってみても、特別なやり方や効率のいい方法を常に意識してやっていたわけではなくて、多くのソースに触れている中で自然と身についてきました。

最初は先が見えなくてつらいけど、昨日の自分よりできることが増えていれば、必ずできるようになります。継続は力なりです。

こちらの記事も読まれています!


\ 転職を本気で考えるなら /

  • 3つの有名スクールを現役エンジニアの視点で厳選!
  • あなたに合ったおすすめのスクールを紹介!

TECH CAMP エンジニア転職」…最短10週間で転職ができる年齢無制限のスクール!

TechAcademy Pro」…オンラインで全て完結のコスパ最強スクール!

DMM WEBCAMP」…給付金の対象講座もある実力派スクール!