プログラミング・IT ホーム 技術ログ

プログラマーが『勉強する』とは一体なんなのか、どうやって成長できるのか、現役プログラマーが考えてみた

皆さんこんにちわ、フリーランスエンジニアのりょすけ@Reactです

 

プログラマーとして、キャリアとしては5年程が経ちました。

 

なんやかんや19歳からプログラミングをしてるので、そこそこコードはわかるようになりました

 

でも、僕は全く優秀なエンジニアではないんです

 

フリーランスエンジニアとしてなんとか食っていけてるのも、技術力というよりかはセールス力と、コミュ力と、自分でもこなせる仕事を意図的に選んできた節があります。

 

エンジニアとして働いてると、必要となる技術のレベルが現場によって雲泥の差だったりします

 

自分で『最近仕事よくできる』と思っても、次の案件行ってみたら『無理ゲー...』なんてことはザラ

 

特に、コード規約が厳しくて既存プロジェクトの改修みたいな案件だと、ハードルがぐんっと上がったります

 

しかも、ここまでプログラミングに慣れてくると、このまま同じように時間を過ごしてても能力はもう向上しないような気がします。意識的に能力を上げる習慣が必要になった時期だと感じだので、この記事を書きます

 

つまり、今日の記事では、どうやって、コード規約が厳しくて複雑な既存プロジェクトの改修みたいな案件でも難なく仕事をこなせるエンジニアになれるのか、考えてみたいと思います。

 

スキルフルなエンジニアがやったらダメなこと

やっぱりコピペは良くない

僕は、普段からよくコピペを沢山します。

 

理由は、そっちの方が早いからです

 

それに、プログラミングはパズルみたいに組み合わせていけば一言一句書かなくてもいいし

 

そのパズルのピースはネットや既存ソースの中に落ちてたりするので

 

それでよくね?動けばよくね?

 

みたいなことになりがち、実際、そっちの方が早いし

 

でもそれは間違い

確かに、コピペをすると早いですし、動けば誰からも文句を言われません、それは事実です

 

でも、それだとコードを一言一句理解せず、フワッとなんかコードのフォルムで半分理解状態になってる節があります

 

なので、コードが複雑になるにつれてコピペができない状況に追い込まれていきます

 

そうすると、結局ソースを一言一句読んで関数や変数や型やクラスやインターフェースの意味を理解し

 

それぞれの繋がりを理解していかないといけないんです

 

それを、普段からコピペに慣れてしまって、フォルム理解でコードを書いてると

 

コードを追いきれなくなると思います。

 

スキルフルなエンジニアがやってくべきこと

公式docを手打ち

複雑なコードでもしっかりコードを追えるようになるには

 

公式docを1からしっかり読み

 

わかったつもりになってるコードをもう一回ちゃんと読み

 

プレイグラウンドなどでサンプルコードを手打ちして動かし

 

毎日新しい書き方やメソッドを覚えるのが必要です

 

武器は多い方がいいです、知識が多いほど

 

コーディングの際に楽にコードを追えますし書けます

 

空いた時間に勉強(勉強とは?)

それで、仕事を進めていく中で、必ず空いた時間を作ることができます

 

その時に、勉強してください、

 

勉強っていうのは、自己サービスを作って単純にプログラミングするんじゃなくて

 

フワッと理解してる部分を完全理解する努力をすることです

 

公式 docを見に行って、このコードはなんのために使うの?

 

どうやって使うの?実際にコード書いてみよう!

 

みたいなことをしてください

 

そういう訓練を続けていくうちに、複雑なコードを見事に読みきる能力がつきます

 

結局、複雑なコードってしっかり全体像を把握して読み切らないと改修できないんですよね

 

コピペとかせず、完全理解で一言一句読む癖をつけると、途中でコードを見失わず頭の中で全体像とその繋がりを追えるようになり、それが大事なんです

 

三流のエンジニアでも全然仕事はできますが、必要になった時に出来ないのは嫌なので

 

僕は努力を続けます!

 

以上、ありがとうございました〜〜〜

Pocket
LinkedIn にシェア

ご報告

off.tokyoは法人化しました、Web/Mobile コンサルティングのご相談なら、bid companyへお問い合わせください :)

ご提供 sponsor
 

Meee!(ミー)は、ビジネスからプライベート利用まで、個人のスキルを気軽に売り買いできるスキルマーケットです。カテゴリや居住地から、検索することが可能です。

 

ランゲージエクスチェンジは、ネイティブスピーカーと気軽にマッチングできる言語交換プラットフォームです。あなたの地元に住む外国人を探したり、留学や海外移住の前に、現地のネイティブスピーカーと繋がることもできます!

宣伝
 

りょすけトークchは、仕事や私生活をより豊にするYouTubeチャンネルです。文献(本、映画、論文)から役に立つ情報をまとめ、生涯にわたり役に立つ哲学をお届けしています。是非、チャンネル登録してみてね

  • この記事を書いた人

ryosuke-hujisawa

-プログラミング・IT, ホーム, 技術ログ
-, , , ,

Copyright© off , 2020 All Rights Reserved Powered by AFFINGER5.