Go案件に携わりたいフリーランスと副業のエンジニアなら知っておきたいGo案件のトレンド

【目次】

■人気急上昇したGo、案件が増えている理由
■Goを採用している業界や企業の紹介
-広まったターニングポイントと歴史
■Goの強みが生かされてる分野と実績
■Goの技術顧問の働き方
■Goの採用基準をCTOが回答
-未経験、もしくは少し触ったことがある場合も採用されるのか?

人気が急上昇したGo

案件が増えている理由

GoはJavaやRubyを代替する、Google開発の言語で、人気が高いです。現在、GoはWebサーバー構築の分野で積極的に使われる事例が増えています。この分野では長らくJavaやRubyが用いられてきましたが需要を代替しつつあり、有名な企業ではYouTubeもサーバー構築に活用しています。

この他、スマートフォンのアプリケーション開発でも使われる事例が増えており、これらの分野でのキャリアを志望する方には要チェックの言語といえます。

シンプルで高速処理が可能な言語

Goは2009年と比較的最近になってからGoogleが開発した、オープンソースのコンパイル言語です。大規模システム開発をJavaやC++よりシンプルなコードで記述し、高速かつ効率的に実行できる言語として開発されました。 コンパイル言語のため、Pythonなどの動的言語に比べると実行速度は高速です。またCPUのマルチコア化に対応した並列処理に言語レベルで対応する機構が備わっているため、複雑なコードも軽量な並列処理で記述可能です。

省リソースかつ脆弱性への対応も迅速

Goは記述方法が限定されており、何人ものエンジニアが同じ開発に携わっても記述方法がブレにくいシンプルな設計が可能です。同期処理も簡単に行えるため、複雑で大規模なシステム構築にも適しています。またGoはオープンソースプロジェクトのため、脆弱性やバグは発見され次第、速やかに修正されやすいというメリットもあります。

Web開発に適したフレームワークも豊富

小中規模なWebアプリケーション開発に適した軽量な「Echo」など、Goには多数のフレームワークが用意されています。Echo以外ではUIをもつアプリケーション開発用の「Revel」や、Webサーバー構築に役立つ「Gin」などが特に有名です。

Goを採用している業界や企業の紹介

広まったターニングポイントと歴史

Goでの開発の案件は増加傾向にありますが、どのような歴史を辿ったのかご紹介します。

歴史
前述したように、2009年にGoogleで設計されました。

Goのターニングポイント1
2014年にver1.4がリリースされAndroidでも使われるようになり広まりました。

ターニングポイント2
メルカリやドワンゴなどのITベンチャーが使用し始めました。

Go言語は、シンプルで信頼性があり、無駄のない有能なソフトウェア開発を簡単に実現できるように設計されています。
やはり以下のような印象を持っているエンジニアが多いようです。

「軽量・高速・シンプル」
・実行速度が速い
直接ネイティブコードに変換する為、コードの種類が限定的だから複数の処理を同時にこなせる

・並列処理が得意
大量データの処理は並列処理が必要
PHPが苦手とする並列処理やエラーチェックが得意なことなどから、PHPに代わる言語として使用されるケースも増えている。

・拡張性が高い

Goの強みが生かされてる分野と実績

Goエンジニアとして、業務委託契約で案件に入る場合は、以下の分野で重宝されます。

マイクロサービスの用途でのGoの採用

言語のシンプルな言語仕様と拡張性の高さが生かせるため、マイクロサービスでGoは使用されています。
メルカリ、クックパッド、GCP(Google Cloud Platform)のGKE(Google Kubernetes Engine)でもGo言語を採用しています。

APIサーバー開発

APIサーバーはリクエストに対して様々な目的に合わせた汎用性のあるデータを返すサーバーです。
Go言語の特徴である、バックエンドやインフラまわりでの強さ、効率よい開発を行い実行速度も速いという点を生かして、高速なAPIサーバー開発で多用されています。 Gunosy、DeNAといった企業がGo言語を採用しているので、IT系のベンチャーでもGo言語でのAPIサーバー開発が増えています。

webアプリケーション

高速・軽量・並列処理に強い点などが生かされています。
AndroidやiPhoneなどモバイル向けパッケージ“Go mobile”を利用してモバイルアプリケーションなども簡単に作ることができます。
Kyash(キャッシュレスのウォレットアプリ開発) 、サイバーエージェント、エブリー(料理動画サービス)といった企業やサービスがGoを採用しています。

Paas(パース)

Paas(パース)とは、“Platform as a Service”の略で、Paas企業のGo案件もあります。
サービスとしてのプラットフォームを意味し、インフラやOSなどのプラットフォームを提供するサービスです。
Go言語はGoogleが推薦している言語ということもあり、GCP(Google Cloud Platform)との相性が良く、GAE(Google App Engine)のPaasサービスに利用されています。

GAE(Google App Engine)、Flynn(DockerのPaas環境を構築するツール)がGo言語を採用しています。

コンテナ技術

“コンテナ型仮想化“と呼ばれる、稼働中のOS環境上に、他と隔離された新しいOS実行環境を用意し、個別に独立したサーバーとして使用するための技術です。
DockerやKubernetes、といった分野の知見が豊富だとGoエンジニアとして重宝されます。

Goの技術顧問としての働き方

Go案件では、開発だけに留まらず、技術顧問として参画するケースもあります。

どのような業務内容なのか、シェアフル社でGoの技術顧問として働いている上田さんは以下のようにお話ししています。

