完全な初心者からソフトウェア開発者への移行方法と、その方法

コーヒーショップでキャンプ。

2年前、私はあなたが今日いる場所に正しかった。

プロのプログラマになりたかった。しかし、私はそれを実現する方法を知りませんでした。

私は大学の学位も以前のコーディング経験もありませんでした。

そして、しつこい疑念がありました:私のような誰かが開発者になることができますか?

さて、私はそれを実現させました。私には夢の仕事があります。私はソフトウェア開発者です。

どうやってやったのかとよく聞かれます。

完全な初心者からソフトウェア開発者への移行を支援した3つの重要なアクションを次に示します。

1.ロードマップを作成する

開発者志望の最大の間違いは、彼らが計画を持っていないことです。

ロードマップはありません。

計画がないとき、あなたは失われたと感じます。コーディングチュートリアルを受講し、1つまたは2つのプロジェクトを作成します。それから数ヶ月が経ちます。あなたは、私が開発者になることはあると思いますか?これは非常に紛らわしいです。あなたはどの道を取るべきか分かりません。

ソリューション?ロードマップを作成する-今すぐ。開発者になる方法を正確に計画します。

最初のステップ:コーディングブートキャンプを行うか、オンラインコースを受講するかを決定します。

私にとっては、ブートキャンプに参加しないことにしました。私は自分のカリキュラムを作成し、すべてを学びました。

私はホームスクーリングで育ったので、独学で快適に学習できたので、freeCodeCampからUdacityまでのさまざまなオンラインコースを使用して、コードを学ぶことを決めました。

このアプローチはブートキャンプよりもはるかに安価ですが、欠点がありました。コーディングの指導者やコーディングのカリキュラムがありませんでした。オンラインリソースから学ぶことは、あなたが何もまたはほとんど支払わないことを意味しますが、私が発見したように、あなたはあまりサポートをしていません。そして、あなたは私がしたように自分で戦うでしょう。

私がしたように、人々はオンラインリソースからコードを学ぶことに魅了されますが、常に最良の方法とは限りません。低コストは大きなメリットですが、あなたが独力でよく学習でき、多くのメンターシップやサポートがなくても説明責任を果たすことができるようにしてください。

ブートキャンプは高価ですが、多くの場合、より多くのサポートと説明責任が伴います。

最適なパスを慎重に決定してください。

ブートキャンプなしでコーディングを学ぶなら、少なくともある程度の指導と従うべきカリキュラムを備えた手頃なオンラインプログラムを選ぶことをお勧めします。そうすることで、苦労を減らし、必要なフィードバックを得ることができます。 UdacityのnanodegreesとTreehouses techdegreesは、メンターシップとコードレビューを提供します。

無料でコーディングを学習することにした場合、freeCodeCampのカリキュラムは素晴らしいものであり、コミュニティに参加すれば優れています。

パスを選択したら、次の質問に答えてロードマップを完成させます。

  • フルスタック、フロントエンド、またはバックエンドの開発者になりたいですか?学習に集中するものを決定します。学習する必要のある言語とライブラリを把握します。
  • 週に何時間勉強しますか?コーディングの練習をし、それらの学習時間を見逃さないように、週の時間を刻みます。
  • 就職はいつから始まりますか?申し込みの締め切りを設定します。
  • 私は何をあきらめますか?開発者として働いている自分を想像するのは素晴らしいことですが、そこにたどり着くまでの道のりは、早朝、週末、深夜のハードワークを意味します。

現実的に:毎週の時間を見て、1つだけあきらめます。私にとっては、家族と時間をあきらめるつもりはありませんでしたが、友人との付き合いをあきらめることにしました。ほとんどの土曜日は、いつものように友達と時間を過ごす代わりに、家にいてプログラミングをしていました。

ロードマップを作成する際には、覚えておいてください。これまでに目にしたマーケティングの誇大広告とは異なり、魔法のコーディングコース、魔法のプログラム、開発者を「あなたにする」魔法のブートキャンプはありません。多くの人が、あなたが開発者になる1つの「ゴールデンチケット」があるかのようにコーディングすることを学んだオンラインコースを尋ねます。

ありません。

自分だけが開発者になれます。

あなたのグリットと決意があなたをそこに導きます。しかし、ゲームを変える方法を使用して、開発者になるためのコーディングを学びました。

