はい、中国のプログラマーの見通しは暗いです

こんな感じで、暗くて超暗く、手を伸ばしても指が見えず、頭を上げても空が見えません。

ただし、ここで言うプログラマーとは、1〜2か月間テクノロジを学んでいて、プロジェクトを行わずに高い給与を得たいと考えている人を指します。結局、彼らは以前と同じ給与を持っています。彼らは毎日古いコードを書き、インターネット上でホイールを動かしています。座って給料が上がるのを待って、昇進を待って、車が家を買うのを待っていたところ、結局私は欲しいものを手に入れられなかったので、私は知り、不満を覚えました。

それらを区別するために、4年間または5年間真剣に技術を研究し、磨いてきた他の人々はプログラマーと呼ばれません。彼らは好きなように彼らを呼びます。エンジニア、技術者、技術専門家、および技術マネージャーはそれを行うことができます。とにかく、上記のもので。分ける。彼らの展望は明るく、自由の女神の輝きは彼らを照らし、1か月間のアルバイトからの彼らの収入はプログラマー、アーメンよりも高いです。

さもなければ、この種の問題が2日間で発生することを知っており、ショックを受けて、テクノロジーをどれだけ学んでも、テクノロジーの最前線にどれだけ近づいても、昇進と給与を得る望みはなく、後の大学生は業界に参入していません多くの人が解雇されましたが、会社がまだ多くの役職を失っている場合はどうすればよいですか?

どのような見通しを暗くすることができますか?

コンピュータサイエンスおよびテクノロジーの修士号を取得しているが、給与が他の大学生の給与ほど良くなく、他の大学生よりも疲れていて、昇進して給与を上げることが難しい場合、見通しは非常に暗いです。 。

しかし実際には、2019年のIT業界の給与レベルは着実にリストを上回り、平均年収は161,352元、科学技術は133459元で2位、金融は131405元で3位でした。

次の図を見てください。より直感的で、プログラマーの70%が10万人以上の給料を受け取っています。

これの見通しは暗いので、他の産業...

悲劇を表す言葉は思いつかない。

有望なプログラマーになるには?

テクノロジーを学ぶ、テクノロジーを学ぶ、テクノロジーを学ぶ、またはテクノロジーを学ぶ。

この業界のプログラマーが若者を食べているかどうかはわかりませんが、彼らはテクノロジーに頼らなければなりません。多くの人々は、労働集約的な思考で技術集約的なことをします。

肉体労働の付加価値はどのくらい高いのでしょうか?

さらに、プログラマー産業の出現により、職場でのミキシングが苦手で、人と接することに消極的である多くの人々が本当に救われました。あなたが問題を解決できれば、たとえ話さなくても、上司は昇給をしてくれるでしょう。

彼があなたが「偶然に」たくさんのバグを書いたことを恐れていたので、彼はあなたが仕事を変えるのを恐れていました。

しかし、これはすべて「取り替えのできないこと」に基づいています。基本コードをノックしてホイールを動かし、Baiduをクリックするだけの場合は、簡単に交換できます。治療について話し合う自信も交渉のチップもありません。これらの仕事は精神的な仕事ではなく肉体的な仕事であり、プログラマーはポーターではなくアーキテクトであるべきだからです。

自分を改善するには?
2つの一般的な方向があります。

1.幅を広げる
2.深さを掘る

最初の方向を選択した場合、フルスタックエンジニアになることができます。いわゆるフルスタックエンジニアとは、複数のスキルを持ち、フロントエンドとバックエンドで能力があり、複数のスキルを使用して独立して製品を完成できる人を指します。

この方向で開発するために、各方向でどれだけの技術を学ぶ必要はなく、各言語の約80%を習得できます。多くの高度な技術的な問題を解決することはできませんが、フロントエンドとバックエンドの問題のほとんどを単独で解決できます。また、開発作業の全体的な状況に精通しているため、プロジェクトマネージャーに最も近い開発者です。

また、2番目の方向を選択した場合、特定の技術分野で特定のまたは2つのプログラミング言語を徹底的に学習して、この技術分野のすべての問題を解決できるようにする必要があります。一般的な技術分野には、フロントエンド、バックエンド、モバイル、iOS開発などの従来の分野のほか、近年登場した人工知能、ビッグデータ分析、モノのインターネットなどがあります。

