CodeGym /Java Blog /ランダム /私は自分の人生を Java に結び付けないと誓った — ソフトウェア開発者 Anzor の物語
John Squirrels
レベル 41
San Francisco

私は自分の人生を Java に結び付けないと誓った — ソフトウェア開発者 Anzor の物語

ランダム グループに公開済み
CodeGym の学生は、すでに IT 業界で働いている人の話を聞きたいと考えています。私たちは問題を自らの手で解決し、Java トレーニングを修了したさまざまな国や企業の開発者に関するシリーズを立ち上げました。この物語は、 Anzor Karmov という名前のソフトウェア開発者についての話です(彼は私たちのコースのロシア語版で Java を学びました)。この男は高校時代から Pascal でコーディングするのが好きでしたが、プログラマーになるつもりはありませんでした。彼は最終的に私たちのコースでプログラミングを学び、現在はバックエンド開発者として数年間働いています。アンゾールはどうやってそれを行ったかを語ります。「私は自分の人生を Java に縛らないと誓った」 — ソフトウェア開発者 Anzor の物語 - 1

「この恐怖には決して触れない」

高校時代はプログラミングと Pascal 言語が好きでした。家庭教師がいました。私はビジネス分析の学位を取得するために大学に入学しました。この学習コースには、C# や Java の学習を含むプログラミングの授業が含まれていました。私が自分の人生を Java に結び付けないと誓ったときのことを覚えています。先生は基本的なことを私たちに説明しませんでした。学習教材は事前知識を前提としているようで、不明な点が多かったです。誰もがすでにプログラミングを知っていると思われていました。そのとき私は「この恐怖には絶対に触れない」と思いました。私の IT への取り組みは、Microsoft の ERP システムを導入している会社の面接に合格したときに始まりました。IT 部門には開発者とコンサルタントという 2 種類の従業員がいました。コンサルタントはテスターと製品マネージャーの役​​割を果たし、当然のことながら開発者は開発を行いました。私はコンサルタントとして雇われましたが、履歴書には学校でパスカルを勉強したことが記載されていました。これに基づいて、彼らは私に開発者になることを提案しました。私たちは、愛情を込めて「糞」と呼ばれる、Pascal の「子孫」のような C#L 言語でコーディングしました。この分野の理解が深まったとき、大まかに言えば、これは開発者が作業できる最も低い場所であることに気づきました。会社が悪かったからではなく、私たちが使用していた言語が非常に狭い範囲で適用されていたからです。その知識を他の場所に応用することを期待するのはまったく非現実的でした。私が開発者なら、もっと普遍的で広く応用できることを学ぶ必要があると思いました。

「勉強を放棄したとき、私は怠け者だと自分を叱りました。」

