1分で分かる!Kotlinとは?
A:ジャバードせんせーい!ちょっと頼みがあるんだけど!
B:おはよー!どうしたの?
A:この前、たぬきさんのiPhoneアプリが大ヒットしたって話したの覚えてる?
B:うん!たしかことりん君がSwiftを勉強するって話してたやつだよね!
A:あ~!そうそう!Swiftの勉強は、もう諦めたんだけどね!そんなことより、たぬきさんがAndroid版のアプリを開発したいらしいんだよ!
B:へ~!そうなんだ!
A:で、どんなITエンジニアを集めればいいかな??
B:Androidアプリをつくるなら、Kotlinができるエンジニアを集めるといいと思うよ!
A:ことりん??え?僕ってこと?「ことりん」ってなに??
B:あぁ、君の名前もことりんだね。でも、ここで言うKotlinは、プログラミング言語の1つだよ!Javaについては前に教えたよね?
A:うん!覚えているよ!
B:そのJavaの問題点を解決するために開発されたのがKotlinだよ!
A:Javaのパワーアップ版ってことだね!でも、具体的には何ができるの??
B:Kotlinはサーバーサイドの開発はもちろん、Androidアプリの開発もできるんだ!Androidの開発元であるGoogleも、Kotlinのすばらしさを認めていて、Androidアプリを開発するための公式プログラミング言語にしたんだ!
A:そうなんだ!Kotlinってすごいんだね!僕みたいだ!じゃあKotlinエンジニアを探してくるね!
B:いってらっしゃーい!….ぼくみたい?
Kotlinとは?Kotlinの基礎知識
Kotlinは、2011年に生まれたプログラミング言語です。数あるプログラミング言語の中では、比較的新しい部類に入ります。Kotlinは、Javaが抱えていた幾つかの問題点を解消するために作られたため、「Better Java」と言われることもあります。
Kotlinの代表的な特徴は以下の通りです。
- Androidアプリを開発する公式言語としてGoogleのお墨付き
- Javaと相互互換性がある
- シンプルで安全
GoogleがAndroidアプリを開発する公式言語としたのは、前述の通りです。これにより、Kotlin人気がさらに上昇しました。
また、KotlinはJavaと相互互換性があります。相互互換性とは、JavaからKotlinを呼び出すこともできますし、その反対もできるということです(同一のコード内で、JavaとKotlin両方使用できる・連携して使用できる)。すでに存在するJavaのプログラムを改修するときなど、改修部分はKotlinでプログラミングする ということが可能なのです。
プログラミング言語の仕様としても、シンプルで簡潔にプログラミングできるため、バグを生みにくいという特徴があります。
Kotlinを使うエンジニア
前述したように、KotlinはWebアプリケーション開発や、Androidアプリ開発に使用されます。そのため、サーバーサイド(バックエンド)エンジニアや、Androidのネイティブアプリエンジニアがよく使うプログラミング言語です。
Kotlinエンジニアの特徴と在籍業界
Kotlinエンジニアは、Web業界、あるいはスマートフォンアプリなどを開発している業界にもいます。また、Web系のSIer業界にも存在します。
ただし、Javaエンジニアであれば、それほど苦労することなく、スムーズにKotlinを使うことができます。
採用する時に知っておくとよいこと
スキルレベル
前述したようにJavaエンジニアであれば、Kotlinを使うことができます。Kotlin経験者が見つからない場合は、Javaの経験者でもよいか現場に確認しておくとよいでしょう。
使用しているフレームワーク
Kotlinの代表的なフレームワークには、シンプルなWebフレームワークであるjavalinやJoobyなどがあります。また、JavaのフレームワークであるSpring bootもKotlinで使うことができます。
採用段階で必ずしもフレームワークの経験を積んでいる必要はありませんが、どのようなフレームワークの経験があるかは確認しておきましょう。
Kotlin関係の資格
Kotlinの資格としてはAssociate Android Developerというものがあります。こちらはGoogleが主催しており、合格することでAndroid開発に精通していることを証明することができます。
求人のポイント
求人を作成する時は、下記の内容を求人に入れるとよいです。
1.システム(サービス)の詳細
※特にそのシステム(サービス)をなぜ作っているのかを熱量をもって記載する。
2.開発環境
3.現在のエンジニア組織の体制
4.現行システムの課題と募集の背景
5.求められる業務と期待値
6.エンジニアとしてのスキルアップ支援制度の有無と詳細
7.エンジニアチーム内での相互成長のための仕組み(勉強会やLT会など)の有無と詳細
8.選考フロー
9.待遇
10.キャリアパス
Kotlinの豆知識
Kotlinをオンラインで動かす
Kotlinを学びたい、あるいはKotlinで開発したコードの動作確認をしたいというシーンはよくあります。Kotlinは面倒な環境構築などをする必要なく、以下のリンクからオンライン上でKotlinを動かすことができます。
https://play.kotlinlang.org/
Kotlin関連のイベント
国内ではKotlin関連のイベントとしてKotlin Festというものがあります。
公式Twitter:https://twitter.com/kotlin_fest
Kotlin vs Java
「結局、JavaとKotlinどっちがいいの?」という声もあるかと思います。プロジェクトなどで明確な理由がない限り、Kotlinを使用する方向で問題ないでしょう。ただし、Javaも常にアップデートを続けています。プロジェクトによっては、Java必須などといったものもあるため、Javaもまだまだ現役として活躍する機会は十二分にありそうです。