方向性について話した後、次の2つの側面を含む方法について話しましょう。

1.学ぶこと2. 学ぶ
方法

何を学ぶ?

選択した方向に合ったプログラミング言語を学びます。スペースの制限により、2020年に最も人気のあるプログラミング言語トップ10の長所と短所とその応用分野を分析し、それらを次の記事にまとめます。困っている友達はクリックして開くことができます。

初心者としての学習により適したプログラミング言語はどれですか。学ぶ方法?

ここに私の独自の学習のアイデアを共有します:

1.基本を学ぶ2. 基本を
統合する

基本的な知識を学ぶ際に注意すべき2つのポイントがあります。正しい方向を見つけ、正しい方法を使用することです。より簡単になることは、何を学び、どのように学ぶかです。

学習内容
まず、しっかりした土台をつくる、最も基本的なアルゴリズムやデータ構造を熟知していること、自分で使ってもらうことをお願いしました。

たとえば、次のアルゴリズムとデータ構造タイプは私に強制されます。それらの多くは、パートタイムで働くときは役に立たないのですが、仕事に戻るときは使います。

** 10アルゴリズム:**再帰、並べ替え、バイナリ検索、検索、ハッシュアルゴリズム、貪欲アルゴリズム、分割統治アルゴリズム、バックトラッキングアルゴリズム、動的プログラミング、文字列マッチングアルゴリズム。

** 10データ構造:**配列、リンクリスト、スタック、キュー、ハッシュテーブル、バイナリツリー、ヒープ、ジャンプテーブル、グラフ、トライツリー。

これらの小さな20の単語のグループを過小評価しないでください。学習を開始すると、1年半ほどかかります。たとえば、並べ替えアルゴリズムだけで、次の10種類に分類できます。
ここに画像の説明を挿入
次に、これらの基本的な知識を完全に理解したら、注意を徹底的に理解するために、私はそれを使用するときに、本に戻って本をめくる代わりに、それを直接使用できるという要件を設定しました。これを行った後、さらに詳細なコンテンツを学習しました。

といった:

-プログラミングフレームワークはどのように機能し、「Hello World」を出力しますか?
-自分をより正式にし、Mysqlをより体系的に使用する方法は?
-Key、List、Hash、Set、ScoreSetのさまざまな使用シナリオは何ですか?
-主流のプログラミングフレームワークはすべてデザインパターンに関連していますが、共通性はありますか?

これらの質問を明確に検討したところ、以前の質問の多くは私を悩ませることはできないことがわかりました。

学習方法
全員の学習方法は異なります。プロジェクトに取り組みながら学びたい人もいれば、プロジェクトを一定期間学びたい人もいれば、本を読んだり、ビデオを見たりする人もいます。それは問題ではありません、あなたに合ったものを見つけることが重要です。

しかし、次の点は、これらすべての痛みを経験し、髪の毛が抜けたので、実行しないことをお勧めします。結果は半分の結果であり、恐ろしいです。

1.他の人のコードを盲目的にたたきます。

初めは他人をフォローするだけではできません。しかし、誰かがそれをノックした後、あなたは自分の記憶を理解し、それを自分のものに変える必要があります。他の人のコードに従って2度または3度と入力した場合、それを注意深く確認して入力を練習する以外は役に立ちませんでした。ああ、はい、さらにいくつかの毛が抜けています。

ですから、模倣は鍵ではなく、考えることが鍵となります。他の人のアイデアを考え、学び、本やブログから脱却し、自分で完全に機能を実装すること。これを行ったとき、私の学習は効果的であることがわかりました。

2.デブ男に食事をすることを考える

プロジェクトができなかったので勉強に戻ったと言っただけなので、最初は成功を切望していて、使い方だけは知っていて、何なのかわかりませんでした。

**しかし、テクノロジーはそれを見るだけの問題ではなく、おそらくあなたはそれを行うことができます。あなたは本当に一気に太ることはできないので、あなたは物事をうまくやらなければなりません。**したがって、すべての問題を一度に解決しようとしないでください。ここにプロテストの効果的な提案があります。毎日の学習プロセスを小さな部分に分割し、より効率的になる段階で学習できます。

