現役フリーランスに聞いた!稼ぐエンジニアが実践する効率的な学習方法
2021.08.14
フリーランスエンジニアの人口は年々増加しています。しかし、フリーランスエンジニア歴が浅いエンジニアの中には、
効率的な学習方法を知りたい
稼ぐためにどんな学習をすればよいのかわからない
と、学習方法に関して悩みを持たれている方を多く見かけます。
今回は独学でプログラミングを学びながらWebエンジニアになった現役フリーランスエンジニアの方にお話を伺いました。今回の記事では、
フリーランスエンジニアが稼ぐために学習することの必要性
現役フリーランスエンジニアが実践する学習方法
学習時間を作るコツ
についてご紹介していきます。
この記事を読めばフリーランスエンジニアが収入を稼ぐためにどのような学習方法を実践していけばよいのかわかります。
フリーランスエンジニアが稼ぐためには学習が必要不可欠
フリーランスエンジニアとして独立して稼ぐためにはスキルが必要不可欠です。そのためには、自分が必要と思う分野の学習を行っていかなければなりません。
実際、フリーランスエンジニアは経験年数を問わず、開業届けを出してしまえば誰でもフリーランスエンジニアになれるでしょう。しかし、高い収入を得ているエンジニアは市場の中でも必要とされている分野の知識を持ち、プロジェクトの中で活躍できる人たちです。
実際にフリーランスの66%は「書籍」「講座」「仕事の受け方」を工夫して、スキルアップのために学習を行なっています。
引用:フリーランス白書2020
フリーランスエンジニアは実践だけではなく能動的にスキルを学習していく必要があります。フリーランスは会社員と違い、自分から学習する機会を作らないとスキルが身につきません。
会社に属していればスキルアップやキャリアアップの機会は会社と相談しながら考えていくことができます。しかし、フリーランスは自分で必要なスキルを習得していくために行動をしていかないとスキルアップできず、さらに上の案件に挑戦することはできません。
また、独学をすると命名規則やプログラムの書き方を自己流で行なってしまうことが多くなります。しかし、自己流の書き方はメンテナンス性も悪くスキル不足とみなされることも。
エンジニアとして確固たる技術を身につけ収入を上げていくためには、正しい学習方法・学習機会を設け常に知識をアップデートしていく必要があります。
新しい言語はどう学ぶ?現役フリーランスエンジニアが実践する学習方法
収入を稼ぐフリーランスエンジニアは新しい言語を学び続ける必要があります。では、新しい言語を学ぶ際、どのような勉強方法を実践していくのがよいでしょうか。
以下現役フリーランスエンジニアが実践する勉強方法の一例を紹介します。
大まかな流れは以下の通りです。
本で勉強をする
実際に言語を使ってみる
言語ツールの公式ドキュメントを読む
インターネットで調べる
ポートフォリオを展開する
ひとつずつ解説していきます。
本で勉強する
まずは体系的に言語について理解を深める必要があります。プログラミング言語に関連する書籍は多数あるので、自分が学びたい言語について書かれている書籍を選びましょう。
書籍を選ぶ際は、その言語の第一線で活躍している専門家の著書を選ぶのがおすすめです。例として、Pythonを学ぶのであれば『ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装』、Rubyを学ぶのであれば『プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで 』などです。
また書籍を選ぶ際、下記項目はきちんと押さえたうえで購入されることをおすすめします。
自分のレベルに合っている
出版日が5年以内
サンプルコードが豊富に掲載されている
上記以外ではインターネット通販サイトやQiitaの書籍レビューなども参考にして自分に合う本を選びましょう。
実際に言語を使ってみる
ある程度書籍で勉強したら、次は題材を用意して実際にプログラミングしてみます。まずは学んだ書籍に沿って一通りの文法を使ってみましょう。
その後、新しい言語を用いて簡単なアプリやサイトを自主開発してみるのがおすすめです。実際にアプリを作る中で「この動きはどう実装するんだろう?」「本の通りに書いたのに動かない!」なんてことも。一通り0から1を作ることで、言語仕様を深く理解できます。
しかしながら書籍に書かれている内容だけでは開発につまづくことがでてきます。そこで次から紹介する「公式ドキュメント」「インターネット」を用いて、さらに知識を深めましょう。
言語・ツールの公式ドキュメントを読む
公式ドキュメントとは、言語やツールの開発元が発行している言語・ツールの仕様を理解するための文書です。
学習を進めていくとサイトや書籍だけでは躓いてしまうケースもあるので、その解決方法として、公式ドキュメントを読んで勉強するのがおすすめです。
公式ドキュメントのメリットとしては、
常に最新の情報が見られる
常に正しい情報を無料で得られる
が挙げられます。
例えば、近年注目されている言語である、Googleが開発したオープンソースフレームワーク「Flutter」、同じくGoogleが開発したプログラミング言語「Go」などの公式ドキュメントは情報も多く、学習の助けになります。
また、学習者の多いプログラミング言語「Ruby」なども公式ドキュメントがあります。
他の言語をマスターしているレベルのエンジニアは公式ドキュメントで充分な場合もあるので、自分に必要かどうか判断して活用してみましょう。
インターネットで調べる
公式ドキュメントや書籍には載っていない問題がでてきたら、サイトで調べて問題解決します。Webサービスの「Qiita」で質問してもよいでしょう。Qiitaはエンジニアに関する知識を記録・共有するためのサービスなので、自主的に課題解決スキルをつけることができます。
実は、この「自分で調べて解決する力(課題解決スキル)」はエンジニアにとっては非常に重要な力です。特にフリーランスエンジニアはひとりで開発を行なう場面が多々あります。人に手取り足取り教えてもらわずに、自分自身で開発を遂行する能力を身につけられる機会だと思って取り組みましょう。
ポートフォリオを展開する
ここまできたらポートフォリオのアプリ・サイトを展開し、エンジニアの友人と一緒に拡大していくのもありです。共同で行うことでより完成度の高いプロダクトを作成できますし、ポートフォリオとしての評価が高まる可能性も。また、第三者視点が入ることにより、ミスを見つけやすくなったり、よりよいコーディングの方法を見つけられたりすることもメリットです。
上記の過程を経験することで実際の案件を想定した学習ができ、新しい言語のインプットからアウトプットまで自然に学ぶことができます。
フリーランスエンジニアが知識を深めるための学習方法
ここまではフリーランスエンジニアとしてのスキル学習について触れてきましたが、ここからさらに知識を深めるためにはどのような学習を行なっていくべきなのでしょうか。
技術系雑誌を読む
フリーランスエンジニアが読むべき技術系雑誌には様々な種類があります。それぞれの雑誌ごとに特徴が異なるので、
有名な技術系雑誌の1つでもある『日経コンピュータ』は、システム管理者・情シス担当などのITプロフェッショナルからITで企業改革を進める経営者までIT業界の有益な情報を得ることができる雑誌です。
Webアプリケーション技術に特化した内容なら『WEB+DB PRESS』を読むのもよいでしょう。SE、PGが読むプログラミング技術情報誌の中ではおすすめの1冊です。
勉強会やセミナーに参加する
最近はエンジニア向けにオンラインでの勉強会やセミナーが多く開催されています。エンジニア関係でよく行われているイベントは以下の通りです。
カンファレンス:テックリード企業のエンジニアや技術責任者が集まり講義・講評を行なう
ハッカソン:複数のエンジニアで開発課題に挑戦するコンテスト形式の勉強会
勉強会:特定の分野・技術などのテーマを絞って参加者同士で勉強し合う
セミナー:特定の分野・技術に関して専門家が解説を行なう
特に、メルカリをはじめとしたテックリード系の企業はこのようなイベントを積極的に行なっています。勉強会やセミナーでは最新技術に関する情報を聞けたり、他のエンジニアと意見交換や情報交換ができます。参加することで、どんなライブラリが使われているのかや言語の作法を学ぶことができ、最新の情報をキャッチアップすることが可能ですし、他のエンジニアと仲良くなり仕事の紹介につなげるというチャンスも出てくることでしょう。
先に挙げた「自己流のプログラミング」にならないためにも、フリーランスエンジニアは特にセミナーや勉強会への参加を積極的に行いましょう。
企業のテックブログを読む
テックブログとは、Webサービスやシステムを提供している企業が自社の技術や開発手法のノウハウ紹介などをエンジニア向けに情報公開しているブログです。
有名な企業では『メルカリ』や『クックパッド』、『サイボウズ』などテックリード系の企業が積極的に公開しています。
テックブログを読むことにより、実現したい機能に対して他のエンジニアがどう実装するのかを理解でき、体系的に詳しく知識をつけることができます。
フリーランスエンジニアに必要な学習時間は週に平均2.7時間
ここまで様々な言語学習方法を紹介してきました。上記でお伝えしてきたことを実践していけば充分成果は出ると思われます。
しかし、理解していてもなかなか実現できないのが現状ですよね。実際にIT人材白書2020の統計を見てみると、業務以外の週当たりの平均的な勉強時間を見たとき先端IT従事者は平均週に2.7時間学習しています。
反対に、先端IT非従事者では「ほとんど勉強しない」が最も多く51.6%と約5割に上り、勉強しない理由で最も多かったのが、「勉強時間が確保できない」ことでした。
参考:IT人材白書2020
フリーランスエンジニアの収入と学習時間が比例することを考えると、フリーランスエンジニアとして稼いでいくには、上記の学習時間が最低限確保しておきたいところです。
学習時間を作るコツは「苦手な業務を外注すること」
フリーランスエンジニアは自分自身で学習時間を作っていかなければなりません。しかし、フリーランスエンジニアは業務や事務作業で手一杯な場合も多いです。
理由として、フリーランスになると経理や事務手続き、営業活動など会社員であれば他の部署に任せられる業務にも時間を割かないといけないからです。
その課題を解決し、学習時間を確保するために苦手な業務を外注することも1つの手です。
そこで、フリーランスエンジニアの助けになるのがフリエンです。フリエンはフリーランス専門のエージェントであり、30,000件を超える案件数を取り扱っています。エージェントを活用することによりエンジニアが苦手とする営業領域をカバーすることが可能になります。
まとめ
これまで解説してきたように、稼ぐフリーランスエンジニアが効率的に学習していくには
新しい言語を学習する際は実際のプロジェクトを想定した上で学習する
インプットだけではなくアウトプットをして知識を深める
苦手な業務は外注し、時間を確保する
などがあります。
勉強方法はあくまで一例になります。自分に合った学習方法は実際に実践していかないと分かりません。効率的な学習方法を身につけるために、まずはできることから挑戦していきましょう。
また、学習時間を作るためには業務の効率化も重要です。自身の業務に集中するためにも多くの時間を割かれる営業領域はフリエンを活用して効率の良い学習をしていきましょう。
関連記事:>>【プロが解説】フリーランスエンジニアが安定して仕事を獲得できる方法とは?
関連記事:>>【人材会社が解説】フリーランスエンジニアがスキルを上げる上で大切なこと
※新型コロナウィルスの感染拡大防止のため、フリエンを運営するアン・コンサルティング株式会社では、WEB(Google meet、ZOOMなど)ならびにお電話によるご面談(カウンセリング)をご案内差し上げております。