複業フリーランスのhillpointです。
IT系の経験がまったくなく、修行のためにIT系の会社へ転職することなく、フリーランスのエンジニアになる方法、解説します。
転職しないでいいの?
フリーランスのエンジニア
だからこそ
できます。
なぜ?そんなことができるのか?
ポイントは3つです。
① IT業界の仕事には、規模の大小があります。小さな仕事を狙う。
IT業界では、IT技術を使い、システムやサービスを開発することが主な仕事です。
このシステムやサービスには、大きさがあります。
例として
エンジニアが作るシステムを建物に例えたとします。
大きな会社のエンジニアは、超高層ビルのようなとても大きなシステムを作ります。
中規模の会社のエンジニアは、街のビルやマンションといった中規模なシステムを作ります。
小規模の会社のエンジニア、フリーランスのエンジニアは、一軒家やアパートといった小規模のシステムを作ります。
駆け出しのフリーランスのエンジニアは、小屋ならたてれます。
未経験から転職せずにフリーランスのエンジニアになるなら、まずは小屋レベルの仕事狙いましょう。
そこから、経験を積んで、少しづつ大きなシステムに携わっていくのも一個の手段です。
② IT業界の仕事は、規模が大きければ大きいほど、ひとりひとりがやる仕事は、歯車のように小さい。
大きな会社の超高層ビルのような大きなシステムであっても、分解していくと、小さな歯車の組み合わせです。
エンジニアひとりひとりがやる仕事は、この小さな歯車を作ること。
未経験から転職せずにフリーランスのエンジニアになるなら、なにに使うのか?解らないけど、小さな小さな歯車作りから始めるのも、一個の手段です。
また、エンジニアと言っても、めちゃ難しいことやっているエンジニアから、専門性や特殊性の低い、簡単なことをやっているエンジニアまで様々です。
小さくて、簡単なところから入る。
ありです。
③ エンジニアとしての経歴が重要じゃない仕事だってある。
できたて、ほやほや、最先端の技術があったとします。
その技術の経験があるエンジニアなんて世の中には、いません。
エンジニアとしての経歴は無くとも、最先端の技術が使えたら、仕事ができます。
ちょっと前の機械学習(ディープラーニング)とかAI(人口知能)とか、そんな感じでした。
もちろん、最先端の技術は難しいですよ。
あえて、最先端で難しい技術を先に勉強するわけです。
会社員にはできないですから。
また、世の中を変えるような画期的な発想のサービスを作りたい、誰も見た事がないような独創的なデザインのアプリを作りたい、そんな意気込みのクリエイティブなエンジニアも、まじめな経歴は不要です。
そんなクリエイティブなエンジニアを求めている仕事があれば、経歴ではなくセンスを売り込むことで仕事が獲得できます。
まぁ、ちょっと夢っぽい話までしましたが
フリーランスのエンジニアになるのに、経歴が無くても、やっていける仕事はあるということです。
一番身近な例としては、「お店や会社のホームページ作ってほしい。」なんて案件であれば、ちゃんと勉強すれば、独学でも作ることが可能です。
これらもフリーランスエンジニアの代表的な仕事です。
そういったところからでも、実績を積んでいき、一人前のフリーランスのエンジニアになります。
それでは、未経験から転職せずにフリーランスのエンジニアになる方法、解説します。
専門用語について
アイコンがついている専門用語は、「知らないと恥ずかしいITエンジニアの用語集」ページに説明を記載しているので、専門用語の意味が解らない場合、リンクをタップして、説明を参照してください。
フリーランスのエンジニアになる大まかな流れ
未経験の方が、フリーランスのエンジニアになれる場合は、こんな流れです。
・最低限必要なエンジニアのスキルを勉強する。
・少なくとも1個、メジャーなプログラミング言語を勉強し習得する。
・勉強したものを活かして、ポートフォリオサイトを作成する。
・ポートフォリオサイトだけを武器にフリーランス向けの案件を獲得する。
・失敗しながら、学びながら、複数件の案件をこなす。
・一人前のフリーランスのエンジニアになる。
なると決意する前に、エンジニアのおおまかな分類を知る
一言でフリーランスのエンジニアといっても、いろんな種類のエンジニアがいます。
エンジニアの種類については、この記事見てみてください。
知っとるけ?IT系エンジニアの種類
続きを見る
エンジニアの種類を見てもらいましたが、なりたいエンジニアによっては、勉強すべきスキルやプログラミング言語が変わってきます。
この記事では、フリーランスのエンジニアの中でも、アプリケーションエンジニアになる方法を紹介します。
また、アプリケーションエンジニアにも、段階があり、最初は、プログラマーになり、経験を積んでシステムエンジニアとなるのが一般的です。
よって、この記事では、プログラマーになる方法を解説します。
未経験から転職せずにフリーランスのエンジニアになる方法。
大まかな流れに沿って、ステップごとに解説します。
最低限必要なエンジニアのスキルを勉強する。
未経験の方が、フリーランスのエンジニアになるためには、プログラミングを勉強しないといけないことは、解っていただけると思います。
ですが、実際の仕事をやるには、プログラミングだけでは、足りなくて、プログラミング以外にも必要なスキルがあります。
プログラミング以外に最低限必要なエンジニアのスキルが以下です。
・パソコンの基礎知識。特にOfficeが使えること。
・OSの基礎知識。特にLinuxが使えること。
・Webの基礎知識。特にHTML、CSS、JavaScriptが使えること。
・バージョン管理の基礎知識。特にGitが使えること。
ツール(道具)に近いので
使えるようになることが大切です。
たくさんありますが、ここにあげたスキルを必死で勉強し、全てを完璧に習得する必要はありません。
実は、そんなことは不可能です。
これらのスキルは、基礎知識を身に着け、まずは使えるようになることを目的に勉強してください。
このフリーランスのエンジニアになるために必要なスキルについては、以下記事参照してください。
フリーランスエンジニアになるために最低限必要なスキル
続きを見る
少なくとも1個、メジャーなプログラミング言語を勉強し習得する。
プログラム言語は、いろんな種類があり、多数あります。
少なくとも、1個メジャーなプログラミング言語を選んで、徹底的に勉強し、習得してください。
メジャーなプログラミング言語とは以下のような言語です。
・Java
・Go
・Python
・Php
・Ruby
・Kotlin
・Swift
入門サイトや参考書などを使って、基礎から応用まで、この言語であれば、なんでもできますよ。というレベルまで習得してください。
ただ、プログラミング言語が使えるというだけでなく、ライブラリ等も使って、DBのアクセスができること、Webページが作れること、他のサーバと通信ができることなど、応用部分もしっかり習得してください。
この最初に憶える1個のプログラミング言語が、基礎となります。
なお、プログラミング言語は、システム・サービスの特徴や時代・流行の変化によって、使われるプログラミング言語は変化します。
今、めちゃ流行っていても、数年ですたれることは多々あることです。
ですが、1つのプログラミング言語をしっかりと理解できていれば、その後、異なるプログラミング言語がでてきても、基本は似たり寄ったりなので、さほど勉強せずとも使えるようになります。
まずは、1つ、プログラミング言語は徹底的に習得します。
初めてのプログラム言語の選び方は、この記事見てください。
ITエンジニアになるために最初に勉強すべきプログラミング言語
続きを見る
勉強したものを活かして、ポートフォリオサイトを作成する
メジャーなプログラミング言語の勉強と並行でも良いですが、ポートフォリオサイトを作成し、Web上のホームページとして公開してください。
ポートフォリオサイトでググってみるとわかるのですが、ポートフォリオサイトは、Webデザイナーとかがよく作っており、おしゃれなホームページが多いです。
ですが、フリーランスのエンジニアとしては、おしゃれなサイトを作る必要はありません。
シンプルに、あなたのできることをちゃんと現わせていることが重要です。
なぜなら、このポートフォリオサイトは、案件獲得時、自分が保有しているスキルをちゃんと使える、できるということを証明するために使います。
勉強して使えるスキルのリストに加え、各種勉強した内容とともに演習課題や勉強のために作ってみたプログラムなどをポートフォリオサイトにのせてください。
1スキル、1ページとなるのがベストです。
ポートフォリオサイトを作成なんて、簡単に書きましたが、HTMLやCSSの利用、サーバの利用、Web上への公開など、エンジニアとして最低限必要なスキルをバンバン使います。
勉強して、四苦八苦しながら、作られることをおすすめします。
また、プログラミング言語の勉強の結果としては、DBを利用であったり、Webサービスであったり、いろんな応用要素も盛り込んでのせましょう。
参考にしたいポートフォリオ見つけたので、紹介します。
HODA Web Engineering Laboratory
ポートフォリオサイトだけを武器にフリーランス向けの案件を獲得する。
通常、IT業界での様々な仕事、案件、募集は、経歴を一番重要視します。
利用予定のスキルに対して、使うことができるか?に加えて、使った経験があるか?が問われます。
だいたい、スキルに対し、条件があります。
「JavaでWebシステム開発の経験があること」とか「OracleでのDB運用の経験があること」など
まず、発注側は、募集に対して、経歴書を確認し、利用予定のスキルの経歴の有無を確認します。
ですが、経歴の無いエンジニアは、当然、経歴がありません。
さぁどうするか?
プログラミングの勉強の時にした演習課題や勉強のために作ってみたプログラムなどを経歴としてのせましょう。
それらをポートフォリオにのせておいて、経歴書にポートフォリオのURLをつけておきましょう。
こんな感じ
期間 | 案件 | 内容 |
2020年9月〜10月 (2ヵ月) | Javaプログラミング演習 | XXプログラムの開発 https:://ポートフォリオのURL |
経歴書にそんなの書いていいの?
そんなんで、仕事獲得できるの?
なんて思うかもしれませんが、元PMである私、かれこれ500名以上のエンジニアの採用を見てきた私の経験上、全然オッケーです。
もちろん、絶対ではありませんが、私が上のような経歴書を見かけたら、必ず興味を持って、ポートフォリオまで見ます。
可能性は多いにあります。
募集しているものの良い人がいなかったり、体制上、未経験の人も入れておける余裕があったりしたら、採用を検討します。
フリーランスのエンジニアゆえにできることです。
会社員だと、まず会社が許してくれませんから。
こんなんでも仕事が取れる理由。2つあります。
スキルが使えるレベルであることを証明してくれているから
500名以上のエンジニアの採用を見てきた私の経験として、エンジニア採用後、一番困ることがこれです。
「経歴はあるんだけど・・・実はできない、使えない・・・」
Javaの案件で、Javaができるエンジニアを募集しました。
応募があり、経歴書を確認。
経歴、充分あります!
よし、じゃあお願いしようと。
案件の内容を説明して、プログラム開発してもらいました。
いつまでたってもできません。。。。
ふたをあけてみると・・・
あれ、この人、ぜんぜんできないじゃ〜ん。
経歴で書いてるある案件では、何してたの?って問い詰めると、実は、プログラミングはしてなくて、試験ばっかりしていた。とか。
小規模な変更ばかりしていたから、いざ、ゼロから開発してくれと言われても、できないとか。
うそみたいな話ですが、こおいうこと、一定割合であるんです。
それに比べたら、経歴はなくとも、ちゃんとスキルが使えるということをポートフォリオで証明してくれたほうが安心です。
情熱・やる気を感じるから
経験の長いエンジニアには、情熱ややる気がない、というか、やりたくないオーラ全開のエンジニアが一定数います。
なにをするにも、できない、無理、困難と突っぱねるようなエンジニアとかも一定数います。
そんな人ばっかでは、システム開発というのは、仕上がらないんです。
無理してやらないといけないシーンは必ずあるんです。
少々スキルが不足していても
「私、やります!」
「詳しく知らないので、教えてください!」
「なんでもやるんで、言ってください!」
といった、元気で情熱、やる気があるエンジニアのほうが、私は100倍好きです。
チームの中に、ひとりでも、そんな人がいると、チームの雰囲気や成果が変わるという例もいっぱいあります。
実は、このポートフォリオで一番伝えたいのは、情熱とやる気です。
実際、経歴は無いのですから、仕方ありません。
情熱とやる気で勝負というわけです。
失敗しながら、学びながら、複数件の案件をこなす。
努力も実り、案件獲得できたとします。
小さな案件であったとします。
でも、相当苦労すると思います。
だって、実際案件こなしたことないわけですから。
右も左もわからないです。
がむしゃらにやるしかないでしょう。
失敗もあるでしょう。
クレームもあるでしょう。
勉強も終わりではありません。
調べることがいっぱいあるでしょう。
失敗しながら、学びながら、複数個の案件をこなしていきましょう。
一人前のフリーランスのエンジニアになる。
複数個の案件をこなしたら、経歴書も、ほんとの経歴を書けるようになるでしょう。
いろんな案件をとってこれるでしょう。
ちょっと単価が高いやつとか
ちょっと利益がでそうなやつとか
そんな案件も挑戦するでしょう。
おめでとうございます。
簡単ではないですが、ここまできたら、一人前のフリーランスのエンジニアです。