次の記事は、CodeGym コミュニティのメンバーであるMax Sternによって公開されました。これがあなたが尋ねた質問である場合は、ご覧ください。あるいは、プログラミングの学習を始めるには遅すぎるのではないかという疑問に悩まされている人を知っている場合は、この話を共有してください。

単に電車に乗り遅れたことを知らなかったので、とにかく行きました

私が初めて転職を考えたとき、私の青春はすでに過去のものでした。それほど昔のことではありませんが、私は丸 30 年間の人生を経験しました。おそらくご存知のとおり、IT 分野で働く一部の人事マネージャーにとって、これは非常に高齢の年齢です。

しかし、自分の年齢が「退職間近」に相当すると考えられるとは思いもしませんでした。「もう手遅れではないですか?」なんて思いもしませんでした。そして、この無思慮さが私を救ってくれたのだと思います。もし私が「白髪の29歳でも遅すぎるということはない!」というやる気を起こさせる記事に出会っていたら。勉強を始めたばかりの頃、私は不安になり、おそらくプログラミングについて何か重要なことを理解していないのではないかと結論づけていました。たとえば、プログラミングには若い脳細胞が必要で、26 歳になるとある種の不可逆的な突然変異が始まると私は信じるようになったかもしれません。それで終わりです。電気を消して家に帰りましょう。私はその考えを完全に放棄するか、根治的脳手術を選択するかのどちらかだったかもしれません。

または体操をしてください。これらのアスリートには特別な筋肉の要件があるため、彼らのキャリアは 20 歳で終わり、若い体操選手は 8 歳を過ぎるとプロのトラックに受け入れられません。そして彼らは生まれて初めておじいさん、おばあさんと呼ばれることになります。

私はそのような「若い」職業に直接出会ったことがありませんでした。私は数学を勉強し、しばらくは科学も勉強しました。その後、高校で教師として退職しました。高校 (専門学校であっても) は、「何?! あなたは <18 歳から 105 歳までの数字を入力> 歳です! 教師にはなれません。遅い(早い)」または「あなたには教える傾向がまったくありません。」そこでは、理にかなった、善い、そして永遠のものを私たちの若者の心に植え付けたいという束の間の願望を表明する人は誰でも、強制的に捕まえられます。候補者がその職業に適しているかどうかを評価するための特別なチェックさえありません。犯罪歴がないことを確認するだけです (ご存知の方はご存知でしょう...)。

数学者や非プログラミングエンジニアに対する厳しい年齢制限など聞いたことがありませんでした。そこで私は、何かをする必要があると決心しました。ある時点で、「このまま高校教師を続ければ、精神病院に行くことになる」と気づいたからです。あるいは、あまり長くは続かないでしょう。職業を変えようと決めたときも、私はまだ数学が好きでした。私は子供たちに対してほとんど無関心でしたが、無言の軽蔑がいくつかありました。これらの若い生き物たちとの不平等な闘いで死んだ私の神経細胞の数を考えると、私は自分の給料に少し当惑しました。

そうですね、高校を辞めるのも一つのアイデアです。でもどこに行こう?研究所に戻ると、プログラミングの問題を解くのが楽しかったです。確かに、私はあまり多くのことをしませんでした、そして私はすでにすべてを忘れることができました。それでも、私は決心をしました。この電車に乗り遅れるとは思っていなかったので、そのまま乗り込んで出発しました。

私がプログラミングを学んだ方法 (非常に簡単に)

  1. 私は高校でパスカルを少しだけ学びました。
  2. 私は研究所で C と Java を少し勉強しました。
  3. フルタイムの Java コースに挑戦したこともありましたが、(卒業後 10 年後に) 辞めてしまいました。
  4. 私は CodeGym にたどり着きました (フルタイム コースを辞めてから 1 年後) — 気に入ったのですが、深く学ぶ時間がなかったため、すぐに「逃げて」しまいました。
  5. それから私はそれを真剣に受け止めることにしました。何人かの生徒を指導しましたが、私は高校教師を辞めました。ちなみに、あなたが有能な家庭教師であることを示せば、高校教師の 4 分の 1 の時間で 2 倍の収入を得ることができます。そして、あなたが節約できる神経細胞の数については、私は何も言いません。CodeGymで勉強を続けました。時々、プログラマーの友人を質問で苦しめたこともありました。本を読んだり、インターネットで答えを探したりするのが定番です!
  6. ある企業でインターンシップに参加し、無事終了しました。

