フリーランスエンジニア(プログラマ)になるには?
フリーランスエンジニア(プログラマ)になるには?
ワタシはフリーランスエンジニアのプログラマとして15年以上、仕事をしています。そんなワタシが、感じるフリーランスエンジニアになるための要素などを書いていこうと思います。ただ、これはワタシの経験に基づく意見で、なおかつ、ワタシは平平凡凡の中庸なプログラマであることをご承知おきください。
フリーランスエンジニア(プログラマ)になるために必要なこと
プログラミング知識
フリーランスになる前には、プログラミング知識は必須です。もっとも一般的なオープン系の案件の場合、以下のような知識が必要だと思います。
オープン系のプログラマに絶対必須の知識
- HTML
- JavaScript
- CSS
- SQL全般
まず、ウェブ系のシステムでは、当然、HTMLベースで画面が作られますので、関連する知識「HTML」「JavaScript」「CSS」は必須です。『全く分かりません』では、話になりません。レファレンスを見てもいいので、どういうことができるのかはちゃんと知っておかなければなりません。
また、データベースのないシステムはないと思ってください。データベースのデータ操作には「SQL」必須です。『SQLって何ですか?』って思うようなら、まだ、フリーランスにはならないほうがいいです。
その他知っていたほうがよい知識
- Java
- C言語、C++など
- C#、VB(.NET)など.NET Framework系
- PHP
- Ruby
など。
言語の数は無数にあり、すべて習得したり、また、実務経験を積み重ねることはできません。
ただ、プログラミング言語というのは基本的には同じで、条件分岐があり、文字列型や数値型の変数があり、フレームワークが提供するライブラリを使って、処理を行うというものです。オンラインのアプリだろうが、バッチのアプリだろうが基本的には同じです。
よって、上記の言語を知っていれば、ほぼ応用が利きます。ただ、案件をもらうには、当然、実務経験を積み重ねて、同様の言語にも対応できることをしっかりアピールしなければなりません。
ワタシは仕事をし始めた時(20年くらい前)には「C言語がわかれば何でもできる」と言われていました。よって、C言語ができれば実際、無難に採用していましたね。
プログラミング知識がないのなら?
文系で、なおかつ、プログラミングの実務経験がないのなら、SkillHacks(スキルハックス) のようなプログラミングスクールなどで、ちゃんとわかっている方から指導を受けるほうがいいと思います。独学でもある程度はできますが、分からないところがあると、解決できず、成長できないからです。
社会人としての実務経験
フリーランスといっても、ワタシは、社会人としての経験、できれば正社員としての経験が必須だと思います。理由は以下の3つです。
- プロとしてプログラミングをして製品を作ることと学習のみで知識としてプログラミングを知っていることとは次元が全く違う
- 社会人としての実務経験は、責任感を養った、信頼できる人間としての証であるし、たとえ前職がプログラミングと関係のない職種であったとしても、その経験は、システム開発に活きる。
- 大企業との業務請負契約、または、派遣契約における常駐業務の場合、社内での適切な振る舞いが求められ、多少な理不尽な文化/慣習なども受け入れなければならないので、正社員などで経験があれば、なお良い
プロとアマとは全然違う
学生時代理系で、プログラミングなどを学んでいると、たくさん知識があっていいのですが、残念ながら、知識としてプログラミングできるのと、プロとしてお金をもらってプログラミングするのとは全然違います。
仕事でなければ、プログラミングはうまく動けば問題ありません。しかし、仕事であれば、「動けばいい」というものではありません。『動かなかったとき』もちゃんと考慮しなければなりません。障害が発生して、原因を調査しても、『わかりません』ではすみません。基本的には、プログラムは動かないことがあるものです。100%確実に動くものではありません。サーバ自体のハードの問題で、動作しないこともありますし、通信障害で動かないこともあります。その場合、正しく復旧できるようにコーディングしなければなりませんし、障害要因を確実にログなどにこの差なければなりません。
また、多くの人とプロジェクト運営するものなので、かつ、メンテナンスを考慮するとちゃんとコーディング規約などにもい添う必要があります。
プロとしてプログラミングをするには、実務経験でしか得られないものもあるものです。
そういう意味においては、フリーランスとなるには、まず、社会人としての経験を積むべきだと、考えます
新卒でフリーランスにならないほうがいい
あくまでも個人的な意見ですが、新卒で実務経験のないまま、フリーランスになるのはお勧めしません。確かに、最初だけ、案件探しに難儀するだけで、実務経験をかさねれば、キャリアアップできるかもしれませんが、最初は、よい案件を取れないでしょうから、高額案件獲得まで時間がかかりますし、最悪、うまく案件がとれず、低額案件を続けるしかないかもしれません。
まず正社員になることがおすすめ
ワタシはフリーランスになる前、正社員になることをおすすめします。
その理由は、
- 正社員の場合、即戦力として、求められなくてもよい
これに尽きると思います。特に新卒です。新卒であれば、文系でも問題ありません。ワタシも文系ですし、しかもがk制時代はMacを利用していたのでWindowsパソコンを触ったことすらありませんでした。
プログラミングもしたことなくても、先輩の助言や、既存のプログラムソースコードを見ながら、一歩ずつ学んでいきました。ワタシが、フリーランスエンジニアになれたのは、間違いなく、正社員として働いたからです。
開業届提出
「フリーランス」となる決意ができたら、まず、お近くの税務署で「開業届」を出してください。また、必要に応じて、「青色申告承認申請書」も提出してください。青色申告特別控除は、自営業・フリーランスのメリットを最大限に生かせるシステムなので、必ず提出したほうがいいです。(青色申告でない場合には、白色申告になります)。
提出物
お近くの税務署に提出するもの、また、あわせて、提出をおすすめするものは以下の二つです。
- 開業届
- 青色申告承認申請書
記入方法
『記入方法なんてわからない』とお思いでしょうが、大丈夫です。今は素晴らしいクラウドサービスがあります。
マネーフォーワードでは、開業届支援もしています。
必要な情報を入力し、印刷すれば、開業届/青色申告承認申請書が出てきます。
提出方法
提出方法は税務署の窓口と郵送があります。
郵送での注意点
郵送での提出時、開業届(2通:1通は税務署提出用、もう1通は本人控用)、青色申告承認申請書(2通:開業届同様1通は税務署提出用、もう1通は控用)を送付しますが、合わせて、返信用封筒(切手添付)も同封してください
これを同封しないと、税務署から控えが返ってきません。控用の開業届、青色申告承認申請書にハンコを押してくれ、返送してくれるので、必ず、返信用の封筒を入れ、なおかつ、切手を添付するようにしてください。
エージェント登録
開業届までだしたら、あなたは晴れて「フリーランス」(自営業)になれました。
次に、案件を探して、仕事をもらわないといけないです。
おすすめのエージェントを紹介しておきます。
案件を探すのなら月50万以上
どこにお住まいなのかにはよるのですが、関東や関西などの都会にお住まいなら、月50万円以上の案件を探すべきです。それ以下であれば、給料の安い会社員とあまり変わらないかもしれないからです。。正直、月50万円以上の案件は簡単に見つかると思います。月60万円以上の案件もたくさんあり、20代でも簡単に獲得できると思います。
それくらいの高額の案件をとらないと、いろいろ費用がかかるフリーランスのメリットを生かせ切れないと思います。
単価は妥協しないほうがいいと思います。
確定申告はどうしたらいいの?
大丈夫です。基本的には、エージェントサービスは、確定申告支援をしています。Pe-BANKもテックビズフリーランスも確定申告支援をしています。心配しなくていいです。
また、慣れてくると、マネーフォーワードみたいな会計クラウドサービスをりようしてもいいと思います。
実際、ワタシはもう自分でクラウドサービスを利用して確定申告をしています。
心配しなくていいのでご安心を。
ワタシは、フリーランスエンジニアになってよかったと思っています。
理由は、非常に経済的に恵まれたからです。
努力次第では、若くして夢の1000万円プレーヤーも可能だと思います。
年功序列ではないのがフリーランスの世界です。若い人ほどチャレンジしてみてはどうでしょうか。