学習するプログラミング言語を選択する際に、私の最終的なリストは C++、C#、Java になりました。フォーラムで読んだ内容から、C++ は私にとって難しく、このトピックに取り組むには多くの時間がかかるだろうと結論付けました。私が Java に落ち着いたのは、この講座に出会ったからかもしれません。私はプログラミング言語を約1年半勉強しました。私の上司は私をとても「助けてくれました」。彼は私の仕事のやる気を失わせる強力な人物でしたが、間違いなく私に Java を学ぶ動機を与えてくれました。彼はひどい上司だったので、一刻も早く彼から離れたいと思っていました。しかし、辞めたいと気づくまでに約1年半かかり、それは独学に費やした時間と同じでした。いろいろ勉強しました。私は計画を立てました。間違いなく、仕事が変わり、Java を学ばなければなりませんでしたが、1 年半の間、継続的にこの取り組みに時間を費やすことができず、毎日勉強することもできませんでした。1~2ヶ月ほど短い休みがありましたが、積極的に勉強した月もありました。スケジュールはこんな感じでした。いつもよりずっと早く起きて、勉強して、仕事に行って、よほど忙しくなければそこで何か勉強して、家に帰って、また勉強するという感じでした。諦めかけたときは、怠けている自分を叱咤激励しましたが、上司との「緊密な連携」に再び刺激を受けて、また熱心に勉強に戻りました。新しいレベルになるたびに、前のレベルよりもさらに難しくなったのを覚えています。最初のレベルに約 1 週間かかった場合、中間に近づくと、1 つのタスクを解決するのに約 1 週間かかります。このすべてを完全に放棄するという考えは私には思いつきませんでした。なぜなら、何が起こっても最後まで到達するだろうと決心したのは私の人生の中でこの時だけだったからです。私はこのモットーを採用しました。「長い間何かを続けていれば、遅かれ早かれ何かはうまくいく」というものです。タスクで行き詰まってしまうことがよくありましたが、解決策はすべてインターネット上のどこかに掲載されているので、必要な解決策を見つけるのは難しくありませんでした。まったく耐えられないときは、既製のソリューションをつかんで貼り付けました。ちなみに、練習プロジェクトがありました。学校で家庭教師に行っていたとき、Sea Battle というゲームを書きたいと思っていました。これは私のデザインでした。コンピュータを操作してコンソールにターゲット セルのアドレスを入力すると、ボートに当たったか、外したか、破壊したかがコンピュータに表示されます。そして同様に、コンピューターもそれに応じて発砲し、命中したか、外れたか、破壊されたかをコンピューターに知らせます。その後、マルチセル船に衝突した後、コンピューターをよりインテリジェントに起動させることができないという事実に行き詰まりました。人間のプレイヤーが敵の船を攻撃すると、次のターンに、前回の攻撃の上下、または左側または右側に射撃します。おそらく私の頭脳が足りなかったので、コンピューターにそのように撮影させることはできませんでした。ある時点で、ついにこのゲームの実装を完了する必要があると思いました。私は座ってコードを書きました、そして以前の障害点を克服しました。レベル28になる前に面接に行ってきました。その後、これを行うのは時期尚早だと判断しました。私はフレームワークを知らず、データベースの操作方法も知らないことに気づきました。CodeGym で最後まで勉強してフレームワークを学ぶか、面接に通い始めるかの選択に迫られました。仕事を探すことにしました。

「ある時点で、私は画期的な進歩を遂げ、みんなが私に電話をかけ始めました。」

Java を学ぶ場合、バックエンド開発に進むか、Android に進むかの 2 つの選択肢があります。そこで、同時に Android についても学び始めました。いくつかの基本的なアプリケーションを作成しました。1 つは数字ゲーム、もう 1 つは計算機でした。私の最初の面接はうまくいきませんでした。なぜなら、私はまだ理解できていないことや知らないことがたくさんあったからです。私は最初の面接(大失敗でした)から 6 か月以上経ってから面接に戻ることを決意しました。私が Java についてあまり知識がなかった頃は、どういうわけか面接の誘いがたくさん来ましたが、しばらくしてスキルがレベルアップすると、連絡は来なくなりました。これは約 6 か月間続きました。6 か月間はかなり苦痛でした。これはすべて無駄だったという感覚が忍び込みました。計画は単純でした。勉強を続けて、遅かれ早かれさらに面接に呼ばれるでしょう。私のブログでは、面接で聞かれる可能性のある質問への回答を投稿し始めました。情報を集めて勉強して投稿を始めました。ある男性は私に手紙を書いて、私の投稿に感謝し、必要であれば履歴書を書くのを手伝うと申し出てくれました。彼は私の履歴書についてフィードバックをくれたので、私はそれを修正しました。しかし、どういうわけか、私はまだ面接に呼ばれませんでした。私はこれを市場の小康状態と関連付けています。おそらく、雇用主は6月に誰も必要としなかったのでしょう。「そしてある時点で、私は突破口を開き、みんなが私に電話をかけ始めました。」面接も何件かありました。たとえば、グループ面接では回答を紙に用意し、開発者志望者に順番に回答を求めました。3つ目は今働いている会社の面接です。それはロイヤルティファクトリーと呼ばれています。それはスタートアップとして始まりました。同社はブランドロイヤルティを高めるために設計されたマーケティングツールを開発しています。当社の製品は、さまざまなブランド向けに製造しているマーケティング ツールキットで、主にレストラン向けですが、ガソリン スタンド、美容院、ショッピング センターにも適しています。この製品は、CRM システムとモバイル アプリで構成されます。したがって、クライアントがレストランの場合は、そのためのモバイル アプリを作成します。レストランの顧客はモバイル アプリをダウンロードし、レストランのオーナーは CRM システムにアクセスできるようになり、ターゲット ユーザーを確認し、さまざまなプロモーションの一環としてオファーを送信できるようになります。アプリでは、対象ユーザーはポイントを蓄積し、特定の特典と引き換えることができます。スタンドアロン モジュールの 1 つにより、支払いゲートウェイとの統合が可能になりました。私たちは隔離措置のはるか前に国際市場に参入しましたが、まさに隔離措置こそが家庭向け食品配達に対する膨大な需要を生み出したのです。多くのレストランは、顧客がモバイル アプリを通じて注文できる機能を必要としており、その多くが私たちに頼ってきました。フードデリバリーモジュールを利用していないクライアントから、モジュールをカスタマイズしてほしいとの要望がありました。レストランは配達することでしか生き残ることができなかったため、これにより、隔離期間中も事業を継続することができた。

