Go言語は現在のWEBシステム・WEBサイトの開発において、高い割合で採用されてきています。したがってGo言語の案件は全案件の中でも案件数伸び率はTOPに入る程人気が出てきています。まだメイン言語として使えるエンジニアは少なく、参考サイト・学習サイト等のノウハウはこれから増えていく環境です。そんなGo言語の案件のエンジニアの平均単価・相場感、メリット/デメリット、案件の探し方、また今後の見通しについて、ご紹介していきます。
※本記事は原則、フリーランスのSES(準委任)契約を主とした内容となり、平均単価や相場感については当サイト独自調査によりますので、ご了承ください。
Go言語の特徴、メリット・デメリット、フレームワークについて見ていきましょう。
Go言語とはGoogle社にてロバート・グリーセマー氏等が中心となって2009年に開発されたC言語をモデルとするコンパイル言語です。Go言語は「シンプルで信頼性が高く、効率的なソフトウェアを簡単に構築できるオープンソースのプログラミング言語」を公式サイトにて掲げております。Googleが開発したこともあり誕生当初から高い注目を集めており、2018年ビズリーチ社の調査によるとGo言語は最も年収の高いプログラミング言語として発表されその注目度の高さが伺えました。
用途としてWebアプリケーションやWebサーバーの開発に度々活用されますが、Web系以外にもスマートフォンアプリ、AI開発などでも注目を集めております。特徴として『高速な処理』『並行処理に強い』などが挙げられます。人気、注目度共に数あるプログラミング言語の中で最前線を走る言語の一つと言えます。
Go言語のメリット・デメリットを見ていきましょう。
メリット | 詳細 |
高速な処理 | Go言語はコンパイラ言語であることから高速な処理を実現できるというメリットがあります。コンパイラ言語の中でも高速なことで有名で特徴としてクロスコンパイルが可能となっております。 |
並行処理に強い | Go言語はプログラミングの際に意識せずとも自動的に並行処理を実現するように設計されているというメリットがあります。技術革新と共に現代のコンピューターの性能は日を増すごとに向上をしております。そのコンピューターの性能を最大限に引き出すためにソフトウェアの設計に並行処理の技術を組み込み必要があります。 |
シンプルで習得しやすい | Go言語はC言語をモデルに開発されたこともありプログラムの構文が基本に忠実でシンプルであることから習得しやすいというメリットがあります。そのためC言語やJavaを学んできた方であれば学習コストが低く、比較的容易に習得することができます。シンプルにも関わらず強力な機能を実現できるというのがGo言語です。 |
デメリット | 詳細 |
コード継承がない | Go言語はオブジェクト指向のプログラミング言語だと明言されておらず、コードの継承がありません。オブジェクト指向でのプログラミングができない点がデメリットとして挙げられます。 |
ナレッジが少ない | Go言語は2009年に誕生したプログラミング言語の為、歴史が他の言語よりも浅く、開発実績が少なく、まだまだ情報が少ない状態です。 |
Go言語の代表的なフレームワークを見ていきましょう。
Go言語のフレームワーク人気どころ6選を紹介している記事はこちら>>
Go言語のフレームワーク | 内容 |
Gin | Gin(ジン)とはGo言語に活用されるGinチームによって管理されるWebアプリケーションフレームワークです。Martini(マティーニ)をモデルに誕生したフレームワークとして同フレームワークのようなAPIを充実させており、パフォーマンスにおいては最大40倍もの高速性能を実現しております。 – Ginの公式サイトはこちら>> – Ginの歴史、特徴、基礎知識の解説された記事はこちら>> |
Echo | Echo(エコー)とはGo言語に活用されるLabStackによって管理される軽量なWebアプリケーションフレームワークです。小規模から中規模のWebアプリケーション開発に向いており、軽量フレームワークとして最も注目を集めているフレームワークの一つです。またRESTの原則に従って設計されたAPIを持つことも特徴の一つです。 – Echoの公式サイトはこちら>> – Echoの歴史、特徴、基礎知識などの解説された記事はこちら>> |
Revel | Revel(レベル)とはGo言語に活用されるMVCモデルのフルスタックWebフレームワークです。Javaの『Play Framework』をモデルに開発されました。Webアプリケーション開発に必要な全てが取り揃えられており、『Gin』や『Echo』と比較しても多機能であることが売りであることから大規模なアプリケーション開発に向いております。 – Revelの公式サイトはこちら>> – Revelの歴史、特徴、基礎知識などの解説された記事はこちら>> |
フリーランス向けGo言語の案件の平均単価・相場感を見ていきましょう。各案件サイトの1ヶ月のGo言語の案件単価は
でした。案件を探す方の実務経験や、案件での役割(PM、PL,SE、PG、テスター)、難易度、予算によって前後しますが、概ねその単価感が平均といえます。
Goエンジニアとして実務経験1,2年程度の場合の平均単価・相場感について見ていきましょう。
案件評判での実務経験1,2年程度の案件(準委任・週5相当稼働の場合)では、
が相場となっています。
1,2年の経験でもマネジメントやリーダーを任せられた経験や、難易度の高い設計・開発を行った経験、モダンな環境(最新バージョン、フレームワーク、クラウド環境、テスト自動化、その他DockerやGitなど)の利用経験によっては上振れの可能性もある為、最初のうちはできるだけチャレンジできる環境で開発を行っていけると、今後のキャリアにも繋がります。
Goエンジニアとして実務経験3,4年以上の場合の平均単価・相場感について見ていきましょう。
案件評判での実務経験3,4年程度の案件(準委任・週5相当稼働の場合)では、
が相場となっています。
マネジメントやリーダーを任せられた経験や、難易度の高い設計・開発を行った経験、モダンな環境(最新バージョン、フレームワーク、クラウド環境、テスト自動化、その他DockerやGitなど)の利用経験によっては上振れの可能性もあります。
また3,4年以上の経験があれば、PM、PLなどの役割も任せられる可能性もあり、その役割次第では平均相場を超えた単価も得られる可能性があります。
過去行ってきた開発業務の棚卸しをして、職務経歴書(スキルシート)をしっかりと作り込み、アピールをできるように準備しておきましょう。
PHP案件の平均単価・相場感は、下記の理由で変動します。
平均単価80万をベースとして下記が目安です。
実務経験の年数が多い程、単価は高くなりますが、期待されることも多くなります。また、PMや要件定義などが対応できれば100万円超えの収入を得ることも可能ですが、難易度・責任は大きくなります。自身の働き方・求める単価のバランスを見て案件を選んでいきましょう。
Go言語の案件の今後の動向と将来性について見ていきましょう。
Webアプリケーション開発におけるGo言語の歴史は、WEB系言語の中では短く、これまではあまりGoエンジニア採用を積極的に行っている企業は限られていました。しかし、ここ数年で開発現場におけるGo言語の採用は増えてきており、案件数も急増しています。有名フレームワークはGin,Echo,Revelといつくかありますが、現時点ではフレームワークに囚われず、幅広く『Go言語が使えるエンジニア』として募集されています。
競合言語別の案件割合 | |
PHP案件 | 7.4% |
PHP案件 | 23.4% |
Java案件 | 31.6% |
Ruby案件 | 15.8% |
Python案件 | 10.4% |
他言語(Scala等)案件 | 11.4% |
(※直近半年の当サイト独自調べ)
Go言語の案件の今後の動向と将来性としては、現在の新しいWEBアプリケーション開発における採用率を考慮すると、すぐに廃れるということはなかなか考えづらいく、今後しばらくはGo言語の案件数は一定以上あると推測されます。特に大手やテック系企業での採用率は高く、開発現場におけるトレンド言語となっている為、Go言語の案件は増加傾向にあります。但し上述の通り、フレームワークの偏りやトレンドはある為、Go言語の中でも動向を追う必要はあります。
同じサーバーサイド言語で競合に当たるRuby、Java、Python、JavaScriptと比較した場合、使用用途の棲み分けが一定されいます。またPHPなど既存言語の置き換えも起こってきている為、今後のGo言語の案件の比率は上記表から、Go言語案件の増加へ変わっていくと思われます。
フリーランスのGo言語案件の探し方を見ていきましょう。一般的には契約形態として、準委任契約と請負契約があります。どちらの場合も今の時代、WEB上で仕事探しが可能ですので、それぞれの主なサービスを見ていきましょう。
業務委託契約(準委任契約と請負契約との違い)について解説している記事はこちら>>
フリーランスのGo言語案件を準委任契約で探せるサービスを見ていきましょう。準委任契約では、主に週5(1ヶ月)の稼働をする形で業務を委託されます。(案件により、週2〜3なども有り)
メリットとしては、一定量のまとまった金額が保証される点、また複数月の契約の場合が多い為、続けて仕事を探さなければならないということが少ない点が挙げられます。
デメリットとしては、自身の裁量にもよりますが、基本1ヶ月丸々稼働を抑えられてしまう為、他の仕事を掛け持ちしずらい点、また現場出社が基本となる点が挙げられます。
(※現在ではコロナ渦によりリモート案件も非常に増えています。)
案件評判(Hack’en)ではIT業種のエンジニア・デザイナーなどフリーランスの方向けの案件をご紹介しております。直案件・高単価やリモートなど希望に合う案件を多数準備しております。またフリーランスのガイドブックを無料配布しており、案件以外の不安なことは相談できる、丁寧・スピード対応のエージェントです。
【案件評判(Hack’en)】の無料ご登録はこちら>>
レバテック【公式】が運営するエンジニア,クリエイターの求人・案件情報サイト【レバテック】。転職支援やフリーランス向け案件への参画サポート、業界ニュースの配信、勉強会などを通じて、エンジニア,クリエイターの成長を応援する一番身近な相談相手を目指します。
【レバテックフリーランス】
Midworksではフリーランスエンジニアを目指す方に正社員並みの保障付きで、独立を支援するサービスです。IT・Web業界の案件のご紹介を始めとして、独立する際のサポートを致します。3000件以上の案件を保有しているので、あなたにぴったりの案件をご紹介致します。
【midworks】
フリーランスのGo言語案件を請負契約で探せるサービスを見ていきましょう。請負契約では、顧客の業務(開発やデザイン)を請負い、完成、納品までさせる必要があります。顧客の希望予算・納期に合わせて動く為、稼働量は一概に言えません。
メリットとしては、作業時間の縛りは基本無い為いつでも業務ができる点です。また極端に言えば準委任で1ヶ月70万円の仕事を1週間で終わらせてしまうことも可能で、実力によっては1ヶ月の収入を100-200万以上にすることも可能です。
デメリットとしては、顧客の継続発注が無い限りは1つの業務が終われば次の業務を探さなければならない為、継続性が低い点、また完成義務がある為、開発したものの不具合にいつまでも引きづられる可能性がある点です。
クラウドワークスは主に請負契約で、案件を探す場合に活用できるクラウドソーシングです。登録者数・案件数ともクラウドソーシングの中では業界大手のサービスです。実績が少ない内は、こういったサービスを活用して、実績を積み、ポートフォリオの拡充を図っていくことも効果的です。
クラウドワークス
ランサーズは主に請負契約で、案件を探す場合に活用できるクラウドソーシングです。登録者数・案件数ともクラウドソーシングの中では業界大手のサービスです。実績が少ない内は、こういったサービスを活用して、実績を積み、ポートフォリオの拡充を図っていくことも効果的です。
【ランサーズ】
準委任契約での案件例を見ていきましょう。
Go言語実務経験1,2年程度の案件例を見ていきましょう。
項目 | 内容 |
案件 | プラットフォームバックエンド開発 |
場所 | 渋谷(東京都)※リモート可 |
期間 | 4月〜中長期 |
業務内容・役割 | 医療業界向けのプラットフォーム開発に携わります。 工程:(基本設計)詳細設計〜開発/テスト 環境:Go・Docker・Linux・MySQL・Azure・Git |
必要スキル | ・Go言語の開発経験1年以上 Dockerでの開発経験 |
尚可・歓迎スキル | ・パフォーマンスチューニングの経験 |
単価 | 660,000円〜770,000/月(税込) ※現地へ行く際の交通費込み |
精算幅 | 140-180H |
面談回数 | 1回 |
備考 | 環境構築は現地、それ以外はリモートで可能です。 |
Go言語実務経験3,4年以上の案件例を見ていきましょう。
項目 | 内容 |
案件 | 決済システムの開発 |
場所 | 都内(東京都)※リモート可 |
期間 | 3月〜中長期 |
業務内容・役割 | ・Go言語によるWebアプリケーション開発、API開発に携わります。 システム開発の中での 課題発見、課題解決の実行なども業務として検討をしております。 またアプリケーション要件に基づいたアーキテクチャの設計、ミドルウェアの選定もお願いしたいと考えております。 |
必要スキル | Webアプリケーション開発経験5年以上 ・Go言語によるWebアプリケーションの開発経験 |
尚可・歓迎スキル | ・Go,GCP,マイクロサービスアーキテクチャなどのトレンド技術を利用した開発経験 ・リーダー経験 |
単価 | 990,000円〜1,100,000円/月(税込) ※現地へ行く際の交通費込み |
精算幅 | 140-180H |
面談回数 | 1回 |
備考 | 環境構築は現地、それ以外はリモートで可能です。 |
エンジニア未経験・初心者の方について見ていきましょう。未経験・初心者の方で、特にフリーランスとして案件を獲得するのは非常に難しく厳しなっていることが現状です。そんな中でもできる動きとして下記を参考にしてみてください。
上記のクラウドワークスやランサーズ等のクラウドソーシングを活用していく。決して未経験を推奨している訳ではないですが、システムを開発・納品までする一連の流れを経験することで、開発の全体を見ることができます。小規模でも、予算・納期の把握、開発・調整と学ぶことは多くあります。またここで実績を複数作ることで、開発ポートフォリオを充実させることもでき、その後の案件獲得もスムーズになってきます。
プログラミングスクールはプログラミング言語などのITに関する必要な技術を学べるスクールのことです。利用者の主な目的としては就職や転職、副業などとされておりスクールによっては就職や転職までを支援することを目的とした就職保証プランなども存在し人気を集めております。
今では幼児や小学生に向けられたプログラミングスクールも多数あります。幼少期を含めた若者層だけでなく、シニアや年配者といった高齢者層に向けられたスクールも注目を集めております。
スクールではそのまま案件を紹介してくれるサービスもあるので、そのままそのスクールに案件を紹介してもらうこともスムーズに仕事を探せる手段の一つです。
プログラミングスクールについて解説している記事はこちら>>
また無料で学べるオンラインサイトも現在非常に充実しています。有名なところで、『Progate(プロゲート)』、『ドットインストール』、『paizaラーニング(パイザラーニング)』、『Schoo(スクー)』など、20以上のサービスが無料で利用できます。
どうしても案件が取れないときは、就職活動も視野に入れることをお勧めします。未経験・初心者でフリーランスとして案件を探すにはかなりハードルが高いのですが、その理由は単に『経験』が無いからです。その『経験』を付けるにはやはり、就職して現場の開発の一連の流れをしっかりと学び、実務経験を積むことが近道です。エンジニア不足の昨今、未経験者でも、独学でも学習をしている方は積極的に採用していく企業は増えてきています。
ただし、将来フリーランスになりたいからという理由があった上で、企業は採用することはほぼ無い為、まずは社員・フリーランス問わずしっかり今後どういうエンジニアになりたいのか、将来像・キャリアを考え動いて行きましょう。