スマホアプリのクロスプラットフォーム開発に対応!Flutterを学べばどんな案件を受注できる?

現在、スマートフォンアプリの開発業務に携わる人から注目されている、モバイルアプリ用のUI構築フレームワーク「Flutter」。他のフレームワークと比べるとリリースされてから日は浅いですが、その利便性が高く評価され、現在エンジニアから大きな支持を集めつつあります。

本記事ではFlutterの特徴を紹介しつつ、習得することでフリーランスエンジニアがどのような案件を獲得できるようになるかをご紹介します!

Flutterとは?

FlutterはGoogleが2018年に発表した、スマートフォンなどのモバイルアプリケーションの開発用フレームワークです。AndroidとiOSのどちらのOSにも対応したアプリを1度に開発する、クロスプラットフォームアプリ開発に対応している点が最大の強みです。 GitHub上で、オープンソースプロジェクトとしてソースコードが公開されており、現在も新機能の開発やバグなどの発見、修正が活発に行われています。オブジェクト指向言語であるDart言語を用いて記述します。

Flutterの特徴って?

Flutterが人気を集める背景には、Flutter自身が持ついくつかの特徴があります。

(1)iOSとAndroidのクロスプラットフォーム開発に対応

Flutterを用いることでiOSとAndroid対応アプリのハイブリッド開発が可能になります。厳密には異なる部分もありますが、Facebookが開発したReact Nativeなどと同等の特徴を有していると言えるでしょう。

通常、アプリ開発においては、iOSであればSwiftを、AndroidであればKotlinやJavaを用いるといった具合に言語を使い分ける必要があります。この場合、同内容のアプリを作るにもかかわらず、作業量は2倍に増えていますので、その分開発者に負担が大きくかかってしまいます。

しかし、Flutterには一度開発したプログラムコードを(OSの機能に依存する箇所を除き)iOSとAndroidのそれぞれに対応するように、自動的に変換する機能があります。つまり、スマホアプリの開発が一回だけで済むのです。このように、Flutterを使うことでアプリ開発現場の省力化が図れます。

また、Flutterで構築するUIデザインはOSに依存しない、独自のマテリアルデザインを採用しています。iOS、Androidの両方で同じ見栄えや挙動をするアプリ開発が可能です。ただ、独自UIのため、ネイティブアプリ開発用の言語/フレームワークと比較すると、やや違和感のあるUIが生まれる可能性があります。この点については、Flutter側もネイティブデザインに似せたUIが構築できるようにするなど対策を進めています。UI自体のパフォーマンスはGPUを活用したネイティブアプリ開発用の言語/フレームワークと遜色なく、十分な実行パフォーマンスを発揮します。

(2)ホットリロード機能を搭載

ホットリロード機能を搭載している点も、Flutterの大きな特徴の1つです。ホットリロード機能とは、プログラムコードの内容を変更し、特定のコマンド操作を行うと、その修正点がすぐにエミュレータ環境や実機上の表示画面で確認できるという機能です。変更後のコードが正常にUIに反映されるかを即座に確認できます。ネイティブアプリ開発用の言語やフレームワークにはない機能で大変便利です。

(3)Dart言語の採用

Flutterではオブジェクト指向のスクリプト言語であるDartを採用しています。Dartは2011年にGoogleが、JavaScriptの後継となる言語として発表しました。Dartは宣言型UIフレームワークを採用しています。このため、UIにおけるレイアウトとデザインを宣言的に構築することが可能です。

この他、スクリプト言語に特有の高い生産性を実現していることと併せて、動的型付けと静的型付け言語のどちらにも対応している点がメリットとされています。一般的に、プログラミング言語は動的型付けと静的型付けのいずれかのみ対応していますが、Dartの場合はその点を意識する必要がありません。

また、先述の通りDartはJavaScriptの代替言語として開発されています。このためJavaScriptと文法的に類似する点が多く、JavaScriptの経験者であればすぐに習得できる、学習コストの低いフレームワークであることを意味します。

Flutterの開発事例は?

Flutterは2018年にリリースされてから、まだ2年程度しか経過していない比較的新しい言語です。そのため、大型のアプリ開発案件などで大々的に用いられる事例はまだ少ない印象があります。

しかし、開発元であるGoogleの発表によると、2020年4月時点でGoogle PlayにFlutterで開発したAndroidアプリがすでに5万本以上も公開されています。リリースされてから日が浅いことを鑑みれば、なかなか大きな数字といえそうです。他言語/フレームワークで開発されたアプリに劣らない、大きな存在感を放つフレームワークとして認知されつつあるといえるでしょう。

また、GoogleはFlutterの利用ユーザーに関する統計も併せて発表しています。全体の利用者のうち34%はスタートアップに所属するエンジニアが使用しており、23%が大企業のエンジニア、19%がフリーランスなど自営業のエンジニアだとされています。つまりFlutterの利用者は新興企業が中心となっており、こうした企業を起点に、様々な企業が採用を検討している段階にあるようです。またフリーランスなど自営業のエンジニアによる利用が多い点も注目に値するでしょう。

ちなみに、Flutterの利用者数における国/地域別ランキングはインド、中国、米国、EU、ブラジルといった順番になるそうです。このように現時点では、日本国内よりも海外地域を中心に多く利用されているフレームワークといえるでしょう。