「私は仕事を病気で休み、食べて寝てテスト課題に取り組むだけでした。」

私がここで仕事を得ることができたのは、おそらくカバーレターのおかげだと思います。これが私の100回目の履歴書の提出でした。どこにもインタビューに誘ってくれる人がいなかったので、機嫌が悪かったです。私はカバーレターに自分の苦しみをすべて書き出して送りました。採用担当者は後になって、これが彼女の人生で最も感動的なカバーレターであり、おそらくそれが私が面接に呼ばれた理由だと語った。面接の後、彼らは私にテスト タスクを与えました。それは、Wi-Fi 経由で Android アプリをテストする Web インターフェイスを備えたプログラムを作成するというものでした。私のプログラムでは、どのテストが成功し、どのテストが失敗したかを表示することになっていました。テストを完了するまでに 1 週​​間の時間が与えられました。それは私の人生の中で最も忙しいコーディング週間でした。私は仕事を病気で休み、食べて寝てテスト課題に取り組むだけでした。ようやく完成して提出しました。しばらくして、採用担当者から電話があり、テストの結果が非常に良かったので、他の候補者を待つ必要はないと言われました。私は Java 開発者になるためにそこに行きましたが、この欠員が埋まったことが判明し、自動テストを作成するテスターに​​なるようオファーされました。私たちのテスト部門では、私以外に Java を知っている人は誰もいませんでした。モバイルアプリを手動でテストするシステムがあると聞きました。これは Web インターフェースを備えたプログラムでした。Web インターフェースにアクセスし、テスト アプリケーションをテスト セッションに接続すると、何をする必要があるかがわかります。私の最初の仕事は、テスト セッションでクリックしたテスターを交代することでした。すぐにすべてが始まりました。最初のテスト ケースを自動化し、次に 2 つ目、3 つ目と続きました。残念ながら、モバイル アプリの普及が私が自動テストに適応できるよりもはるかに速く進んでいたため、残念なことに、私の発案者は本番環境を実現することはありませんでした。彼らのために。その後、Web インターフェイスをテストする 2 番目の自動テスト プロジェクトが与えられました。社内の管理パネルをテストでカバーする必要がありました。テストするためにプログラムを一から書き始めました。3 番目のプロジェクトを終えようとしていたとき、サーバー開発者がいる部門に異動して、彼らのためにコードを書いてみないかと誘われました。これには大喜びでした。この部門では、いくつかの小さな改良を加え始め、システムに慣れてきました。新しい仕事をするたびに少し怖かったです。対応できないのではないかと不安になりました。結局、すべてがうまくいきました。現在、私はモバイル アプリのバックエンド開発を担当するチームのリーダーを務めています。私の部下の一人、つまり私のいとこもこの Java コースで勉強しました。私は彼を指導してきました。彼は現在ジュニア開発者です。私が彼に勉強の動機を与えたと言えるかもしれません。このトレーニングは私の人生をより良いものに変えるのに役立ちました。私はこの機会を愛する人たちと共有したいと思いました。「私は自分の人生を Java に縛らないと誓った」 — ソフトウェア開発者 Anzor の物語 - 3