ある時点で、私は年齢に関連したさまざまな問題に遭遇しましたが、その中には直接的な問題もあれば、フォーラムで、または他の将来の 30 歳の若手開発者との会話中に知った問題もありました。しかし、これらの問題は本当なのでしょうか?上で述べた体操選手の場合のように、それらは私たちの生理学的年齢の課題に関連しているのでしょうか、それとも本質的に社会的、心理的なものなのでしょうか?以下にこれらの要因について説明します。そして、私はそれらが誤りであることを暴露しますが、「ほぼ誰でも」プログラマーになれるとは主張しません。

一番の要因。心理的な障壁、つまり「時計が進んでいる…」

CodeGym でレベル 20+ に到達し、就職について考え始めたとき、私は少し不安を感じ、自分が思っている (と感じている) 若くて将来有望な人間ではないのではないかと疑い始めました。それは、私がフォーラムでチャットした17歳のジョンや23歳のカイルよりも成績が悪かったからではありません。でも、「30歳を過ぎると学ぶのはとても難しい」から、彼らはいつも私に幸運を祈ってくれたからです。そしてジュニア開発者になるなんて、まったく考えられないことです。彼らはあなたを雇わないでしょう、そしてもし彼らがあなたを雇ったとしても…若い人たちに従属するのは恥ずかしいことになるでしょう。この自信のなさは、「遅すぎることはない」という考えを表明する記事に頻繁に遭遇し、誰かが遅すぎるのではないかと尋ねているに違いないと気づいたからでもあります

そして、私の良きプログラマーの友人はかつてこう言いました。「急いでください。そうしないと実現しません。あなたの履歴書さえ見ないでしょう。」それを聞いて、私は完全に意気消沈してしまいました…そして、結婚や出産についての失礼なヒントを常に受け​​取った女性が何を感じなければならないか理解しました。「時計は刻一刻と進んでいる」という、懸念を装った痛烈なフレーズを思い出してください。

私は間違いなく行き詰まり、何の仕事も完了できないことに気づきました。IDEAを開いたのですが、一行も入力できませんでした。心臓の鼓動を感じる代わりに、「時計のカチカチ音」が聞こえました。そのカチカチ音は実際、クレムリンの時計の鐘の音のように、脅威的で騒々しい本格的な戦いでした。

率直に言って、頭の中で鐘が鳴り響くと、しばらくの間、私は行動できなくなりました。私はただ時間を無駄にしていたと結論付けました。30代の初心者にとってプログラミングはせいぜい趣味で、プロにはなれないということ。22歳のとき、ギターの弾き方を習い始め、スイングダンスに通い始めました。しかし、ギターとダンスを学ぶのにそれほど時間はかからず、プロのダンサーやギタリストになるという希望はまったくありませんでした。それで、ここで何が期待できるでしょうか?

幸いなことに、この自信喪失は長くは続きませんでした。論理が動きました。そして、この論理は、これはすべて普通の不安であると言いました。この問題は私の頭の中にあっただけだということ。「23 歳の上級開発者がいるのに、この老人はジュニア開発者ですらない。」「私は彼らには決して追いつけない。」しかし、私は自分自身に問いました、「なぜ彼らを追いかけるのでしょうか?ただ熱心に勉強を続けて何が起こるかを見たほうが良いのではありませんか?」

そしてコードの作成を再開することができました。そして、書けば書くほど、より良いものを書くことができました。非常に論理的ですね。

要因その 2: 大人は学校の成績が悪いのでしょうか?

大人にとって学習は必ずしも容易ではないのは事実です。しかしこれは、28歳が人生で何をしていたかに関係なく、成人の脳が28歳になると自動的に縮小するからではありません。実際には、この困難の理由は、多くの大人が単に定期的に勉強する習慣がないことにあります。ジムに行くようなものです。参加すれば、少なくとも良い状態を維持するか、フィットネスを向上させることができます。行かないと、すべてのフィットネス指標がゆっくりと悪化します。「鏡の国のアリス」の美しくもばかばかしい言葉のように、同じ場所に留まるには、全力で走り続ける必要があります。どこか別の場所に行きたい場合は、少なくとも 2 倍の速度で走らなければなりません

