Android開発では、近年Kotlinの注目度が急速に上昇しています。
Kotlinは2011年に登場した歴史の浅い言語でありながら、GoogleからAndroid開発のプログラミング言語として正式に認定され、急激に注目度を高めています。
そこで今回は、Kotlinに関してエンジニアとして案件を受けるという視点から紹介していきたいと思います。
Contents
Kotlinとは
Kotlinとは、2011年にJetBrainsによって開発されたプログラミング言語です。主にAndroidアプリ開発に使用されており、2017年から爆発的に普及しました。
開発者向けのカンファレンス「Google I/O 2017」において、GoogleがKotlinをAndroidアプリ開発のプログラミング言語として追加することを発表しました。そのきっかけを起点に、今ではJavaを超えるのではないかといわれるほど人気を博しています。続けて、Kotlinは具体的にどんな特徴を持っている言語なのかを見ていきましょう。
Javaと相互利用可能
Kotlinは、「JavaとAndroidと100%相互運用可能」をテーマにしており、Javaとのスムーズな連携ができる特徴を持っています。Javaで開発したコードをKotlinで読み込んむこともできますし、逆にKotlinで開発したコードをJavaで読み込むこともできます。現場で問題になりがちな、既存の開発環境との連携が簡単に行えます。
シンプルでわかりやすい言語
Kotlinは、文法がシンプルであることから言語の特徴を意識せずに開発に集中することができます。例を挙げると、簡潔に書くことを目的のひとつとしているため、従来のプログラミング言語と違って“;“が必要ないです。また、文字列型や数値型の定義をしなくても型推論をしてくれる機能を持っています。これらの特徴から、言語の特徴を意識せずに開発に集中することができます。
処理が速い
KotlinはJava VM上で動作しますが、Java VMで課題だったオーバーロードがほとんどありません。これにより、スピーディに動作する特徴を持っています。また、Kotlinはオブジェクト指向型のプログラミング言語ですが、コンパイラでの処理も早いです。そのため、オブジェクトのロードに時間がかからず、まるでスクリプト言語を使っているかのように書いたそばから実行することができます。
開発時にエラーが起きにくい仕組み
アプリ開発では、よく定義されていない変数(null)を呼び出そうとしてエラーになるNullPointerExceptionがよく発生します。開発者にとっては、この発生が大きなストレス源になっていました。しかしKotlinは、言語自体にNullPointerExceptionを防いでくれる仕組みが盛り込まれており、ほかのプラグラミング言語と比べてストレスなくアプリ開発を進めていくことできます。
Kotlin案件の内容とは?
エンジニア向けに提示されているKotlin案件を見てみると、内容としては開発系のものがほとんどです。具体的にどんなものがあるのか見てみましょう。
- Android用QR決済サービス開発
- ECサイトのサーバサイド開発
- Android用メールアプリの開発支援
- 社内端末用の業務用Androidアプリ開発
- 画像認識システムに連携するWebシステムバックエンド開発
案件の種類として最も多いのが、Androidアプリを開発する案件です。
Kotlinは、GoogleがAndroidアプリ開発の公式言語としていることから案件としてもAndroidアプリ開発の案件が最も多くあります。
しかし、Kotlin案件の中にはWebアプリケーションのサーバサイド開発で使用されるケースもあります。Webアプリケーションにおいて、サーバサイド開発にはよくJavaが用いられていました。その後継として互換性があるKotlinが選ばれるケースがあるためです。
Kotlin案件の将来性はあるの?
エンジニアとして何か新しい技術を学ぼうと考えた時に、今後も需要が増えていくのかは気になるところです。
Kotlinに関して、将来性という観点で見てみると、Kotlinの将来性は高いと言えます。Kotlinは、現時点でも下記のような多くの大手企業がアプリ開発に採用しています。
- Yahoo!ニュース(Androidアプリ)
- LINE(Androidアプリ)
- Abema(Androidアプリ)
- Retty
みなさんも一度は使ったことがあるサービスではないでしょうか。
Kotlinは登場から10年とたたず、Androidアプリ開発の分野において大きく普及しています。今後も開発に使用する企業は増えていくと考えてよいでしょう。さらに今後Javaを使用していたwebアプリケーション開発は、Kotlinによって置き換わっていく可能性を秘めています。今後も案件が増える可能性はあっても減る可能性は低く、将来性は高いです。
Kotlinエンジニアの単価相場は?
続けてエンジニア向けに提示されているKotlin案件の単価を見てみましょう。Kotlin案件も、他の言語と同じくエンジニアとしての経験年数が長ければ長いほど、受けられる単価も上がっていきます。例を出すと下記のように経験年数と単価が比例します。
- 2年未満 35万~50万円
- 2年以上3年未満 50万~70万円
- 3年以上 60万~
案件には、短期間を目途とするものから1年以上かける長期案件まで様々な種類があります。
案件を選択する際には、「安定して長く働きたいのか」「短い期間でスキルを見つけたいのか」など自分の目的に合わせて検討しましょう。高い単価の案件であれば、85万円/月といったと年収ベースで1,000万円を超える年収を目指すこともできます。フリーランスエンジニアであれば税金の問題もあるため、どのくらいの収入を目指すかには慎重になりつつよく考えましょう。
Kotlin案件で稼ぐためには?
Kotlin案件の中でも、高い単価が設定されているものにはある程度の条件があります。どういったスキルや経験があれば高単価で仕事を受けられるのかについて見てみましょう。
ユーザの要望に応えるビジネス視点
Kotiliを扱う案件では、これからユーザに使ってもらう新規のアプリ開発をするケースが多いです。そうなると、言われた通りに開発をするだけが仕事ではありません。開発したサービスを使うユーザさんの要望を聞き、それをどう形にするのかを考えなければいけません。ユーザが求めていることを把握する能力や、与えられた問題を解決するための視点を持つ必要があります。その背景から、ビジネス視点を持っているエンジニアは重宝されます。
LAMP環境への理解/構築経験
Kotlinは、Javaの代わりにWebアプリケーション開発で使用されることがあります。
KotlinによるWebアプリケーション開発の案件では、求めるスキルとして「LAMP環境に対する理解」が多く見られます。LAMPとは、Linux/Apache/MySQL/PHPというサーバを構築する上で欠かせない4要素の頭文字を並べたものです。高単価を出している案件では、当然ながら多くのエンジニアが募集してきます。そこで選ばれるためには、複数の視点でプロジェクトを見る能力が必要になってきます。LAMP環境の知識があれば、Webアプリケーションを形作るフロントサイド/バックサイドそれぞれの視点を持てるため、理解が深いエンジニアは重宝されます。
Androidアプリ開発経験
Androidアプリを開発する案件では、当然開発経験を持っているエンジニアが優先的に選ばれます。フリーランス向けのKotlin案件を見てみると、「Androidアプリ開発経験3年以上」など数年単位の開発経験が条件になっていることが多いです。
たとえフリーランスという立場でも、経験年数によって単価は変わってきます。そのため、まずは雇用形態にこだわらず開発経験を積む選択肢も考えてみましょう。
まとめ
以上、Kotlinについてエンジニア向けの案件という観点でお話させていただきました。Kotlinは、Googleが公式で認めている点でも評価の高い言語です。Javaと互換性を持っていることから今後の将来性も明るく、今のうちからスキルを磨いておくことで今後増える需要に応えられるエンジニアになれます。すでにスキルを持っている方も、学んでみたいと思っている方も今のうちからスキルと経験を積んでおきましょう。
無料会員登録で、あなたにおすすめの案件やセミナーの情報をお送りいたします。
まずは無料会員登録を。