Androidアプリの開発は、主にプログラミング言語にJavaが用いられていました。ただし、Android開発の言語が変わる可能性があります。なぜなら、2017年5月にGoogleがAndroidの公式言語にKotlinが加わるという発表があったからです。Android開発は昨今のスマートフォンの普及から、市場状況の移り変わりが激しいため、Androidを扱うエンジニアは市場を常に確認し、新しい言語や技術を身に付けることが大切です。また、Androidエンジニアは市場の移り変わりが激しい中で、どのようにフリーランスとして案件に参画すれば、安定した仕事につながるのでしょうか。
今回はAndroidエンジニアの案件の特徴について解説していきます。
Contents
Androidの案件はどういった仕事が一般的?
実際のAndroidの案件については、下記の通りです。
職種 | エンジニア |
仕事内容 |
など |
必須スキル | Android・Java・iOS・Object-C・Swift・Kotlin・Unity など |
※エミリーエンジニアの案件より参照
Androidはスマートフォンに搭載されているOSであることから、フロントエンドでアプリ開発に携わる案件がメインの仕事であることがほとんどです。ただ、その他にもアプリ開発の一部として、例えばサーバーサイドの機能開発を担当するような案件もあります。
スマートフォンアプリ開発の案件の一例
スマホ市場はiOSとAndroidが主流です。そのためアプリ開発を行っている企業はどちらのOSにも同じアプリを配布したいという需要は大きいです。このことからiOSアプリとして開発されているものを移植するという案件も存在します。クロスプラットフォームでアプリを開発するということもあり、この場合はXamarinやCocos2d-Xなどのフレームワークに習熟しておく必要があります。
ゲーム開発の案件一例
Androidエンジニアが携わる業界としては、ゲーム業界のものが多く、スマホ用ゲームアプリの開発人員を募集している案件も目立ちます。ゲーム開発は、物理学シミュレーションなどの演算の知識が必要とされたり、ゲーム特有の処理の流れを知る必要があったりする案件があり、NDKを使用することがあります。また、独自またはディベロッパーのCやC++のライブラリを使用している場合は、CやC++の知識も必要です。
Android開発におけるJava案件の特徴
案件に参画するための必須スキルは、募集内容によって言語はさまざまですが、その中でもJavaが必須条件とされている案件が目立ちます。なぜなら、JavaはJVMの環境下であれば実行できる汎用性がありOSに依存されにくい特徴があるからです。そのため、たくさんのWebアプリケーションのサーバーサイドにOracle社が提供しているJava SEを使う案件が多くあります。
ただOracle Javaは2019年から有料化することがOracle社から発表されたため、将来的には、Java以外のプログラム言語が使われることが予想されます。そこで、冒頭でもお伝えをしたGoogleの公式発表からKotlinの案件が増えていくということも考えられます。
また、Javaで作成した既存アプリの保守という案件の場合は、従来通りJavaの知識を生かすことができます。案件数は限られますが、大きな規模のアプリであるほど一から作り直すことは難しく、Javaによる開発を継続するしかなく、Javaのスキルが必要になることもあるでしょう。
Android案件の必要な開発環境
Android案件は案件ごとに必要とされる開発環境が異なります。使用するプログラミング言語は案件によりますが、現在の市場では基本的にはJava扱う案件が多くあります。そこで、まず基本となるのはAndroidアプリを作成するための統合開発環境Android Studioです。
Androidアプリが市場に出回った当初は、Javaの統合開発環境として知られるEclipseにプラグインをインストールして開発を行うことが一般的でしたが、現在ではAndroid Studioをインストールするだけで開発を行うことができます。その他にもサーバーやシステムの開発をする際にも、アプリを通す場合はやはりAndroid Studioが必須の開発環境となるでしょう。
Android StudioのSystem requirements(推奨環境)はWindowsの場合、以下の通りです。
・OS:Windows7・8・10のいずれか ・メモリ:最低3GB、8GMを推奨。プラス1GBをAndroidのエミュレーターに加えれば完璧 ・ディスクスペース:最低2GB、4GBを推奨 (500MBを統合開発環境用に、1.5GBをSDKとエミュレーターに使用するため) ・画面解像度:1280 x 800 |
Macの場合も「OS X10.10から10.13」という以外同じとなっています。この中で最も注意したいのがメモリの量でしょう。最低3GBとありますができれば8GB以上を用意しておくと快適に開発できます。
フリーランスでAndroidの案件獲得をするうえで必要な経験
フリーランス専門の案件紹介サービスを確認すると、Android案件で提示されている必要な経験年数には2年が多いです。そのため、2年以上の開発経験があればフリーランスでも仕事を請け負うことができます。開発経験がない場合は、企業に勤めて経験を積むか、自分でアプリを開発して経験を積むとよいでしょう。
フリーランスでAndroidの案件獲得をするうえで必要なスキル
Android案件は案件ごとに必要とされるプログラミング言語が異なります。ここでは、Androidエンジニアが身に付けておきたいスキルについて解説していきます。
今後の市場に合せてKotlinを習得する
現在、Android開発で使用する主流のプログラミング言語はJavaがメインですが、今後Kotlinへ移行すると考えられるため、市場状況に合せて、Kotlinの習得も検討するとよいでしょう。KotlinはJavaと互換性があるため、イメージとしてはJavaのバージョンアップ版という形で勉強に取り組むことができるでしょう。
iOSアプリの開発案件に参画する場合
iOSアプリの案件に携わりたいというエンジニアは、iOSアプリの作成に使われるObject-CやSwiftの習得を目指しましょう。
マルチプラットフォーム対応のゲームエンジン案件に参画する場合
ゲームエンジンの開発案件では、Unityを使用したプロジェクトが増えています。UnityはC#を採用しているため、C#が扱えなくてはなりません。現代の市場はスマートフォンがとても普及しており、人々にとって身近な機器です。Androidは頻繁に利用されるOSためエンジニアの需要も高い状況です。
フリーランスのエンジニアとしてAndroid案件の獲得を目指している人は、常に最新情報を取り入れることやスキル・技術を磨くことが大切です。
報酬単価、働き方の相談からでも大歓迎です!まずはお気軽に下記より登録ください!