したがって、あなたが 30 歳以上で、広い意味で定期的に脳を使っているのであれば(たとえば、読み書き、外国語の勉強、楽器の勉強、模型飛行機の製作など)、それはそれほど難しいことではありません。ここで重要なのは、あなたが定期的に何かをしているということだけです。定期的に勉強してきました。まず、数学の勉強がありました。それから私は教える方法を学び(真剣に児童心理学を学び、準備ができていない人々に数学的な情報を伝える方法を考え、要約を書きました)、英語、ダンス、ギターも学びました。そして最近ではボクシングを習っています。

私は教師を数年務めていますが、子供の年齢の重要性は非常に過大評価されていると断言できます。厳しい言葉をお許しください。私は信じられないほど、想像を絶するほど頭の悪い子供たちに出会ってきました。彼らは90歳の病人のように、あるいはアヘン中毒者のように授業に座っていた。8 年生では、分数の足し算ができず、掛け算について漠然とした考えしか持っていない人もいました。しかし、私はまた、学習し、能力を伸ばし始めた、非常に弱い心を持った子供たちにも出会いました。私は非常に才能のある子供たちを見てきましたが、よほどのひどい出来事がなければ、彼らはきっと同じように才能のある大人になるでしょう。

同様に、大人になった私は、英語の授業にかろうじて合格した元クラスメートに、単なる同情心から会いました。彼女は29歳で再び英語を始め、英語を勉強し、今は翻訳の仕事をしており、さらに私を成長させてくれました。

はい、子供たちがもっとうまくできることがいくつかあります。しかし、プログラミングの場合はそうではありません、信じてください。学習する習慣がなくなってしまった場合は、再び学習に慣れるように努め、そのための時間を自分に与え、習慣を形成することが重要です。おそらく、「習慣が抜けている」人は、対面コース (必ずしもプログラミングに関するものでなくても) を受講してから、CodeGym またはプログラミングの独学に進むべきでしょう。勉強する気がない、またはあまりやる気がないのであれば、そうです、本当に遅すぎます。たとえ20歳であっても。

要因その3: 時間が足りない

私は勉強を始めた当初にこの問題に遭遇しました。小学生から大学生までの学生にとって、活動時間の3分の2はある意味勉強に費やされます。その結果、別の学問の出現は彼らにとってそれほど目立たず、学習プロセスが適切に構成されていれば重大な影響も与えません。

私の時間の半分は仕事に費やされました。もう一つの部分は私の個人的な関係に当てはまりました。私は毎日1時間を趣味に費やしました。そして一日の一部は休んだ(しかし、ほとんどの時間はいやらしい宿題をチェックしていた)。あ、たまに寝てました。私のスケジュールを考えると、たとえ趣味をすべて放棄したとしても、頭を使って真剣に勉強する時間が十分ではありませんでした。仕事で疲れすぎていました。

おそらく、これはほとんどの人にとって非常に厄介な問題です。愛する人たちと勉強時間を調整し、娯楽をあきらめ、勉強計画を立て、疲れていてもぶらぶらしないようにしなければなりません。私が簡単に仕事を辞めることができたのは、第一に、どうすれば収入(家庭教師)を得ることができるかを事前に考えていたからであり、第二に、上で述べた理由からいつでも仕事に戻れると知っていたからです。だからここでは「簡単だよ、やってみろ!」と叫ぶつもりはありません。本当じゃない。特に家族がいる場合は。しかし、ほとんどの場合、方法は見つかります。たとえば、家族の友人は、タバコを吸う休憩の回数を減らし、同僚とおしゃべりをするようになりました。計算した後、彼女はこれらの活動が作業時間のうちおよそ 2 時間を占めていることに気付きました。彼女はさらに熱心に働き始め、さらに 1 時間の時間を確保しました。結果として、彼女はすべての仕事をなんとかこなし、残りの 2 ~ 3 時間を CodeGym の勉強に費やしました。ちなみに、私にこのサイトを紹介してくれたのは彼女です。はい、彼女はすでに中級レベルの開発者です。そして、はい、彼女は私と同じ年齢です。私の結論は次のとおりです。問題は深刻ですが、多くの場合、解決策はあります。私のような根本的な解決策です。あるいは、私の友人のような省力化ソリューションです。または、他の何か。少なくとも 1 つを見つけてみてください。

要因その 4: 誰かのゲートキーパー コンプレックス、または「ああ、人事のあの女性…」

私はいつも、自分よりずっと年上の人や年下の人と簡単にコミュニケーションをとることができました。しかし、私の知人を観察した後、これは標準からは程遠く、この点で私はかなり珍しいことに気づきました。なぜこのような状況になっているのかはわかりませんが、変化する必要があります。ITでも生活全般でも。