初心者開発者向けのヒント:

1. 勉強を整理する方法

まずは、私がどのように勉強したかをお話します。波のように勉強しました。燃え尽き症候群のためか、まったく勉強しなかった時期もありました。1ヶ月以上何もしない期間がありました。そしてその後、回復期間が始まります。このまま何もしなければ人生は何も変わらないと気づいたときの出来事です。この確信から、私は朝4時半に起きて、出勤前に少し勉強するようになりました。仕事中に勉強しました。そして仕事が終わって家に帰ってまた勉強しました。しばらくすると、自然に燃え尽き症候群になり、一度に何か月も何もしないようになりました。私が完全に諦めなかったのは、やめても人生は変わらないことがはっきりとわかっていたからです。そして、私は以前の生活が好きではありませんでした。だから、やめてしまうかも知れないと思うことさえ頭に入らないようにしました。私のモットーは、「長く何かを続けていれば、遅かれ早かれ何かがうまくいく」でした。4年経った今、同じことをするのはお勧めしません。誰もがそのような自己残酷に耐えられるとは思いません。休まずに働くと燃え尽き症候群につながります。ストレスは、ストレスの後にある程度のリラックスが続いた場合にのみ有益です。したがって、(他のすべてのことと同様に)勉強を計画する方法に関しては、一度に少しずつ、しかし長期にわたって定期的に勉強することをお勧めします。リラックスしなければなりません。無理しないでください。脳は、休んで眠っているときにのみ、すべてを吸収し始めます。これは、勉強と休息に対して同じように真剣に取り組む必要があることを意味します。

2. 仕事の探し方

これは簡単です。仕事を探すとき、最初の目標は面接を受けることです。おそらく失敗するでしょう。したがって、すぐに就職することについてはあまり考えないでください。始めるには、面接を受けるだけです。これを実現するには、どこかから招待状を受け取るまで、次の 3 つのことだけを行う必要があります。
  1. 履歴書を作成します。
  2. 履歴書を全員に送ります。
  3. 得られたフィードバックを見てください。あまり返答が得られない場合は、その履歴書は魅力的ではないと言えます。履歴書の書き方、仕事への応募方法、カバーレターの書き方についてお読みください。ステップ 1 に進みます。
最初の面接に落ちたら、自分の背中を軽く叩いてください。一定の知識を習得し、面接に合格することは大きな成果です。ここでの大きな間違いは、諦めてしまうことです。もちろん、拒否されるのは不快です。しかし、すべてが計画通りに進んでおり、希望する仕事にかなり近づいています。次の目標は、もう一度面接に落ちることです。そして、さらにもう 1 つ、そしてさらにもう 1 つ... そして、それぞれのインタビューの後で、何が起こったかを評価します。自分の知識のギャップを見直して、そのギャップを減らしてください。急いでいません。大切なのは、継続的な努力と自分に優しくすることです。あなたはすべてを正しくやっています。ある日、あなたにオファーが届きます。ここがあなたが向かっている目的地です。当然の申し出です。あなたは素晴らしいです!オファーについて話し合うときは、遠慮せずに質問してください。理想的には、事前に質問のリストを作成してください。ワークフローがどのようなものかを尋ねてください。どのようなタスクを担当しますか? いつか仕事をしたくないと思って、休憩を取ることにした場合はどうしますか? 病気になったらどうしますか?休暇についてですが、28日間連続で取得できるのでしょうか、それとも取得できないのでしょうか?指導者はいますか?等々。後で不愉快な驚きを受けるよりも、すべての質問をして、すべてに事前に同意する方が良いでしょう。就職面接では、求愛と評価は双方向で行われることを忘れないでください。あなたが彼らを必要としているのと同じくらい、彼らもあなたを必要としています。

3. 職場で快適になる方法

素直になれ。ご遠慮なくご質問ください。間違いを恐れないでください。最初はよく理解できなくても、ストレスを感じる必要はありません。最初は誰でも戸惑います。約 6 ~ 12 か月以内に会社に実質的な利益がもたらされ始めます。それまでの間、プロセスに没頭し、製品を研究し、学習を続けてください。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION