Eugene Cozac がトップレベルの開発者になることについて

公開: 2022-10-26

TechBullion: どのようにしてプログラミングを始めたのですか?

Eugene Cozac:成長するにつれて、数学と STEM 科学への興味を発見しました。 私は独学でコーディングを始めました。もちろん、高校を卒業する頃には、IT 業界で働きたいと 100% 確信していました。 それで、モルドバの最高の大学でコンピューター工学の学位を取得しました。 プログラミングを始める前は、最初の学位がコンピューター エンジニアリングだったので、300 台以上のコンピューターを組み立てました。

TechBullion: 当初、あなたにとって最も挑戦的なプロジェクトの 1 つは何でしたか?

Eugene Cozac:まあ、最初は苦労したとは言えません。 しかし、キャリア 3 年目に、Samsung Pay のフロントエンド開発者になったことがありました。 Samsung Pay Promotions の主要な UI 開発者だったので、すべてを担当しました。 当時、Samsung Pay には 1,500 万人を超えるユーザーがおり、問題やバグがユーザーのエクスペリエンスに影響を与える可能性がありました。 いつでも何か問題が発生した場合、すべてのユーザーがそれを見ることができました。 そのため、細心の注意を払い、可能な限り最高の品質をお届けできるように努めました。

TechBullion: 通常、人々は狭い範囲のプログラミング言語に特化しています。 プログラミング言語に関して、どのようにしてこれほどまでにバランスのとれたものになったのですか?

Eugene Cozac : 通常、開発者のキャリア パスは基本的に、ジュニア レベルからシニア レベルに時間をかけて昇進し、スキルセットを強化することです。 しかし、これでは十分ではありません。 ほとんどの開発者は、同じ会社で同じプロジェクトに数年間従事する可能性がありますが、これは開発者の上位 1% になる方法ではありません。 また、人々は必ずしもプロジェクトをすぐに交換できるとは限らず、別の会社に移動したい場合、これは困難になる可能性があります. 私が言いたいのは、多くの開発者が自分のコンフォートゾーンにいるということですが、これも問題ありません。 同時に、上級開発者でさえ、プロジェクトの責任者として責任を負うことを常に望んでいるわけではありません。彼らは単に自分のタスクを実行しているだけです。 おそらく、それはパーソナリティに関係しています%ほとんどの人は、ハッカソンに参加したり、科学の一部になったり、プログラミングの問題を解決するものを構築したりしたくありません. 彼らは一種の怠け者であり、彼らは自分の快適ゾーンにとどまっています。 私は常に好奇心旺盛でした。複数の言語を学習できるのは、単に別の言語でコーディングできるのではなく、可能な限り最善の方法で問題を解決したいという意欲から来ています。

TechBullion: ハッカソンやプログラミング スプリントに参加しましたか?

Eugene Cozac:そうじゃない。 多くの開発者がハッカソンでスキルを試すことができることは知っていますが、最も重要なことは、できるだけ多くのプロジェクトを構築し、さまざまな環境で作業することだと思います. 確かに、開発者はハッカソンを通じて自分がいかに優れているかを他人や自分自身に示したいと思うことがよくありますが、私としては、自分のスキルを証明するもう 1 つの方法は、JS/CSS で独自のフレームワークを構築し、それを公開するか、独自の実装を実装することです。あなたが働いている会社のフレームワーク。 そして、この会社が独自のフレームワークを使用する必要がある理由を証明するために、React、Bootstrap、または Material UI を使用しないでください。 いずれにせよ、開発者の 1% だけがハッカソンに勝てます。独自のフレームワークを作成すると、何百万人ものユーザーが再利用できるプラットフォームを構築できます。

ユージーン・コザック

TechBullion: 最速のビルド製品は何でしたか? プロセス中にチームとどのようにやり取りしましたか?