どのくらいの求人数がある?

リリースから2年程度しか経過していないにもかかわらず、多くのアプリ開発企業が採用を始めています。こうした人気度合いを見ても、今後Flutterを用いた案件が増えていくと考えられます。

Flutterはアプリ開発だけでなくWeb開発に用いることも可能です。WebアプリやWebサービスのUI構築に用いるなど、幅広い範囲の開発案件で用いることができるでしょう。また、新機能の追加など利便性の向上や、バグや不具合などの修正対応アップデートが迅速に行われる点も評価が高いポイントです。

とはいえ、課題点もあります。その1つがオープンソースライブラリの少なさです。他の言語やフレームワークと比較すると、アプリケーション開発の柔軟性に欠けるおそれがあります。また、現時点では日本語で書かれた開発ドキュメントや学習用コンテンツがまだまだ多いとは言えない状況です。JavaScriptなどのスクリプト言語を用いた実務経験が少ない人には、やや厳しい学習環境と言えるかもしれません。

しかし、Flutter の開発元はGoogleです。同社が開発したGoなど、他言語/フレームワークのサポート事例を見てみると、現時点での言語/フレームワークが抱えている課題を的確に認識し、解決に向けた努力を続けるように思われます。また、日本語の開発ドキュメントなどは、今後、より多くのエンジニアがFlutterを用いた開発を重ねていく中で自然と増えていくと予想されます。

このため、採用を踏みとどまっている企業の懸念点が解消されるまでに、大きな時間はかからないでしょう。そうなれば、採用企業は一層増加するのではないでしょうか。

フリーランス・副業求人への応募方法

以下に掲載されている求人案件への応募方法をご紹介します。

企業名や詳しいお話を聞きたいという方は、まずはFLEXYコンサルタントがご説明しますのでご連絡ください。

■FLEXYへご登録していない方で、案件の詳細にご興味のある方は FLEXYに登録よりご連絡ください。

【業務委託の仕事の契約期間】
本記事には業務委託の契約期間を明示していません。

スキルや状況により、契約期間は随時変更されますが、3ヶ月から半年、1年での契約など様々です。

ご連絡いただきましたら、FLEXYコンサルタントより詳細をお伝えさせていただきますのでお気軽にお問い合わせください。

新しい挑戦!フリーランス向け求人案件をご紹介!

自社プロダクトの開発(Flutter)

自社プロダクトの追加機能でリモートで参加していただける方を募集しています。

案件No.1
自社サービスのフロントエンド開発支援(Flutter)

<求める条件>
・Flutterでの開発経験

・所在地:東京都
・稼働頻度:週3日以上
・金額:4万円/日
・働き方:フルリモート可

フルリモートの働き方ができるので、東京都以外からの参画もできます。

■FLEXYへご登録していない方で、案件の詳細にご興味のある方はFLEXYに登録よりご連絡ください。

自社交通関連サービスの開発支援(Flutter)

案件No.2
<求める条件>
・Flutterでの開発経験がある方
※ご経験がなくても、取り組みたいなどのご希望でも相談可能です。
・プロダクト実務開発経験がある方

<歓迎条件>
・ビジネスレベルの英語でのコミュニケーションができる方
・Techリードのご経験がある方
・Flutter For Webでの開発経験がある方
・ネイティブアプリの開発経験がある方

<希望条件>
・稼働頻度:週2〜5日(16〜40h/週)
※ビジネスタイム外、可能

・金額:3.5万円/日
※スキル、ご経験により変動する可能性がございます。
・働き方:リモート

非常に変化の早い市場で、プロダクトと共に自身の成長も実感しやすい環境で開発に携わることができます! 基本的にはフルリモートでの参加です。

実際の働き方

FLEXYからFlutter開発のご支援をした事例をご紹介します。

【FLEXYからご紹介した方の業務内容】
HRに関してのdoda以外のサービスも開発している新規事業部署で新しい働き方のアプリを複数開発するにあたり、”自分のキャリアを棚卸するアプリ”のiOS開発の支援。
週24時間程度で平日夜、土日に、大手企業にいながら副業をやっていただける方を業務委託として迎え入れています。
iOSの業務内容の詳細としては、Flutter(フラッター)とSwift(スイフト)の双方でアプリ開発を進め、挙動やユーザビリティ、保守運用も含めてどちらの開発手法を採用するかを検証していただいています。

全文は、以下をご覧ください。
【副業の働き方】
最新技術導入のリスクを回避するには?製品のクオリティを担保する開発術――パーソルキャリア
https://flxy.jp/article/8475

まとめ

クラスプラットフォーム開発やホットリロード機能など、アプリ開発者にとって便利な機能を多数搭載しているFlutter。スマートフォンアプリの開発案件を中心に受注したいと考えているフリーランスエンジニアであれば、一度は触れておきたいフレームワークと言えるでしょう。

Flutterのニーズは高まっていて、経験者は重宝されるので転職やフィリーランス転向にも向いています。

フリーランス案件をもっとみたいという方は、ぜひ、FLEXYに登録ボタンから案件をご覧ください。

CTO、技術顧問、エンジニア、デザイナー向けのフリーランス・副業求人案件のご紹介

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課題の相談)