プログラミング
PR

「プログラミングができないから辞めたい」に対する解決策

「プログラミングができないから辞めたい」に対する解決策
shin-memo
記事内にプロモーションを含む場合があります
読者の悩み

エンジニアだけど、プログラミングができないからもう辞めたい。自分はエンジニアに向いていないと思う。周りには技術力のあるエンジニアばかり。自分に合う職業を探した方が良いかな?

こんなお悩みにお答えします。

運営者:シン
運営者:シン
Profile
フリーランスエンジニア|大阪在住|31歳【保有資格】Java Gold・ITパスポート・SEO検定全級・全日本SEO協会認定SEOスペシャリスト【経歴】配送業▶︎販売員▶︎プログラミングスクール受講▶︎プログラマー▶︎独立【発信内容】プログラミング・エンジニア転職・フリーランス
プロフィールを読む

この記事で解説する「プログラミングができないから辞めたい」に対する解決策を読めば、今後あなたがプログラミングを続けるべきかどうかの判断材料を得ることができますよ。

僕はプログラミング歴3年の現役フリーランスエンジニアです。現在は大阪のIT企業で働きつつ、エンジニアとして月収50万ほど稼いでいます。

僕は入社1年目はまともに仕事ができない雑魚でした。どのくらい雑魚だったかというと、

  • 入社後半年経ってもJavaのコードが全く読めない
  • Java研修1ヶ月間受講した後、半年経っても変数やif文、メソッドの意味がわかっていない

上記の通り。今では30分で終わるような、数行程度修正するだけで良い簡単な改修も、一人でできなかったほど。とにかく最初の1年目は仕事ができなさすぎて上司に怒られまくりで、30回以上は本気でエンジニアを辞めたいと思ってました。

そんな僕でも、今はこうしてエンジニアを続けられています。プログラミング言語Javaの資格を取ったり、個人でポートフォリオアプリを作れるようになったり、3年目で月収50万を稼げるようになったり。それらの実体験をもとに「プログラミングができないから辞めたい」に対する解決策を提示していきます。

シン
シン

もし、いまあなたがプログラミングができないからエンジニアを辞めたいと思っているなら、一旦この記事を読んでからどうするか決めてみてください!

プログラミングができないから辞めたいと思ったら

プログラミングができないから辞めたいと思ったら

プログラミングが嫌いかどうかを考える

まず、あなたはプログラミングが「好き」または「嫌い」または「好きでも嫌いでもない」のどれでしょうか?

もし「プログラミングは嫌いだ!」「苦痛だし、意味わからない。全然楽しくない」と思うなら、辞めても良いかもしれません。なぜなら、人は嫌いなことは長続きしないから。他に自身の才能が発揮できる分野はあるはずなので、無理して続ける必要はないかなと。

でも、「プログラミングは難しいけど、なんとかできるようになりたい」とか「プログラミングスキルを手に入れて市場価値を高めたい」と思うのなら、それはまだやめ時ではないです。

「嫌いではない」なら辞め時ではない

なぜ「プログラミングが嫌いではない」なら、やめ時ではないのか?これは過去の僕の体験をもとに話していきます。

僕自身、プログラマー1年目は雑魚でした。あまりの出来の悪さに自分に嫌気がさし、「もう転職しようかな?」「エンジニアは自分には向いていないだろう」と思ってました。

転職サイトのDodaのエージェントに転職相談してましたね。ちょうどブログを副業でやっていたので、Webマーケティング業界に転職しようかなと思ってたんです。

しかし、僕は一旦立ち止まって、エンジニアになった初期の頃を思い出しました。そもそもエンジニアになった理由が「何をやってもうまくいかない自分を変えたい」や「プログラミングスキルを身につけて、お金を稼ぎ、自由を手に入れたい」だったんですよね。

あと、なんだかんだプログラミングは嫌いではなかったです。なかなか上達はしなかったですが、それでもたまにエラーを解決できた時は爽快感がありましたし、「きっと続けていればもっとコードも読めるようになって、もっと楽しくなっていくはず」と謎に思ってたんです。

今まで飲食店のバイトを2週間で辞めたり、接客業で店長になっても手取り23万円だったり、何をやってもうまくいかない自分に嫌気がさしていました。そんなことがあり、「ここでまた辞めたらもう自分は終わりだな」と思い、結局エンジニアをあきらめられなかったんですよね。

プログラミングを続けた先にあったもの

じゃあプログラミングを続けて結局どうなったのか?何を手に入れられたのか?が重要ですよね。

僕自身のエンジニアの経歴をもとに、下記具体例をあげてみます。

  • 1年目:Java研修を受けてもJavaのコードが読めず、半年経ってもまともに改修もできない雑魚エンジニア。手取り16万円。仕事ができなくて上司に毎日怒られる。
  • 2年目:2年目の後半からフリーランスエンジニアに独立し月収40万円になる。Javaの資格を取得し、コードもある程度読めるようになる。
  • 3年目:中盤から月収50万円の案件に参画する。この時点で1人称で新規で機能追加や1画面を丸々作成できるレベルになっていた。
  • 4年目:個人で実務以外の言語を使ってポートフォリオアプリも作れるようになる。

上記の通り。手取り16万円から1年5ヶ月で月収40万円になり、さらにその1年後には月収50万円。金銭面だけでなく、リモートワークの案件に入ることもでき、4年目には自分で1からコードを書いてポートフォリオを作れるようにもなりました。

もちろん人によって上達の期間がもっと早い人もいると思います。僕は「プログラミングは運や小手先のテクニックに左右されない、継続ゲー」と思っています。

シン
シン

こんな感じでプログラミングは続けていたらスキルが積み上がり、上達し、気がつけば市場価値があがっています。

プログラミングができない・上達しない原因

プログラミングができない・上達しない原因

そもそもプログラミングができない原因はなんでしょうか?ここを深掘りしていきます。

原因1:目標を決めていない

プログラミングができない大きな原因は、目標を決めていないからです。

目標が決まっていないと、向かう先がわからないですし、努力する意味が見出せず、モチベーションが保てないからですね。

「そんなの当たり前じゃん」と思うかもですが、意外と目標が明確に決まっていないエンジニアは多いと思います。

シン
シン

そしてこの目標は、漠然としたものではなく、明確に「いつまでにどうなりたいのか」を決めておく必要があります。理由は後述しますね。

原因2:実務だけでスキルアップできると思っている

エンジニアは実務だけでスキルアップすることは難しいです。

なぜなら実務では納期があるため、わからないことを全て理解するために、ゆっくり調べている時間がないことがほとんどだから。

その中で、「実務経験積めているし、プライベートでまで勉強なんてしなくてよいよね。」とか「実務経験積んでいるけど、正直よくわかっていないことがほとんど。でもまぁいいか。」というスタンスだと、一向に成長ができません。

シン
シン

なぜそう言えるかというと、上記は実際に僕がそう思っていて一向に成長できなかったからです。

原因3:正しい勉強方法を知らない

正しい勉強方法を知らず、非効率な勉強をしている場合があります。そのため、プログラミングがなかなか上達しないケースがあります。

僕自身の例を挙げてみますが、まず僕はエンジニア1年目はそもそもほぼ勉強をしていなかったので、これは論外です。ですが2年目にあせってJavaの参考書を買い、ひとまず文字を読んでインプットしていました。

しかし、これも非効率な勉強方法なんですよね。もちろん参考書を読むだけでも、何もしないよりかは100倍マシです。

ですが、プログラミングは覚えることが多いので、実際に手を動かしてコードを書きつつ不明点がでてきたら調べるのが効率良いです。

シン
シン

「コードを書く→わからない→調べる→コードを書く」という風に、インプットとアウトプットを繰り返すのが効率が良いと言えます。

原因4:そもそも現場の環境が悪い

これはあるあるだと思うのですが、そもそもプログラミングが上達しない原因はあなた自身に問題があるのではなく、現場の環境が悪い可能性もあります。

エンジニアは実務が一番重要なので、その一番重要な実務を学ぶ環境が悪くては、あまり意味がありません。

エンジニアの技術力を左右するのは、経験年数ではなく「経験の質」だと、僕は考えています。これはさまざまなエンジニアをみてきた中で感じています。

たとえば、エンジニア歴7年の方でも、1人称でコードが書けない方はいます。反対にエンジニア歴2年でもバリバリコードの読み書きができる方もいます。

この違いはなんだと思いますか?僕が思うに、繰り返しですが「経験の質」なんですよね。

シン
シン

数行修正するだけの簡単な改修や、誰にでもできる資料作成を多くやってきた人と、自分で1から数百数千行のコードを書いてきた人とでは1年でも大きく差が開きます。

プログラミングができるようになる・上達する方法

プログラミングができるようになる・上達する方法

最後にプログラミングが上達する方法をお伝えします。

  1. 目標を期限付きで設定する
  2. 実務以外でもキャッチアップする
  3. 正しい勉強方法を理解する
  4. 環境を変える

目標を期限付きで設定する

まず、目標を期限付きで設定しましょう。なぜ期限付きなのかというと、人は締切効果によって、行動力が向上する傾向にあるからですね。

