フリーランスプログラマになる方法を解説します

HTML,CSS,JavaScript,PHP,jQueryなどの言語を勉強
→模写ゴーディングに挑戦
→自分でオリジナルの物を作ってみる
→ポートフォリオ作成
→クラウドワークスなどで案件受注

どうでしょうか?これは正しい手順と言えるでしょうか?

こうした悩みを解決します。

記事の内容

・現場がほしいのは実力と協調性がある人間
・先輩プログラマーの意見

解説の根拠

ソフトウェアエンジニアとして10年間会社勤めしました。
組み込みエンジニアと呼ばれる分野で、家電製品や小型の機器を動かすソフトウェア作りをやっていました。

現場がほしいのは実力と協調性がある人間

フリーランスでプログラマーとして生計を立てるには、実力と協調性が必要です。
とくに私だったら協調性を最重視するかもしれません。

開発規模が大きくなるほどチームで取り組むことが多くなります。
例えば装飾担当チーム、スクリプト担当チーム、デザイン担当チームなど分かれて作業して
互いの成果物をつなぎ合わせて動作チェックすることになりますが、
ここに至るまでに何度もミーティングを行う必要があります。

実力はもちろんのこと、
開発を円滑に進めていくことができる協調性は身に着けておきたいところです。

先輩プログラマーの皆さんの意見

信用と実績を積む段階を経るべきかと。
どんなに技術力があろうが、信頼出来ない相手に仕事を出す事は
マトモな顧客のすることではありません
[客の言う事聞かないマッドサイエンティストでは困りモノ]。

正社員を経た事が無いなんて相手にバレてれば、
大抵の顧客は心配になって発注を渋るかと。

jQueryが入っているならPHPのフレームワーク(Laravelとか)も入れてください。素のPHPだと弱いです。
あと最近はJavaScriptのフレームワークも結構使うんで、それも出来るといいです。僕はAngularJSを良く使ってます。

あとはやっぱり、他の人も言ってますがクラウドワークスは案件がとにかく安いしクライアントの質も微妙です。
要は素人ってことで、開発をよく知ってるクライアントよりも対応・コンサルのスキルが必要ですし、
費用も安く考えてます。なので積極推奨はしかねます。

複数人での開発経験もあったほうがいいので、
1-2年程度イケてる開発会社で社員として修業したほうがベターだと思います。

プログラマーの仕事をなめています
これだと、せいぜいアルバイトレベルです、これでいっぱしのプログラマー気取りはまだ早いです

そんな素人に仕事を依頼する企業などありません
フリーランスが仕事を選ぶのではなく、仕事がフリーランスを選ぶのです

IT企業に就職して、4~5年間はたらいて実績と実力をつけてから、フリーランスを考えるべきです

まず、クラウドワークスなどの案件を眺めてみて、
初心者が一部分でも簡単にできそうなものから勝手にザッと作ってみる
そしてその過程などをQiitaにアウトプットする(できれば週1個)と早く身に付くと思いますし、
一石三鳥以上だと思います。

今の言語があればある程度の仕事はできると思います。
しかし、実践経験がないとイレギュラーなことに対応ができないかもしれませんね。
分からないは通じませんし、無茶言ってくるクライアントをかわせません。

あとフリーランスになるならコネか営業力が必要です。
あとは業界を知らないとトラブルになることは多いかと思いますが、これから経験していけばいいかと。

>クラウドワークスなどで案件受注
ここが、致命的だなあ。

フリーランスでやるなら、客の仕様にダメ出しできるくらいの実力が必要だよ(しれも、経験に裏付けられた、説得料が必要だからね)。
足元を見られて買いたたかれるような安い案件にはもの申し、行き届かないふざけた仕様にはケチを付け、あるべき姿をクライアントに示しすのがフリーランスとしての務めだ。

じゃないと他回答にあるように、
>知識が無いか、使い潰そうとしている方が多い
案件ばかりで、ちっとも稼げないなんて羽目に陥るよ。
もちろん、キミが10万人に1人の逸材であるなら、失礼を致した。
(ちなみに、サラリーマンPGでも、独立出来るのは数十人に一人の優秀者だよ)

サーバを借りて、色々なものをどんどん作って公開。
ユーザー数が増えそうなら、広告を募る。

的な方が、良いような気もします。
脳内メイカーみたいなスマッシュヒットをするものもありますからねー。

>これは正しい手順と言えるでしょうか?
間違っているとは言いませんが、効率が悪くリスクの高い手順だと思います。

理由は、以下の通りです。
・実績の無いままだと安く買い叩かれるため稼げません。
・実務を知らない状態でWEB系の仕事を受けるのは、かなりリスクが高いです。
(セキュリティが甘ければ、サーバーが乗っ取られてたり、情報を抜かれ、賠償案件となります。
1件あたり最低500円程度なので、1万件抜かれると500万以上の賠償となります。
契約書の書き方を知らなければバグや遅延などが発生した場合、全てを被ることになる可能性が高いです。)

IT業界の開発職でフリーランスとして安定した仕事をしたい場合は、最低でも5年以上は勤めてその間に、
仕事の流れや技術を習得し、契約書の書き方を覚えて、伝手を作り、その伝手から仕事が得られるようにするのが一般的となります。

クラウドワークスで、実績のない方に仕事を出す人は、知識が無いか、使い潰そうとしている方が多いため、トラブルに発展する場合が多いです。
そんな状態で仕事をする側も知識がなければ、かなり厳しい状態になる可能性が高いですよ。

習得しようとしている技術からWEB系のシステムだと思いますが、セキュリティ面を学んだり、レンタルサーバーを使ったり、実務の中で覚えていくことが多いと思います。
多分、実際に学んでから、シミュレーションしてみると、レンタルサーバーはどう選ぶのか、とか、SQLインジェクションはどう対策していくか、証明書の発行はどうするか、といった具体的な疑問が出て来て、会社のやり方が知りたいと思われると思います。

勤めるとしても、学んだことは無駄にはなりませんので、まず学んでみると良いと思いますよ。

案件受注はどうやってやりますか?
技術を持っていれば、黙っていても仕事が舞い込んでくる、という話ではないです。
顧客はあなたの技術力、実績、人柄を知りません。たぶん、今まで何件位手がけましたか、とか、どこの仕事をやりましたか、というような話になると思います。実はあなたの所が初めての実績になります、というのでは…。
顧客に信頼されないと仕事は手に入らないと思います。技術の取得は勿論のこと、見たこともない顧客からの信頼の取得をどうやったら得られるかも考えた方がいいと思います。

まとめ

・会社で勤めて力を付けてから独立を考えましょう
・PHPやJavascriptはフレームワークの学習もしておくとよいです