AI・データ分析関連の転職ならキカガク Career

未経験からエンジニアになった私が、あの頃に戻ってエンジニアを目指して独学するなら?

未経験からエンジニアになった今、あの頃に戻ってエンジニアを目指して独学するなら?

キカガクで ToC サービスを開発している西村です!
私は未経験から独学でプログラミングを勉強してキカガクにエンジニアとして転職しました。

そんな私が、もしあの頃に戻ってエンジニアを目指して独学するだろうか?今プログラミングを学習している人の参考になるかと思いまとめました!

この記事のまとめ
  • エンジニアの種類を把握する
  • 流れに沿って作ってみる
  • オリジナルでなにかを作ってみる
  • 記事を書くなど、アウトプットしてみる
  • モチベーションの維持が大事!

エンジニアの種類を把握する

自分がどんな分野のエンジニアになりたいかを考えることは、キャリアを築く上でとても大切です。エンジニアの種類によっては必要とされるスキルセットが大きく変わってきます。

いくつかの主要なエンジニアのタイプを紹介し、それぞれが持つ特徴や必要なスキルについて解説します。

自分の興味や将来のキャリアの目標を踏まえ、どのエンジニアのタイプを目指すかを明確にしましょう。
それぞれのエンジニアのタイプについて理解を深め、自分に合ったタイプを見つけてください。

  1. フロントエンドエンジニア
    主な仕事は、ウェブサイトやアプリがどのように見え、どのように動作するかを担当することです。
    これには、ユーザーが直接触れるインターフェース(つまり、画面上で見たり触ったりする部分)のデザインと機能が含まれます。
  2. バックエンドエンジニア
    主な仕事は、サーバー(ウェブサイトやアプリが動作するコンピューター)、データベース(データを保存・管理するシステム)、そしてアプリケーションの内部的な動作やロジック(つまり、プログラムがどのように動くかの規則や手順)に関わることです。
  3. データサイエンティスト
    主な仕事は、データ分析、機械学習、統計学などの技術を使って、データの中に隠されたパターンやトレンドを発見し、その結果をビジネスや科学の問題解決に役立てることです。
  4. AI/機械学習エンジニア:
    主な仕事は、コンピューターにデータを分析させて、自動で判断を下したり、未来の出来事を予測するモデルを作ることです。
  5. ネットワーク/システムエンジニア
    主な仕事は、コンピュータネットワークやシステムの設計、運用、保守です。
    ネットワーク設計、セキュリティ、クラウドサービスなどの知識が重要です。
  6. セキュリティエンジニア
    主な仕事は、組織の情報システムを保護するための戦略を立て、実施することです。
    侵入テスト、暗号化、セキュリティポリシーの知識が必要です。

オンライン学習サービスを活用して何か作ってみる

多くのプログラミング初学者は、「何から手をつければ良いのか?」という疑問に直面します。

一般的には「公式ドキュメンテーションを読むべき」とされていますが、そのアプローチで成功する初学者はほんの一握りです。多くの人は、難解な内容に直面し、挫折してしまいます。

私のおすすめは、学びたい技術スタックを用いてアプリケーションを作成することを目指した動画教材を利用する方法です。

この学習スタイルの利点は、はじめは理解できなくても、動画のまねをすることで少しずつ前進できる点です。

プログラミング学習において、最も挫折しやすいのは、原因不明のエラーに直面して立ち止まってしまうことです。
最初は単にまねることから始め、動作する何かを作り出すことが大切です。

実際、私も独学の際には、知人のエンジニアからおすすめされた Udemy の動画教材を使って ToDo アプリを作成しました。

AI・機械学習エンジニアを目指す場合は、キカガク Learning を活用して学習するのもおすすめです。

オリジナルで何かつくってみる

オンラインでの学習を通じて得た知識を活かし、オリジナルのアプリケーションの開発に挑戦しましょう。

世の中にまだ存在しない、自分自身や周囲の人々の小さな問題を解決できるようなサービスを作り出すことは、非常に価値があります。

オリジナルのアプリケーションを作成することは、私が独学時代に実践して良かったと感じています。その中でも、特に印象に残っているのは、麻雀の多面張を練習するためのアプリを作成したことです。

この経験から、自分でアイデアを形にすることの楽しさと、それによって得られる学びの大きさを実感しました。

作ったアプリケーションに関する記事を書く

自分で開発したアプリケーションに関する記事を書くことは非常に有益です。記事では、アプリケーションの仕様、開発過程でつまづいたことや工夫したことについて書くのがオススメです。

技術関連の記事を書くことは、一見ハードルが高いように感じるでしょうが、実際にはそうではありません。私自身、初心者として最初の記事を投稿する際には非常に緊張していましたがそれ以上のメリットがありました。

1 つ目は、自分自身の学習過程の振り返りができること。
2 つ目は、記事が有識者の目に触れ、貴重なフィードバックを受ける可能性があること。

記事を書くことは自分の理解を深めることに繋がります。

ChatGPT を使い倒す

ChatGPT を積極的に活用することは、エンジニアリングの学習過程において大いに役立ちます。私の周囲のエンジニアたちも、ChatGPT を頻繁に使用しています。

エラーでつまずいたときには、エラーメッセージを入力すると解決策を提案してくれるため、学習が加速します。困った時だけでなく、コードのリファクタリング(コードの改善や整理)にも ChatGPT を活用することをおすすめします。

ChatGPT を利用する上での注意

ChatGPT に 100% 頼るのではなく、自分でエラーの原因を理解し、解決する能力を養うことも重要です。


プログラミング言語やテクノロジーは常に進化しています。ChatGPT は特定の時点までの情報しか提供できないため、最新のトレンドやアップデートに関しては他の情報源も参照することが必要です。

モチベーション維持戦略

これまで様々な学習方法についてご紹介してきましたが、最も重要なのはモチベーションを維持することです。ここでは、モチベーションを保ち続けるための戦略についていくつかのポイントを述べていきます。

ゴールを決める

まず、学習のゴールをはっきりと定めることが重要です。それがアプリケーションの完成であったり、エンジニアとしての転職であったり、人によって異なるでしょう。

明確なゴールを設定することで、何をすべきかが明らかになり、モチベーションを維持し続けられます。

実際にエンジニアと話してみる

実際にエンジニアと話をすることも、モチベーションを高めるのに役立ちます。特に転職を目指している方にとっては、現場のエンジニアとの対話は非常に有益です。

エンジニアとして働く人々の日常や業務内容について知ることで、学習への意欲が高まったり学習効率がよくなったりします。

エンジニアと直接話す機会がない場合は、カジュアル面談を活用するのもおすすめです。多くの企業がカジュアル面談を実施しており、実際の働き方やキャリアパスについて話を聞くことができます。

こういったような対話を通じて、学習に対する具体的なイメージが膨らみ、より一層のモチベーション向上につながるでしょう。

効率よく学習してエンジニア転職しよう

この記事では、私自身の視点から様々な学習方法についてお話ししてきました。

しかし、最も大切なのは、自分自身に合った学習方法を見つけ、それに多くの時間を投じることです。この記事が、あなたがエンジニアとしてのキャリアを歩む上で、少しでも参考になれば嬉しいです!