IT フォーラムのどこでも、「重要なのは年齢ではなく、知識だ」と吹聴する人がいますが、実際には、誰の履歴書が選ばれるかに年齢が影響することがよくあります。特に企業でのインターンシップの場合はそうです。私の友人は、きちんとした有料のフルタイムのプログラミングコースを修了し、グループの中で最も聡明な私と同い年の男性は常に先生に褒められていたと言いました。ちなみに先生は優秀な現役シニアJava開発者です。インターンシップを無事終えるまでに、何度か相談に乗っていただき、貴重なアドバイスをいただきました。この教師のグループには大学生も 2 名含まれています。「良い」ものと「悪い」もの。

さて、彼らは「Java Enterprise、Spring、Hibernate」のコースを修了した後、インターンシップ (私と同じものではなく、別のもの) に応募しました。クラス全体の中から 2 名の応募者が合格しました。誰だと思いますか?そう、大学生の二人です。「悪い」ものであっても。確かに、彼はすぐにインターンシップを断念しましたが、彼が受け入れたことで状況は変わりました。グループ内で最も有望な候補者にチャンスが与えられなかったのと同じように、彼にも年齢のせいでチャンスが与えられたのです。その結果、「有望な」学生はプログラマーになりましたが、「老人」は本当に努力する必要がありました。

履歴書に生年月日が含まれていたときは何も返事がありませんでしたが、それを削除するとすぐに問題が起こり始めました。冗談じゃないよ。人事担当者の皆さん、本気ですか?私がすでに面接を受けていて、人々を魅了することができたときは別の問題でした。それから私の年齢は本当に重要ではなく、私の知識とコミュニケーションスキルがすぐに前面に出てきました。したがって、私からあなたへのアドバイスは、生年月日を削除し、ソーシャル ネットワークから年齢を明らかにする情報をすべて削除することです (人事マネージャーがソーシャル ネットワークを見ていることがあります)。年齢で判断させないでください。

公平を期すために、「年齢が高すぎる」という理由で履歴書を審査しない優秀な人事マネージャーがいることに注意してください。

結論

  1. プログラミングはバレエではありません。少年合唱団ではありません。体操じゃないよ。ここでは、加齢に伴う変化は本質的な障壁ではありません。あなたのライフスタイルがもっと重要です。
  2. 心理的な壁を乗り越えることが重要です。若い人が高い地位にいますか?なぜ彼らと自分を比較するのか自問してみてください。将来の潜在的なポジションに対して自分自身を比較することはすでに十分です。後で自分自身を測定してください。新しいことでプロになるには遅すぎますか?まあ、17 歳で始めていたら、プログラミングの達人にはなれなかったかもしれませんが (それは事実ではないかもしれません)、Java プロジェクトには、それ以上かそれ以上の、まともな中レベルの開発者が必要です。彼らには「スター」が必要だ。プログラミングが好き、または論理的思考方法を知っていて、高収入の分野に参入する決意がある場合は、大胆に最初の一歩を踏み出しましょう。
  3. 定期的に勉強する時間を確保しなければなりません。仕事と家族の重荷を負う大人にとって、これは確かに困難ですが、多くの場合、この問題は解決策を熱心に探せば解決できます。平日と週末に何をしているかを分析します。何を切り取って、何を並べ替えることができるかを考えて、前に進んでください。
    「学ぶのに遅すぎるということはありません」と、学ぶことをやめなかった人は言いました。10年以上ブランクがあると、本当に大変です。学習プロセスに慣れるために、簡単な趣味やいくつかのコースに数か月を費やすことは価値があるかもしれません。あなたがすでに(何らかの形で)学習しているのであれば、プログラミングを学ぶことはあなたにとって問題ではありません - 少なくとも年齢の問題ではありません。
  4. 項目 2 ~ 4 に対処していただけますか? それからプログラマーになるのに遅すぎるということはありません。そして私はあなたが何歳なのか聞いているわけではありません =)。
  5. 視野の狭い人事マネージャーは、高齢の求職者にとって大きなハードルとなる可能性がありますが、これは克服できます。ただし、履歴書を送るときは、見知らぬ人に自分の年齢を知らせないでください。あなたのテクノロジースタックとコミュニケーションスキルを見てもらいましょう。
  6. 勉強して行動するのがめんどくさい場合、教育のために何も犠牲にするつもりがなく、時間を確保できない場合のみ、手遅れになります。もしそうなら、たとえ19歳であっても手遅れです。