もし仕事を失敗してしまったら、損害賠償とかあるのかと思うと怖くて行動できません。実際にフリーランスのプログラマーとして稼いでいる先輩方の経験談や失敗話を教えて欲しいです。
この質問にお応えします。
- フリーランスのプログラマーとしての失敗談を紹介
- フリーランスのプログラマーとして受注失敗を防ぐ方法
こんにちはヒロキ(@hiroking10ten )です。
本記事を書いている私はWebプログラミング歴14年です。
わりかしWebがビジネスに活用され始めた初期から第一線で稼いできました。
最近はブログを書いたり、企業のコンサルをしつつも、プログラミング案件も現役で受注しています。
そこで本記事では「フリーランスのWebプログラマーの仕事の失敗談の紹介と対応策」についてまとめようと思います。
よくプログラミング初心者の方々から「失敗についての質問」を受けますので、自分が実際に過去にやっちまった失敗を振り返りながら、どうやって乗り越えてきたのかを完全公開します。
フリーランスのプログラマーとしての失敗の実例3件【全部、本当の失敗談です】
クライアントに対してもご迷惑をかけたので、本来はこうして記事ネタにするのも不謹慎かもしれませんが、これからフリーランスを目指す人向けに「同じ失敗をしないように」するための体験の共有になればと思い、覚悟を決めてまとめていこうと思います。
私がこの14年で失敗した経験は下記のとおりです。
失敗体験1:あやふやな受注をすれば死ぬ
フリーランス初心者の段階でよくある事例ですが、完全にクライアントとのコミュニケーション不足から起きる失敗談です。
受注前の段階で、クライアントの本当の要望(解決したい問題)を突き詰めていればクリアできました。
コミュニケーションをあやふやにすればする程に、受注したフリーランス側が死にますので強烈に意識しておきましょう!
- クライアント「ざっくりなんですが、●●な感じのサイト作れそうですか?」
- 私「もちろんいけますよ!」
- クライアント「見積もりはどれくらいになりますか?」
- 私「このボリュームだと20万円になります」
- クライアント「それではお願いします!制作お願いします!」
この受注の問題点は分かりますでしょうか?
問題点は、発注するクライアント自体も「持っている完成イメージがあやふや」ということです。
- ●●な感じのサイトにしたい
- テキストや写真はまだ決まってませんが、先に進めてください
- 未決定な部分が多いのですが、納期だけ決まっていて●月●日はマストです
こんな感じの案件を、そのまま受注してしまうと大抵は受注側が最終的に死ぬ結果になります。
実際に上記の案件を「あやふやな感じ」のまま受注してしまった結果、その後に待ち受けていた作業量は地獄でした。
- サーバーもドメインも不明なので代行して設定して欲しい
- メールアドレスも欲しいし、そのメール設定もやって欲しい
- サイトの写真やテキストも合わせて考えて欲しい(手直しはクライアントがするらしい)
- もちろん検索エンジンの上位表示もしたいのでSEOはマスト
- ページ数は50ページほどになる
- 通販のシステムを入れたいから決済機能が欲しい
ぜひ、ご想像ください。
これらの作業量と思考量の仕事を20万円で請けてしまった時のことを!
結局のところ、決済機能に関しては完全に予算外なのでお断りして、サイトの文章もクライアントに出してもらう約束をしましたが、受注から納品までに3ヶ月かかってしまいました。
またクライアントのサイト公開予定日を当初の予定から大幅に超えてしまったのですが、その責任もなぜか私のスキル不足となりました(泣)。
この失敗から学べること
まずは、受注する前に、クライアントがイメージするサイトの完成形をお互いに共有できるまでコミュニケーションを繰り返すことです。
例えば、最初の打ち合わせの段階で、あやふやなクライアントのイメージから、具体的なサイトイメージの事例をその場で見せてあげることができれば、それだけでも相互の認識のズレは解消できたはずです。
- クライアント「●●な感じのサイトにしたい」
- 私「そしたら、このサイトに近い感じですが、このイメージに近いですか?」
- クライアント「もうちょっと情報量も多く出せそう」
- 私「それなら、このサイトにも検索エンジン対策でも勝てるかもしれません。例えば、▲▲のコンテンツや写真って用意してもらえますか?もし無理な場合はこちらでライティングしたり、カメラマンも用意できます」
- クライアント「それならライティングもお願いしたいです!写真はこちらで撮影するので、データをお渡ししますのでそれを使ってください」
- 私「分かりました!納期が●月●日なので、○月○日までに写真データをお願いします!それまでにテキストを盛り込んだテスト環境を作り上げますので、最後に当てはめましょう!」
- クライアント「分かりました!それでは、これで予算はどれくらいになりますか?」
- 私「このサイトの場合は通販とかやる予定ありますか?」
- クライアント「将来的に通販で売りたいんですよね!でも予算次第かもです。」
- 私「分かりました!それでは通販システムがない場合は60万円で、通販システムがある場合は100万円になります!」
最初のコミュニケーションと比べてみてください。
何気ないクライアントの言葉から「奥にある本質的な問題」にたどり着くための質問ができるのか?がポイントになります。
この辺りは完全な初心者には難しいかもしれません。
私自身もこうした失敗を重ねて、徐々に「失敗を未然に防ぐ為に打ち合わせ」を学んで行きました。
とにかく打ち合わせ時に「クライアントが言ってないこと」を先回りして、どんどん提案して聞き出す意識を持ちましょう。
もちろん失敗しても良いと思いますが、大切なことは「同じ失敗を2回しない」ことです。
失敗体験2:大丈夫だろう!で受注したら、大損害に発展
初心者の段階は、当たり前ですが経験とスキルが不十分です。
その経験とスキル&知識不足を埋めるためには挑戦回数を増やすしかありません。
「失敗を恐れて行動できない人」はいつまで経っても成長することはできません。
» 参考:【成功勝率の上げ方】人生は運ゲーだからこそ行動回数を増やすべき理由
しかし、時にはこの「無謀なる挑戦」が大いなる失敗に繋がり、クライアントに大損害を与えてしまうケースもあります。
失敗した案件は、知人のデザイナー経由で受注した案件でした。
- クライアント「いま、color me shopでWebストアを運営しているのですが、自由にデザインがやりにくいので自社サイトで通販をやりたいのですが、可能でしょうか?」
- 私「もちろん、いけますよ!」
- クライアント「それでは、お願いします!結構な人気ストアで売上が月に1000万あるので、この自社ECが完成すればもっと売上が増えるはずです。」
- 私「分かりました!売上をアップさせるために良いサイトを作りますね!」
受注までにも、しっかりと打ち合わせを重ねて、どんなデザインにしたいのか?自社サイトではどんなことをやりたいのか?まで検討して、EC CUBEというECシステムを使って構築しました。
そして、通販サイトのシステムをcolor me shopのASPから、自社サイトに移管してリニューアルが完了!
そのリニューアルキャンペーンとして、サイトで割引価格のセールを開始しました!
もちろん、クライアントには大勢の顧客データがあるので集客も問題ありません。
そして、セール開始から3分後・・・・
サーバーダウンしました。
この失敗から学べること
この時は、「もう会社が終わった・・・」と頭が真っ白になりました。
人気ストアだったので、クライアントがメールマガジンを1通送るだけで一斉に数千人のユーザーがサイトに殺到しました。
完全に私のミスです。クライアントの奥底にある本質を見落としてしまっていました。
- クライアント「いま、color me shopでWebストアを運営しているのですが、自由にデザインがやりにくいので自社サイトで通販をやりたいのですが、可能でしょうか?」
- 私「もちろん、いけますよ!」
- クライアント「それでは、お願いします!結構な人気ストアで売上が月に1000万あるので、この自社ECが完成すればもっと売上が増えるはずです。」
- 私「分かりました!売上をアップさせるために良いサイトを作りますね!」
クライアントの抱える「自由にデザインしたい」という言葉ばかりにフォーカスしてしまい、アクセスが一気に増えるサイトなので「サーバーを事前に強化しないといけない」ことを忘れてしまっていました。
上記のクライアントとのコミュニケーションの中にもヒントはありました。しかし、これを見落としていたのです。
こちらも経験値が少ないプログラマーは陥りがちですが、Webサイトを作るという仕事の中には、プログラミング以外の知っていて当然の業務が多く含まれています。
- UI/UXを考えたデザイン
- サイトの表示速度をアップさせるコーディング
- 検索エンジン対策を考慮したコーディング
- サイトを訪れるユーザーを考慮したライティング
- サイトを表示させるインフラとしてサーバー周りの知識などなど
「プログラマーだから、コーディングだけしか分かりません」
「プログラマーなのでデザインは分かりません」
はクライアントには関係ありません。
それならば、文章が書ける人やデザインできる人とパートナーを組むなど事前にクライアントの問題をトータルで解決できるチームを作るなど対策をするべきです。
当時の私の会社には、サーバー周りのインフラ構築ができるサーバーサイドのエンジニアが不在でした。
こうして売上1000万を無謀にも失い、クライアントは大きな機会損失を抱えました。
この件に関しては、案件を繋いでくれた知人のデザイナーが間に入り「人気サイトのためサーバーがパンクしました!サーバーを増強して再度キャンペーンを開始しましょう!」と機転を効かして乗り切ることができました。
反省としては「案件を受注した先の、クライアントの状態まで予想する」ことです。もちろん予想するには経験値が必要なので、こうした失敗を体感して学ぶこともできます。
しかし、あの血の気の引くサーバーダウンはなかなかヘビー級なので「事前に知っておいて対処できる」ようになっておきましょう!
失敗体験3:クライアント都合に振り回されない契約
最後はクライアントの都合に振り回されないための重要な失敗談になります。
- クライアント「●●のサイトを作りたいので、お願いします!」
- 私「分かりました!納期はいつ頃ですか?」
- クライアント「急で申し訳ないのですが○日なのですがお願いします!助けてください!」
- 私「マジすか汗。そしたら他の案件を止めて対応しますね!」
- クライアント「ありがとうございます!お願いします!」
こうして、急なスケジュールながらも長年仕事をいただいているクライアントのために「無理をしてでも対応すべく」案件を受注しました。
そして、社内のリソースをこのクライアントの案件に集中させて制作作業を進めている時に、クライアントからまさかの連絡が来ました。
- クライアント「すみません!あの案件が無くなりそうです!社内で方向が代わり辞めることになったので中止してください!」
- 私「えっ?マジですか??もう作り始めていますよ。」
- クライアント「すみませんが、社内での決定なので・・・。とりあえず納品はなしです。」
- 私「他の案件も止めていますし、すでに納品前の段階まで作っていますのでキャンセル料をお願いします。」
- クライアント「今、社内で確認しましたが、納品していないのでお支払いはできない感じです。申し訳ないです。」
完全に泣き寝入り状態です。
クライアントの都合で、案件がストップする(延期する)なんてことはフリーランスには多々あります。
ぶっやけ企業も常に変化する環境の中で営業活動をしているので、意思決定の変化は当然です。
ポイントは「その企業の気まぐれに巻き込まれない」ようにすることです。
この失敗から学べること
こうした泣き寝入り・・・というかクライアントの気ままで回収できなかった売上は多分ですが500万ほどありそうです。
こうした失敗を未然に防ぐには、毎回の案件ごとにクライアントに対して「お互いの決まりごと」を明確に伝えることです。固め過ぎかもしれませんが、クライアントに対して信頼がない最初の段階であれば契約書を交わすのもありです。
- 実際に案件は本決まりの状態かを確認する
- 社内の意思決定は誰なのかを確認する
- その人が今後、案件を中止にする可能性はあるかを確認する
- 作り始めてのキャンセルはキャンセル費が必要と伝える
- 念押しをして契約書を用意することを確認する
契約書まで用意すれば、大抵のクライアントの「途中キャンセル」は回避できました。
クライアント側で案件自体が微妙な場合は、この時点でクライアントから「それでは本決まりになった段階でお願いしますね。もしかしたら中止になるかもしれませんので。」と切り出してくるケースが多いです。
クライアント側も中止になるかもしれないリスクとキャンセル料を無駄に支払うリスクは抱えたくないので、あやふやな段階での発注を回避してくれます。
案件を獲得できるか不安...
単価をもっと上げて稼ぎたい...
そのように悩んでいる方も多いと思います。
実は、フリーランスエンジニア専門エージェントを活用すると
案件獲得から単価アップまでサポートしてもらえます!
無料で利用できるので、エンジニア経験がある方は必ず登録しておきましょう!
60秒で登録が終わります。
案件を見ているだけでもテンション上がるので、
今すぐ登録してみてください!
» レバテックフリーランスに無料登録【公式サイト】
フリーランスのプログラマーとして案件の受注失敗を防ぐ具体的な方法
ぶっちゃけ、フリーランスとして活動している中で、1回も失敗せずに仕事をするのって不可能です。
大切な事は以下の2つ。
- 先人の失敗事例から学び、事前に避ける知識を得る
- 自分の失敗事例から学び、同じ失敗を2回しない
失敗を恐れて行動できないのが一番最悪です
こうした失敗談を聞くと、腰が引けて行動できなくなる人がいますが・・・行動できないのが一番ダメですよ。
例えばプログラミングで月10万を稼ぐための学習時間【初心者向けに解説】でも解説しましたが「この案件を受けるには、どれくらいの知識とスキルが必要ですか?」と質問されますが、返答としては「あなたが案件を聞いた際に納品までイメージできるなら受注しましょう」という感じです。
もちろん、細かい仕様や条件にもよりますが、大切なことは先述したように「あやふやな状態」を無くすように、クライアントと相互のイメージが一致できるまでコミュニケーションを重ねることです。
万が一失敗した際は、自己肯定せずに信頼回復に向けて行動する
しかし、何度も言いますが失敗は確実にあります。
大切な事は、失敗した時にどう立ち振舞えるかです。
この立ち振る舞い次第で「フリーランスとして3年後に仕事ができている人かどうか」の明暗が分かれます。
- 3年後に仕事ができないフリーランス
→ 失敗した → 自分よりもクライアントの不足に責任を置く → 自分は悪くないと頑なに反省しない → そのクライアントとの関係が悪化する → 悪い評判が流れる可能性もある - 3年後に仕事を続けるフリーランス
→ 失敗した → 全て自分の不足が責任 → すぐに全ての時間と労力をかけて損害解消に動く → 謝罪して行動して信頼回復に務める → すぐに改善に動いたことで逆に信頼を獲得できた → 新しい顧客も紹介してもらえた
基本的にフリーランスだからといって「フリーに仕事ができる」と勘違いしているなら、フリーランスは辞めるべきです。
企業で勤務すれば、失敗は個人ではなく企業の責任になりますが、フリーランスにおける失敗は100%あなた自身の責任になります。この責任を背負えないのであれば、副業しかり、起業はオススメできません。
私自身もいまだに大小の失敗はあります。もちろん、明らかにクライアント側の過失のケースもありますが、その場合でも「先回りして、そのクライアントがミスすることを防げたのでは?」と考えることができれば、提案段階でのコミュニケーション能力が劇的に向上するはずです。
クライアントの失敗さえも成長のタネに変える
例えば、先日にクライアントとの案件で、こんな事がありました。
- クライアント「お問い合わせフォームの自動返信の文章は、こちらで対応しますね!ヒロキさんだと分からないニュアンスの部分もあると思うので」
- 私「ありがとうございます!助かります!」
- サイト公開前に、気になったのでフォームの自動返信を確認すると、案の定メール文章が設定されていない
- 私「メールフォームの自動送信の内容がまだ未設定だったので、私の方でテンプレで設定しておきましたので、修正しておいてください!もちろん、このまま使っていただいても大丈夫な内容です。」
- クライアント「完全に見落としていました。助かりました!さすがです!ありがとうございます。」
もちろん、こうしたクライアントのミスを先回りして回避することは経験も必要ですが、この辺りはスキルというよりもお客さんへの気配りだと思います。
「自分はプログラマーだから、プログラミングの仕事以外は無関心」ではなく、総合的にその案件を成功させるためにできることを考えれば、あなたの付加価値にもなります。
そして、付加価値がない人はこれからの時代で稼ぐことが、どんどん難しくなってくると思いますので、フリーランスは強く意識するべきです。
» 【付加価値の付け方】これからの時代の仕事で稼げる人の共通点を解説
ということで、本記事はフリーランスのプログラマー(エンジニア)の失敗談と、その対応策をまとめていきました。
実際に、私自身が生で体験した失敗談になりますので、この記事が今後フリーランスを目指す人にとっての「失敗を未然に防ぐ」ためのお役に立てれば幸いです。
人気記事フリーランスが仕事の単価を上げる方法【お金を稼ぐ仕組みの作り方】
人気記事【回避方法】フリーランスエンジニアが仕事ストレスで消耗しない4つの方法