私も最初の頃は翁さん(※1)のようにレビューをしていましたが、最近は社内で勉強会を開いてGoの基礎から教えたり、知見を共有する機会を作ったりして、稼働時間も翁さん(※2)と同じくらいですね。直接的に自分で開発をするというよりはサポート側で、コードの品質をどう高めることができるかを考えていますね。全国で開催されているGoコミュニティの勉強会を紹介したりもしています。

※1 シェアフル社のJavaScriptの技術顧問の翁さん
※2 月に3日分のボリュームの仕事をしています。

引用元:https://flxy.jp/article/10586

Go案件で知りたい!どういう基準でGoのエンジニアを採用されているのか

採用責任者としてCTOが語るGoエンジニアのペルソナ

GoについてCTO名が登壇したCTOmeetupで、採用について触れているので、以下にご紹介します。

実際、Goでの開発経験が豊富という人はまだ少ないため、採用は未経験でも、「この人と働きたい」と思えば、難しくはないとのことです。

Goをやっている人を採用したいという気持ちは本心としてありますが、現実問題としてとっつきにくさのハードルがあり、大体の人は「少し触ったことがあります」というレベルです。ですからGo言語自体を必須スキルとしては設定していません。それよりもWebの経験があるかどうか、その中でPHPやRailsなどの知見を積んできているかどうか、という点を採用基準にしています。
どういうことかと言うと、PHPのMVCがわかりやすいですね。MVCがあったときにファットコントローラが問題として挙げられることがよくありますが、採用時に「ファットコントローラになってしまったコードをあなたならどのように解消しますか?」と問いを投げます。回答によってどこまで知識をもっているかなど、いままでの経験を元にした設計を考えているのかがわかりますし、問題解決するための設計の発想は人それぞれですから、その部分を深く回答してくれる人はポジティブに検討します。

引用元:https://flxy.jp/article/3706

未経験、もしくは少し触ったことがある場合も採用されるのか?

未経験可能なGo案件ですと、FLEXYにて直近では以下の求人がありました。

クラウドファンディングの企業様・新しい事に挑戦する方を応援してくれる企業様です!
GOなど新しい言語に挑戦も可能です!(要相談)今後のキャリアも考えてくれます!

案件NO.9
今伸びているクラウドファンディング サービスに携わるチャンス!PHP開発

【必須スキル】PHPでの開発経験
・場所:渋谷エリア
・日数、勤務スタイル:週3-4日以上、リモート可能

引用元:https://flxy.jp/article/11573

PHPがメインですが、Goに携わりたい意欲のある方は、こういった案件からお勧めします。

FLEXY経由で、業務委託契約のGo案件のご紹介を希望される方は、以下のボタンよりご登録ください。

【個人側】FLEXYにまず登録
FLEXYに登録(案件のご紹介)

この記事を書いた人
FLEXY編集部
FLEXY編集部
ハイスキルIT人材への案件紹介サービス
FLEXYメディアは、テックメディアとしてテクノロジーの推進に役立つコンテンツを提供しています。FLEXYメディアを運営するのは、ITに関連するプロシェアリングサービスを提供するFLEXY。経営課題をITで解決するためのCTOや技術顧問のご紹介、ハイスペックエンジニアやクリエイターと企業をマッチングしています。【FLEXYのサービス詳細】求人を募集している法人様向け/お仕事をしたいご登録希望の個人様向け

週1日~/リモートの案件に興味はありませんか?

週1日~/リモートの関わり方で、「開発案件」や「企業のIT化や設計のアドバザリーなどの技術顧問案件」を受けてみませんか?副業をしたい、独立して個人で仕事を受けたエンジニア・デザイナー・PM・技術顧問の皆様のお仕事探し支援サービスがあります。

FLEXYでご案内できる業務委託案件

業務委託契約・開発案件(JavaScriptメイン)

テーマ FLEXY登録画面から案件詳細の確認と直接応募が可能です
勤務日数 2-3日/週
報酬 4万円/日
必要スキル JavaScript・React
勤務地 東京都内/リモート含む
リモート

外部CTO、技術顧問

テーマ 技術アドバイザリーとして知見と経験を生かす
勤務日数 1日/週
報酬 10万円/日
必要スキル エンジニア組織立ち上げや統括のご経験、コードレビュー経験、技術的なアドバイスが出来る方
勤務地 東京
リモート 相談可

業務委託契約・インフラエンジニア

テーマ FLEXY登録画面から案件詳細の確認と直接応募が可能です
勤務日数 2-3日/週
報酬 5万円/日
必要スキル それぞれの案件により異なります
勤務地 東京
リモート 相談可

業務委託・フロントエンドエンジニア

テーマ FLEXY登録画面から案件詳細の確認と直接応募が可能です
勤務日数 週1日〜
報酬 5万/日
必要スキル それぞれの案件により異なります
勤務地 東京
リモート リモートと常駐のMIXなど

人材紹介のCTO案件(非公開求人)

テーマ CTO、技術顧問案件はFLEXYに登録後、案件をコンサルタントからご紹介します
勤務日数 業務委託から人材紹介への移行
報酬 年収800万以上
必要スキル CTOとして活躍可能な方、エンジニア組織のマネージメント経験
勤務地 東京
リモート 最初は業務委託契約で週3日などご要望に合わせます

業務委託契約・サーバサイドエンジニア

テーマ FLEXY登録画面から案件詳細の確認と直接応募が可能です
勤務日数 週2-3日
報酬 案件により異なります
必要スキル 案件により異なります
勤務地 東京都内
リモート 相談可能
個人登録

お仕事をお探しの方(無料登録)
法人の方(IT課題の相談)