Eugene Cozac:通常、開発者はアジャイル環境で作業し、スプリント (2 週間) ごとに多数のタスクを抱えています。 これらのタスクが 2 週間に分割されているが、3 日ですべてを完了できる場合はどうすればよいですか? すべての企業がより多くのタスクを要求することが倫理的であるとは限りません。なぜなら、私たちは平等であり、プロジェクト マネージャーもすべての開発者のために多くの作業を計画しているからです。 しかし、私が 1 人の開発者である会社の請負業者だったという状況があり、それがその会社を選んだ理由です。 私にとって、少数のタスクに取り組むことはあまり面白くありませんでした。たとえば、5 人の開発者ではなく、会社の Web アプリをすべて自分で構築したかったのです。 11 か月で CRM システムをゼロから作成し、最後まで API、UI、UX の作業がありました。 このプロジェクトは、プロジェクトの管理、在庫の追跡、請求書の作成、見積もりの​​作成と管理、GPS を使用した在庫の追跡など、多くの機能を使用して非常に迅速に完了しました。 私は最新の情報を持っていませんが、この CRM は、建設における音響という小さなニッチなビジネスのため、サブスクリプションとして販売されます。

TechBullion: 一流の開発者になるには何が必要ですか?

Eugene Cozac:多くの開発者は、一流の開発者になりたい場合、経験が最も重要であるとあなたに答えることができますが、これは必ずしも真実ではありません。 10 年以上の経験を持つ多くの開発者を知っていますが、多くのプロジェクトやさまざまな複雑なタスクは彼らにとって困難な場合があります。 これは、ある人が上級開発者になるのに 7 ~ 8 年かかるのに、他の人はわずか 4 年しかかからない理由を説明できます。 したがって、最善のアプローチは、並外れた能力を開発し、タスクを解決する正しい方法を開発してから、経験することです。 同時に、雇用のための開発でインタビューを行うのは良いことです: 私はさまざまなクライアントに対して100以上のインタビューを行いました. 私が言ったように、プログラミングにおけるあなたの並外れた能力とスキルを証明することは、あなたが働いている会社であなた自身のフレームワークでプロジェクトを実装することです. これは、プログラミング言語とフレームワークの使用方法を知っているだけでなく、独自のフレームワークを構築し、それを使用することを会社に証明できることを意味します。 したがって、独自のフレームワークに基づいて、何百万ものユーザーを使用する製品を構築します. これは開発者の 1% しかできないと思います。 たとえば、React と組み合わせて使用​​できる独自の UI フレームワークを構築しています。名前は Krypton です。 まだ完成していませんが、現在のクライアントの 1 人のために、クリプトンの一部を使用して新しいプロジェクトを構築しています。 したがって、現在のクライアントは私のフレームワークを完全ではなく部分的に使用していますが、このクライアントのプロジェクトが完了するまで、私のクリプトンが完成し、プロジェクトの 60% 以上がクリプトンで構築されることを願っています。 また、一流の開発者になるための 1 つの良いヒントは、専門誌に科学に関する出版物を書くことです。私は 25 以上の専門誌を持っています。 また、100 以上のピア記事レビューを行いました。開発者は、プログラミングの一部であるだけでなく、科学の一部でもある必要があるからです。

TechBullion: あなたの最強のスキルは何ですか?

Eugene Cozac:任意のプロジェクトに任意の時間枠で参加できることです。 プロジェクトをゼロから始めた時と、途中から参加した時とでは状況が違います。 多くの企業は、それを理解するのに約 2 ~ 3 週間の時間を与えていますが、私の場合は通常 2 日かかります。 卓越した能力を持つ開発者は、あらゆるプロジェクトを理解し、数週間ではなく数日で問題の修正やタスクの実行を開始できます。 また、同時に4つのプロジェクトに取り組むことができます。 おそらく、それができるのは開発者の 1% だけだと思います。つまり、ジュニアからテック リードまで、あらゆる種類の開発者です。 私は同時に 2 つ、3 つ、および 4 つのプロジェクトに取り組み、非常に良い結果をもたらした経験がありました。さらに、それらすべてで、少なくとも 4 人の開発者のシニアまたはチーム リーダーです。 また、このレベルでは、ジュニアからシニアまで他の開発者を指導できる必要があります。 日々のプロジェクトだけでなく、オープンソース フレームワークのようなものを構築したり、科学出版物を書いたりするためにも非常に迅速に作業すること。 品質。 スピード。 多様化。

TechBullion: あなたにとって最も難しかった言語は何ですか?

Eugene Cozac:どのフレームワークや言語も非常に難しいとは思いません。1 つのプログラミング言語を知っていれば、他のいくつかのルールがあるだけで他の言語も同じようなものであったり、フレームワークの機能が多かったり少なかったりします。 並外れた能力を持つ開発者にとって、やりがいのあるプログラミング言語は存在しません。