それが何だった?

2.集中力を養います。

誰でも利用できる無料のコーディングコースが100万あります。

無料のコーディングコースに簡単にアクセスできる場合、なぜコーディングの方法を学ぶのがそれほど難しいのでしょうか。開発者になるのはなぜ難しいのですか?

私たちの多くは、プログラミング言語を学び、習得するために必要な重要なスキルを知らないからです。このスキルは、コンピューター科学者のCal Newportによって普及したDeep Workと呼ばれます。

TL; DR:難しいことを学ぶためには、長期間集中的に集中する必要があります。それは深い仕事です。

しかし、私たちのほとんどは集中する能力を積極的に殺しており、深い仕事をしている人はほとんどいません。

前回並んだときのことを考えてください。携帯電話をつかんで通知を確認せざるを得なくなるまでにどれくらい時間がかかりますか?または、この記事自体についてはどうですか-読みながら新しいタブに切り替えましたか? Twitterアカウントを確認しましたか?

今日、金魚の注意を引くのは普通のことです。そして、これがコーディングのような複雑なことを学ぶのが私たちにとってとても難しい理由です。これを理解した後、深い仕事をすることに専念すれば、開発者になるために知っておく必要のある難しいことを学ぶことができることに気付きました。

コードに座ったら、90分間タイマーを設定します。その間ずっと、作成中のアプリや解決しようとしているコーディングの問題に集中してください。通知を確認しないでください。新しいタブを開かないでください。空想にふけったら、すぐにコーディングに注意を向けてください。

あなたの将来のキャリアがそれに依存するように、あなたの焦点を訓練してください-それはそうですから。

ディープワークを実践しなければ、私は今日の開発者ではありません。

3.好奇心を追います。

ほとんどの人がコーディングの学習に着手すると、彼らは知っておくべき「想定」されていることのカリキュラムを開始します。

その後、彼らは退屈します。学校と同じように、新しいことを学ぶべきだからといって新しいことを学んでいるが、なぜ学ぶ必要があるのか​​、なぜ気にするのかわからないとき。興味を失うことは簡単です。

コーディングを学ぶために、あなたにとって魅力的なプログラミングについて1つ見つけてください。土曜日の夜にそれについて学ぶのに十分な好奇心をそそるものを見つけてください-時々それをする必要があるからです。

不思議の国のアリスからの行があります。

彼女はこれまで、チョッキのポケットやそれを取り出す時計の付いたウサギを見たことがなく、好奇心で燃えていたので追いかけました。

私のキャリアでより多くの上級開発者と仕事をしてきたので、最高のプログラマーが常により多くのことを学ぶように強制する必要がないことに気付きました。アリスのように、彼らは好奇心で燃えているので、彼らは常に学習しています。

ある言語でコーディングを試みてそれを嫌い、別の言語を選んでそれを愛する人もいます。さまざまなプログラミング言語を試して、プログラミングのさまざまな分野について学び、あなたの好奇心を刺激するものを見つけてください。

さまざまな角度から何度もコーディングの学習を試みたが、それでも自分自身を強制しているように感じる場合、コーディングはあなたには向かないかもしれません。ほとんどのブートキャンプのマーケティング資料とは異なり、3か月でコーディングを学び、その直後に10万ドルの求人を獲得することは、ほとんどの場合現実ではありません。コーディングは、リッチなクイックスキームではありません。退屈している場合は、コーディングを学ばないでください。人生での本当の好奇心を見つけることができなくなるからです。ただし、技術に興味があり、コーディングには興味がない場合は、設計、データ分析など、学べる他の多くの信じられないほどのスキルが必要です。

プログラミングについて好奇心があるなら、追いかけましょう。好奇心を追求すればするほど、より多くのことができます。好奇心を追いかけている間、どこから来ているのか心配する必要はありません。 CS学位の不足や背後にあるものについて心配する必要はありません。

あなたの年齢、学位、または以前の経験に関係なく、コーディングが好きで、深い仕事を練習し、人生の中で学習を優先するなら、プロの開発者になることができます。

あなたが完全な初心者であっても。

今すぐ始めましょう。

このストーリーを楽しんだ場合は、ボタンを押してください!私と連絡を取り合うには、ニュースレターにサインアップして、コーディング方法を学ぶためのヒントを共有します。