「正社員エンジニアだけど、副業(業務委託)でもエンジニアとして働きたいな...」と思っていた時期に、知っておきたかったエンジニア副業のことについてまとめます。
これからエンジニア副業していきたいと思っている方の参考になれば嬉しいです。
筆者の経歴
前提として、筆者のこれまでのエンジニアとしての経歴は↓です。
- 未経験〜半年:ProgateとTECH::CAMPだけやってRailsの会社で半年インターン。最初の1ヶ月は時給500円スタートで極貧。2ヶ月目から時給1000円にアップ。
- 〜3年目:JavaでWebサーバーサイド開発メイン(Pythonで開発したいな...フロントも開発したいな...とモヤモヤ)
- 4年目:転職。PythonとVue.jsでサーバーとフロント開発。転職活動時に副業(RubyとNuxt.js)始め、3ヶ月後に追加1社で副業(PythonとJSとAWS)開始。
エンジニア副業を初めて5ヶ月ですが、副業を始めて新しいことを学ぶごとに職歴を少しづつアップデートしていました。
それがよかったのか業務委託案件の話をいただくことが増え、今では正社員として働きながら副業2社で働いています。
エンジニア副業を始めるまでに知っておきたかったこと(結論)
先に結論だけまとめておきます。
エンジニア副業を始める前に知っておきたかったこと
- 副業を始めるためには、自分の提供できる価値を明確にすることと案件募集者にアプローチできる数が大事
- 副業の稼働は平日夜・土日の好きな時間でOK、稼働時間によって報酬が決まる。稼働時間は自己申告制のことが多い。
- 報酬は、その技術の業務経験1年~3年で時給2000円~5000円程度。報酬の多寡は募集企業の財務状況による。
- 副業(業務委託)の報酬は、正社員報酬よりも高くなりやすく、上がりやすい。
- 副業(業務委託)でも業務未経験の新しい技術を学んで技術成長していくことはできる。
- 自分の興味のある技術学習や個人開発の時間は減るが、副業の方が必要性に駆られて技術学習するので技術習得は速い。
- 正社員をしながら副業(業務委託)をすることは可能。同時に2社副業できている。
- 高い性能のデバイス、技術学習に迷いなく投資できるようになる。
それぞれ詳細に説明していきます。
副業を始めるためには、自分の提供できる価値を明確にすることと案件募集者にアプローチできる数が大事
副業を始めるためには、副業エンジニアを募集している企業の募集背景を知り、自分が副業エンジニアとして稼働することで、その募集背景(求めていること)を満たすことができることを示すことが大事です。
たとえば、副業募集している企業が「正社員エンジニアを採用できてなくて、各種機能はあるけどスロークエリや不必要な画面の再描画など、非効率な処理になっていて利用ユーザーの増加に耐えられない。なんとか機能の改善をしたい。」と考えているのなら、面談の際に自分の機能のパフォーマンス改善経験を前面にアピールして、「自分なら機能のパフォーマンスをこう改善できる」ということを伝えましょう。
副業募集の決裁者(主に経営者)は、「この副業エンジニアを雇うことで事業数字がどのくらいの期間でどの程度伸びるのか、その可能性はどの程度か?」を常に考えているので、自分が副業としてて稼働することで、経営者の重視している事業数字が伸びることがイメージできれば、業務委託契約が交わされ、副業を開始することができます。
エンジニア副業の案件探しの経路と決まりやすさについて、個人的な経験ベースで書いておきます。
知人紹介 > 気になる企業にアポ > 副業マッチングWebサービス登録で待ち の順番で決まりやすく単価も上がりやすい印象です。
知人の紹介得るためにも本業で成果出す&他部署他職種の人とランチ積極的にいくのとても大事。とにかくリード数増やすことが大事。
エンジニアが副業先を探す上で、参考となる記事を載せておきます。
↓1年目からエンジニア副業されてる方の事例で参考になる部分多いです
↓上の記事ではWantedlyが挙げられていますがWebエンジニアとして副業を探した実体験としては、自分は副業マッチングサイト知る限り全部登録していますが、AnotherWorksとCODEALが成約率高い(案件が新鮮/モダン/高単価多め)ので、そこだけでも登録しておくと良いと思います。
ちなみに、Webエンジニアの業務経験が2年以上あるのに副業が全然決まらない場合は、正社員の業務経験が汎用性に欠けるか、技術的に評価されないことに時間を使っている可能性があります。
その場合は、週に5日間40時間(一般的な人の稼働できる時間の80%以上)を、自分の技術的経験の伸びない業務に費やしてしまうのは技術経験とキャリア選択の悪循環にはまってしまうと状況は一向によくならないので、転職を検討すべきかもしれません。
とくに、大規模サービスの開発・社内システムの保守運用などしか業務経験がない場合は、副業案件と相性が悪くて決まりにくい印象です。自戒もこめて。
というのも、副業を募集している企業は、資金はあるけども新規開発の人手が足りてない企業。つまりは、守備範囲の広さ(未経験技術のキャッチアップの速さ)が求められることが圧倒的に多いので。
エンジニア副業は、とにかく「すでに業務経験がある人に案件が集まりがち」です。
今困っている技術の業務経験がある時給5000円のエンジニアと、業務経験は浅いけど時給2000円で働いてもらえるエンジニアだと、間違いなく前者が選ばれます。
業務経験のあるなしによって、調査・設計・実装・動作確認(テスト)・リリースまでに3倍以上の工数の開きが出ることは多々あるので。
例)
業務経験のないエンジニアだと30時間かかる。時給2000円だとして6万円の支出で、1ヶ月後にリリース。
VS
業務経験のあるエンジニアだと10時間で終わる。時給5000円だとして5万円の支出で、1週間後にはリリースできる。
あなたが経営者でなくとも、どちらに仕事を頼むかは明白ですよね。
上記のような背景があるので、エンジニア業務経験が浅いけど副業をしたいという方は、まずは報酬が安くても始めることを最優先した方がいいです。まずは業務経験を積むこと。
始めた時の報酬が低くても、エンジニア副業を始めて業務経験を徐々に積んでいけば、案件の声がかかることが増えてきて報酬交渉ができるようになります。
副業先はどんだけ変えても経歴に傷つかないので、より条件のいい副業先での稼働時間を増やしていけばいいでしょう(もちろん、急に辞めないこと・副業先に迷惑をかけないマナーは必須です)。
目前の報酬の高さよりも、汎用性がありそうな副業業務経験を広げる方が圧倒的に重要。
副業の稼働は平日夜・土日の好きな時間でOK、稼働時間によって報酬が決まる。稼働時間は自己申告制のことが多い。
副業(業務委託)の稼働は、フルリモート・稼働時間自由な案件が多い印象です。
週1で開発MTGがあり、そこで自分が1週間で開発するタスクが決まるので、そのタスクを平日夜/土日など使って進めていきます。
仕様の疑問や相談したいところが見つかれば、都度Slackで相談をします。
副業(業務委託)では、時間給で契約することが一般的で、月末に稼働時間を申告し、次の月末に稼働時間分の報酬が振り込まれます。
たとえば、時給3000円で8月に50時間働いた場合は、稼働分の15万円 + 確定申告時に支払う必要がある消費税10%の1.5万円 - 源泉徴収費10.21%の約1.5万円で、合計の請求額は約15万円になります。
その15万円が9月末に支払われる。というように月末締め翌月末までの支払いのケースが多いかと。
源泉徴収費に関しては、企業が支払う税金でエンジニアの業務委託の場合は支払う必要があるのか明確な基準はないようで、徴収する企業と徴収しない企業があるようです(自分の副業先でも徴収されている企業と徴収されていない企業がある)。
気になったので、フリーランス・法人の方が多く参加している雑食系エンジニアサロンの中で質問したところ、一般的には徴収されるケースが多いようです。
話がそれますが、業務経験の浅いエンジニアはエンジニアサロンは入っておいた方がいいと思います。
副業の話題や、フリーランスの話題、税制など普段エンジニアとして働いているだけでは知り得ない話題についてや、自分が詳しくない技術情報もプル型で自然に入ってきますし、自分よりも経験の浅いエンジニアがこれだけアウトプット出してるのに負けてられないな!と良い刺激になります。
脱線終了。
副業(業務委託)の単価はその技術の業務経験1年~3年で2000円~5000円程度。報酬の多寡は募集企業の財務状況による。
その技術の業務経験2年以上のエンジニアを募集している副業案件が多いですが、単価は2000円~5000円で結構開きがあります。
自分が初めて副業をはじめたところは、経験が半年しかないRubyでのサーバー開発と経験が全くないフロントエンド開発を求められる環境で、時給3500円スタートでした。
その技術の業務経験の浅さの割には時給が高めになった印象なのですが、その企業は社員人数は少ないものの資金力がある(利益が出やすい業界な)ことが大きな理由だと思います。
報酬は事業の利益から生まれるので、資金調達をしていたり利益が多く出ている企業だとやはり報酬は高くなりやすいですね。
副業(業務委託)の報酬は、正社員報酬よりも高くなりやすく、上がりやすい。
前述した話にも関連するのですが、副業の報酬は正社員報酬よりも上がりやすい(上げやすい)です。
理由は以下の3つが大きいと思います。
エンジニア副業を始める前に知っておきたかったこと
- ①副業先はどんどん変えられる。そのため、報酬交渉がしやすい。
- ②業務委託契約で契約期間も短いので、企業は単価が高くても突発的に採用できる。
- ③副業採用の単価は安く、正社員採用のリード獲得にもなる。
①副業先はどんどん変えられる。そのため、報酬交渉がしやすい。
正社員だと1,2年で職場を転職し続けるとジョブホッパーだとみなされて、その後の転職が難しくなるという事情もありますし、転職活動をするのにも多大な労力がかかるので、一度会社に入ると転職による報酬アップには3年以上かかると思います。
また、正社員の報酬は早くても半年ベースでの昇給になり、年間で上がっても100万円前後に落ち着くと思います。
一方で副業(業務委託)の場合だと、どれだけ会社を変えようが正社員としての稼働は続けているので職歴には影響がないですし、副業先を変更する場合も多くても面談1回と面接1回で副業が決まるので、労力もそこまでかかりません。
また、副業を募集している会社はすぐに参画して目の前の事業課題を解決してくれるのなら、少しくらい報酬が上がってもいいと考える場合も多いので、時給を上げる交渉がしやすいです。
実際、1社では副業を始める前に時給交渉して500円上がりましたし、1社では副業を続けていて4ヶ月目で時給アップしました。
副業で時給500円上がるのは年収100万円増加とほぼ同値(100万円/正社員の年間稼働時間の1960時間 ≒ 時給の差分510円)なので、副業の方が報酬が上がりやすいと言えると思います。
②業務委託契約で契約期間も短いので、企業は単価が高くても突発的に採用できる。
企業の多理場からすると正社員採用をしてしまうと、日本の雇用関係上はその社員を解雇することはほぼできない固定費扱いになります。
一方で、業務委託での契約であれば1ヶ月毎の契約更新なので、成果が思わしくなければすぐに契約を解消できる変動費扱いになります。
長く住み続けないといけない家だと家賃をできるだけ安く抑えたいと思いますが、旅行の時しか泊まらないホテルなら1泊あたりの費用が高額になっても利用しますよね。また、他のホテルがどこもいっぱいで、やっと空室のホテルを見つけたとなれば、多少高くても利用料金を払いますよね。
それと同じで、業務委託エンジニアも、業務内容が特殊・難しいなどの理由で求める人材が集まりにくい場合は、高い報酬になりやすいです。
副業(業務委託)でも業務未経験の新しい技術を学んで技術成長していくことはできる。
副業では、自分がすでに習得済みの技術の仕事しかできないと思っていたのですが、そんなこともなかったです。
最初はRubyとNuxt.js(業務未経験だった)の開発から始まりましたが、何せ人手が足りていないので、未経験のモバイルアプリの修正を少ししたり、実務では触ってこなかったAWSの各種サービスの導入とシステム設計、実装までをまるっと任されるなど、もはや副業先の方が本業の仕事よりも色々業務経験を積めています。
もちろん会社にもよるのでしょうが、エンジニアが足りてないけど事業が成長している会社で副業すると、大体同じような状況になると思います。
お金をもらいながら自分の経験したことない技術を実務で使いながら学べる。こんな恵まれた環境はないなと。
業務経験がまだまだ浅くて早く業務経験を増やしていきたいエンジニアの方には、副業エンジニアを強くオススメします。
自分の興味のある技術学習や個人開発の時間は減るが、副業の方が必要性に駆られて技術学習するので技術習得は速い。
これは前述した内容に関連しますが、副業先では自分の経験のある技術だけで開発が完結することが少ないので、強制的に新しいことを学んでアウトプットする必要性に駆られます。経験したことがなかろうが、コードを書いて要件を満たさないと仕事にならないですからね。
自分の場合、副業を始めるまでは、「土日は新しい技術を学ぶぞ!」と意気込んでA Tour of Goやったり、技術書熟読したりしてみましたが、「これって何か実践的な学びになったんだろうか...。」と悩むことが多かったです。
結局実践的なアウトプットがないと技術の習得にまでは至らないんですよね。
技術書を読んだり軽く技術を使ってアプリを作ってみるだけで実務的な学びまで落とし込める学びの効率がいいエンジニアの方ならいいのですが、自分のような学びの効率が悪いエンジニアにとっては、副業の中で実務を通して技術を触りながら実感を持って学んでいけるのは最適な技術学習方法だなと感じています。
正社員をしながら副業(業務委託)をすることは可能。同時に2社副業できている。
副業を始めるまでは、「正社員をしながら副業って大変かもな...」と思っていたし、副業未経験の方から「大変じゃないんですか...?」とよく聞かれますが、意外と問題なく稼働できます。
とは言ってもはじめて1ヶ月はきつかったですが。
はじめて1ヶ月間は、開発環境に慣れるのと、平日日中以外に稼働する習慣づくりに苦労しました。
1ヶ月目は、「これずっと続けるのしんどくね...?」と感じていましたが、2ヶ月目からは習慣になったのか慣れていって、ほぼ負荷なく続けることができています。
副業はフルリモートでどの時間帯で働いてもいい案件だったので、朝早く起きれたら朝稼働するようにして、夜眠くならなければ夜稼働するみたいな感じで働きたい時に働きたいだけ稼働できるので精神的な負荷はほぼなくなります。
最近では、副業をゲーム感覚でやると結構楽しめるなと思っています。
副業先のタスクを1週間分お願いされたら、その仕事を次の日、遅くとも次の次の日にはGithubにpushしてレビュー依頼する。
「いかにレビューされないプログラムを、素早く書き上げるか。」というゲームに見立てると、楽しいです。
もちろん仕事なので(ry
高い性能のデバイス、技術学習に迷いなく投資できるようになる。
1年間使ってきた最低スペックのMacbook Proから最高スペックのMacbook Proに乗り換えることにしました。
— 仮想サーファー@3社で複業Webエンジニア (@virtual_techX) May 14, 2020
生産性あげていく! pic.twitter.com/LWEvzM8dJW
「PCの性能上げなくても自分の生産性を上げればいいんだぁあ!!」
という根性論で頑張っていましたが不毛でした。メモリとストレージが増えたことで、圧倒的に生産性上がりました。
PCを買い換えるまでは副業先のプロダクトをDockerで立ち上げるだけで1分かかっていたのが、買い替え後には10秒もかからないようになりました。
また、統合開発環境(PyCharm)を開きながら、ブラウザを複数タブで開きすぎるとブラウザもPyCharmも反応が激遅になっていて作業になっていなかったのが、買い替え後はPyCharmとRubymineとKindleと複数ブラウザ立ち上げてYouTubeも同時に開いても全然固まる気配がないです。
やはり札束で殴るのが一番強い。
新しい技術を学びたい時に、技術書やudemyの動画講座を購入するときに金銭的な悩み一切なしに購入できるようになったのも嬉しいですね。
副業で必要になった新しい技術の習得は技術書やudemyを買って爆速で学んで、副業で稼働することで一気に回収する。そのお金でまた新たな技術学習をする...。みたいな報酬増える⇄学びへの課金のスパイラルを高速に回せるようになってきたなと。
「自分の仕事道具にお金はケチらない方がいいよ」と新卒の時に言われていましたが、金銭的な余裕が出て初めてケチらないことができるようになり、ケチらないことの価値を実感できました。
まとめ
以上、正社員がエンジニア副業を知る前に知っておきたかった8つのことまとめでした。
エンジニア副業は、やればやる分だけ学びが加速度的に増えていく実感がありますし、報酬が上がっていく速度も速いです。
また、仮に自分がフルタイムで個人開発に熱中したいと思ったり、海外旅行に長期で行ってみたいと思っても、自由な時間にフルリモートで働ける案件を複数抱えておくと、平日日中はやりたいことに全力投球して、土日や空いた時間に副業(業務委託)エンジニアの稼働をする。
みたいな選択もできるなと。
「エンジニア副業始めてみたいけど、今一歩本気で動けてはないんだよな...。」という正社員エンジニアの方は、ぜひ一度やってみることをオススメします。
やるべきじゃなかったと!思ったらすぐ辞めればいいけど、もっと早くやっておけばよかった!の後悔は一生残りますからね。
エンジニア副業に関して気になることや、質問があれば、Twitterでもこのブログででも質問いただければ可能な限り回答します〜!
では!