最初のポイント、基本的な知識を学ぶ方法について説明した後、基本的な知識を統合する方法について2番目のポイントについて説明しましょう。何千もの方法があり、私は多くを試しましたが、最も効果的なのは質問をブラッシングすることであり、質問をブラッシングする方法があります。

質問をブラッシングする次の方法は非常に一般的ですが、非常に実用的でもあるので、お勧めします。

初めて:最初に考えてから、参照用の回答を読んで他の人の問題の解決策と組み合わせることができます。質問の種類、考え方、最良の解決策を考え、要約し、習得します。

2回目:最初に考えて、最適なソリューションを思い出し、それを前に書いたソリューションと比較して、問題と方法を要約します。

3回目:質問のブラッシングの速度を向上させ、質問を考え出します。調査の焦点、問題の解決方法を知ることができ、短時間で回答を書くことができます。

それから、私が当時読んだ2冊の本といくつかの学習Webサイトをお勧めします。

本:

「コード百科事典」はあなたの思考を刺激し、高品質のコードを作成するのに役立ちます。
「プログラマの実践」では、ソフトウェア開発のさまざまな側面におけるベストプラクティスと主要な落とし穴を包括的に説明しています。

ウェブサイト:

  1. GitHub —開発者にとって最も重要なWebサイト:https://github.com、学ぶだけでなく学ぶため。
  2. W3school-初心者に最適なWeb​​サイト:https://www.w3school.com.cn/:無料で包括的。
  3. 実験的構築-オンラインプログラミング学習Webサイト:
    https : //www.shiyanlou.com/courses/、非常に便利で実用的。
  4. コードスクール-英語学習Webサイト:https://www.pluralsight.com/codeschool、段階的な課題をサポートしています。

最後のステップは必ず実践に移すことで、自分で旅行しなければならないので、次々とパートタイムのプロジェクトをとっています。しかし、実際には自分を改善する方法が2つあります。

1.いくつかの実用的な個人プロジェクトを行い、自分の手を練習する

テネシー大学の助教授であるオースティンヘンリーは、自身の経験に基づいて、次の6つのプロジェクトを含め、「プログラマーが試すべき挑戦的なプロジェクト」のリストを提供しました。その後、私はそれを実行し、それはかなり良いと思いました。

テキストエディタ

  • 2Dゲームスペースインベーダー
  • コンパイラー・タイニー
  • ベーシック
  • ミニオペレーティングシステム
  • スプレッドシート
  • 電子ゲームコンソールシミュレータ

プロジェクトごとに異なる課題があります。たとえば、テキストエディターでは、GUIフレームワークの組み込みテキストボックスコンポーネントを使用せずに、カーソルの移動、選択、挿入、削除をサポートするテキストボックスを作成し、テキストドキュメントをメモリ内。

これらのプロジェクトでこれらの問題を解決し、プロジェクトを独立させて完了させ、正常に実行できる場合、あなたの能力は確実に別のステップを踏むことができます。

2.技術記事を書く

誰もがファインマンテクニックを知っている必要があります。これもアプリケーションの1つです。他の人が理解できるように、理解していることを他の人に教えてください。このプロセスでは、完全なプロジェクトを実行する必要があります。あなたが出てきた後、あなたはあなたが理解していることをより徹底的かつ詳細に把握するでしょう。

それはあなたの基礎をより強くすることができる実際的な操作の良い方法と考えることができます。

この連続出力のプロセスでは、次の3つのポイントを実行することが重要であることを覚えておいてください。

1.プログラミングを習慣にする。
2.学習と実践を組み合わせて、プロジェクトの知識の抜け穴を見つけます。
3.より深く、ローエンドなことを考えます。

最後に、アルバイトでプログラミング能力を向上させたい場合は、次の記事がお勧めです。私がまとめたアルバイトは3つあります。つまり、アルバイトはピットインされず、どのアルバイトに特別な注意を払う必要がありますか。国内外にパートタイムのプラットフォームもいくつかあり、それらの特性のいくつかは、それらがあなたを助けることを願っています:

あなたが私的な仕事から余分なお金を稼ぐことができる10のプラットフォーム、あなたはテクノロジーとお金を持っています

おすすめ

転載: blog.csdn.net/BinSTD/article/details/107331014