たとえば、「明日の会議で使う資料を作成しておいて」と上司から指示されたとします。すると今日中にやりますよね。でも「いつかある会議で使う資料を作成しておいて」と言われても、今日中にやろうとおもう人は少ないですよね。

僕自身、エンジニア経験3年でフリーランスになるとか、3ヶ月Javaの勉強をしてJavaの資格を取るというように期限付きで目標を決めていました。その結果、エンジニア歴1年5ヶ月でフリーランスに独立しましたし、3ヶ月でJavaの資格も取得しました。

シン
シン

このように、目標を期限付きで決めておけば、あとはそこに向かってひたすら走り続ければOKです。

実務以外でもキャッチアップする

実務以外でもキャッチアップはしておきましょう。といっても、なにもプライベートを全て削ってやりましょうというわけではありません。

1日30分でもいいのでコードを書いてGitHubにプッシュするだけでいいんです。たまにサボってしまっても全然構わないです。少しでもやろうとする意識と習慣づけが重要です。

と偉そうに言っている僕は、エンジニア歴1年目は全く勉強をしなかったので、当時の僕なら習慣が重要だなんてとても言えなかったです…。

でも今は実務以外でReactやNext.jsといったフロントエンドの技術をキャッチアップしています。最初は習慣づけるのが難しかったですが、毎日1行でもコードを書くということを決めてから、ある程度習慣づきました。

シン
シン

実際に当サイトのプロフィールにGitHubのリンクがあり、そこからポートフォリオサイトなども見れるので、気になる方はみてみてください。

正しい勉強方法を理解する

正しい勉強方法を理解することも重要です。まぁ勉強方法といっても人それぞれ合う合わないはあるので、一概にこれが絶対というのは言えません。

しかしプログラミングの勉強方法はある程度万人に共通していると思っています。それが「アウトプット重視の勉強方法」です。

そんなに難しい話ではなく、単純にアウトプットに重きを置けばいいだけ。ここでいうアウトプットとは、実践を意識しつつ、コードを書きながら学ぶということです。

もしコードを書くといっても何をつくればいいのかわからない方は、Udemyでキャッチアップしたい技術の動画を購入してみてください。

シン
シン

「動画で学ぶ→動画で学んだ知見をもとに、次は動画を見ずにコードを書いてみる」をくり返えせば、プログラミング力がみるみる上達していきます。

環境を変える

一番重要なのが実務の環境です。もしいまの環境が悪い方は、まず環境を変えることを優先してみてください。

以下、例を挙げてみます。

環境が悪い例:Javaで数行修正するだけの簡単な改修が多い。来客対応・電話対応やお茶出し、ゴミ出しや清掃など技術に関係のない業務が多い。開発よりも資料作成やヘルプデスク対応ばかりさせられる。

上記の通り。

残念ながら世の中のIT企業にはこういったエンジニア業務に関係のない業務をエンジニアにさせている会社が多いです。といっても、もちろんこれらも重要な仕事なので、これらの仕事自体を否定しているわけではありません。

ここで言いたいのは、自身がエンジニアとして成長していくなら、エンジニアの仕事をするべきということ。

そしてエンジニアの仕事をするために、環境を変える必要があるなら変えましょう。環境を変えるなら、「転職する」「フリーランスになる」のどちらかがいいと思います。僕自身はフリーランスという働き方に憧れを持っていたので独立しました。

シン
シン

エンジニアの実務経験が2〜3年あればフリーランスとして通用するでしょう。興味のある方は下記で実際に僕が使ってみて良かったフリーランスエージェントを厳選しているので、ぜひ活用してみてください。

あわせて読みたい
フリーランスエンジニアに最もおすすめのエージェント3選
フリーランスエンジニアに最もおすすめのエージェント3選

まとめ

プログラミングができないから辞めたいに対する解決策をお伝えしました。

プログラミングが嫌いならエンジニアを辞めてもいいかもですが、そうでないなら、やめる必要はないかなと。

シン
シン

この記事で挙げたプログラミングの上達方法を実践すれば、1年後にはスキルも市場価値も上がっていることだと思います。

今回は以上です。

運営者情報
運営者:シン
運営者:シン
フリーランスエンジニア|大阪在住|31歳【保有資格】Java Gold・ITパスポート・SEO検定全級・全日本SEO協会認定SEOスペシャリスト【経歴】配送業▶︎販売員▶︎プログラミングスクール受講▶︎プログラマー▶︎独立【発信内容】プログラミング・エンジニア転職・フリーランス
記事URLをコピーしました