
freelance
Kotlin
【2025年版】Kotlinフリーランスの単価相場・案件例・将来性を徹底解説
「Kotlinのフリーランスって実際どれくらい稼げるの?」「どんな案件が多いの?」と気になるエンジニアの方も多いでしょう。 この記事では、Kotlinフリーランスの単価相場・案件例・将来性について詳しく解説します。 Kotlinとは? Kotlinは、チェコのソフトウェア企業 JetBrains が開発した静的型付けの汎用プログラミング言語です。2011年に発表され、2016年にバージョン1.0が正式リリースされました。Javaとの高い互換性を保ちながら、より簡潔で表現力の高いコードを書けるよう設計されたことから、モダンな言語として急速に注目を集めました。 Kotlinの普及を支えた大きな特徴のひとつが、Java Virtual Machine(JVM)上で動作する点です。これにより、既存のJavaライブラリやフレームワークをそのまま利用でき、企業は既存資産を活かしつつ段階的にKotlinへ移行できます。また、JavaとKotlinを同じプロジェクト内で併用できるため、導入のハードルが非常に低く、モダン化の手段として採用が進みました。 2017年には、Google が Kotlin を Android アプリ開発の公式サポート言語として採用したことで、その人気は決定的なものとなりました。簡潔で読みやすい文法、Null安全などの安全性向上機能、そしてJavaとの互換性は、Androidアプリ開発に求められる高い生産性と安定性にフィットしていたためです。現在では多くのAndroidプロジェクトでKotlinが標準選択肢となっており、Google自身も新規プロジェクトではKotlinファーストの方針をとっています。 関連記事:Kotlinの歴史|今後の展望についても解説 Kotlinフリーランスの単価相場 Kotlinフリーランスの月額平均単価は70万円前後で推移しており、60万円〜70万円がボリュームゾーンとなっています。単価は案件の質や求められるスキル、そして担当する工程によって大きく変動しますが、エンジニアとして経験を積み実力をつけていくことで高単価の案件を受注できるようになります。 下のグラフはテクフリに掲載されている単価別案件比率を示しています。 平均単価 テクフリの案件データに基づくと、Kotlin案件の月額平均単価は約70万円となっています。 この金額は、年収に換算すると約843万円となります。正社員エンジニアの場合、Kotlin経験者の平均年収は450万円〜700万円程度であるため、経験やスキル、担当領域によっては、フリーランスに転向することで年収が大きく向上するケースも珍しくありません。 フリーランスが高額な報酬を得られる主な理由は大きく二つあります。一つは、企業が求める即戦力としての高度な専門性や豊富な経験に対し、相応の対価が支払われるためです。もう一つは、報酬に含まれるコスト構造の違いです。正社員の場合、企業が負担する社会保険料の会社負担分や福利厚生費といった人件費が発生しますが、フリーランスではこれらを企業が負担する必要がありません。その分が報酬に上乗せされるため、結果的に提示される単価が高くなるのです。 他のスキルとの単価・案件数比較 ここでは、Kotlin案件を他の主要言語と比較します。テクフリのデータによると、Kotlinフリーランスの平均年収は約843万円で、単価水準は主要なトレンド言語と比べるとやや低めです。 また、Kotlin案件はテクフリ全体の約2.0%にとどまり、JavaやPythonなどの汎用言語ほどの案件ボリュームはありません。 一方、モバイル開発領域では、iOS向けのSwiftが競合となります。しかしKotlinには、Javaとの高い互換性を活かしてサーバーサイド開発にも応用しやすいという強みがあります。そのため、モバイルにとどまらず、システム全体を横断して活用できる技術として、一定の市場価値と安定した需要を確保し続けています。 Kotlin案件の特徴 ここでは、Kotlinエンジニアのフリーランス市場の具体的な特徴を詳しく見ていきます。 リモートワークの可否 テクフリのデータによると、Kotlin案件の約67%がリモートワークに対応可能となっています。フリーランスの場合は、自身のライフスタイルに合わせて常駐案件やリモート導入案件など幅広い選択肢を持つことができます。 需要が高い業界・分野 Kotlinの需要が最も高い領域は、言うまでもなくAndroidアプリ開発です。近年ではモバイルにとどまらず、サーバーサイド開発でもKotlinの採用が進んでおり、活躍できるフィールドは確実に広がっています。 特に需要が高いビジネス領域としては、モバイル先行型SaaS、ECプラットフォーム、キャッシュレス決済、フィンテック、大規模コンシューマー向けメディアサービスが代表例です。これらの業界では、アプリの品質と開発効率が事業成長を左右するため、Kotlinの高い生産性やNull安全性による品質担保は欠かせない要素となっています。 さらに、Kotlin Multiplatform Mobile(KMM)の普及により、クライアントアプリとバックエンドの両方をKotlinで統一する企業が増えています。技術基盤をKotlinに一本化することで開発効率を最大化できるため、この動きはサーバーサイド領域も含めたKotlinエンジニアの需要拡大を後押ししています。 高単価案件で求められるスキルセット Kotlinフリーランスとして市場で最高水準の報酬を獲得するためには、Kotlinの基本的な開発能力を超えた、戦略的なスキルセットが必須となります。 モダンなモバイル技術 モダンなモバイル技術として、Jetpack ComposeとCoroutines/Flowの実務経験は必須級です。Jetpack Composeは、従来のXMLベースから脱却し、宣言的UIを提供する現代のAndroid開発の主軸です。そのため、Jetpack Composeの実務経験は高単価案件の応募条件となるケースが増えています。さらに、大規模アプリケーションにおける複雑な非同期処理を安全かつ効率的に実装するためには、CoroutinesとFlowの深い知識と経験が求められます。バックグラウンド処理やリアルタイムデータフローを最適に扱う能力は、アプリのパフォーマンスと安定性に直結し、堅牢なアプリケーション開発において不可欠なスキルです。 サーバーサイド/フルスタック能力 モバイル技術に加えて、サーバーサイドまたはフルスタックの能力を持つことは、市場価値を大きく向上させます。Spring BootまたはKtorなどのサーバーサイドフレームワークを用いたWeb APIの開発経験は、報酬の最大化に直結します。クライアントとバックエンドをKotlinで統一できるフルスタックエンジニアは、技術的な一貫性を保ち、プロジェクト全体の工数を削減できるためです。また、多くのエンタープライズ領域で必要とされる、既存のJavaを用いた大規模システム開発の知識や、レガシーシステムをKotlinへ段階的にモダナイゼーションできる能力も、特に高い評価を受ける重要なスキルです。 アーキテクト・リードスキル 最高水準の報酬を獲得するための条件の中でも特に大切なのが、アーキテクトおよび技術リードのスキルです。DDDやClean Architectureといったソフトウェアアーキテクチャの設計原則を深く理解し、実際に大規模な方式設計や技術選定を主導できる能力が求められます。さらに、高単価案件では、単なるアプリの機能開発を超え、Kubernetes、Docker、AWSやGCPなどのクラウドインフラ環境での開発・運用経験が必須となります。高単価案件では、インフラ連携、スケーラビリティの確保、パフォーマンス最適化まで責任範囲が及びます。加えて、チームメンバーへのメンタリング、質の高いコードレビュー、技術的な意思決定の推進など、チーム全体の技術的な品質向上を担う技術リード・マネジメント経験は、高単価案件受注の鍵となります。 関連記事:Kotlinのおすすめフレームワークを5つ紹介!特徴をわかりやすく解説 Kotlin案件・求人例一覧 業務内容 動画配信Androidアプリ開発 単価目安 (月額) 89万円〜99万円 働き方 常駐 必要なスキル Java、Kotlin用いたAndroidアプリの開発経験3年以上 RESTAPIの理解 MVVMなどのアーキテクチャへの理解 大きなブランクなく実務経験が5年以上あること 業務内容 脆弱性管理クラウドにおけるフルスタック開発 単価目安 (月額) 100万円〜110万円 働き方 リモート併用 必要なスキル Java/Kotlin によるWebアプリケーションの開発経験(3年以上) Spring Framework/Spring Boot を利用したプロダクト開発の経験 AWSの使用経験 スクラムを採用したチームでの経験 HTML、CSS、Javascriptなどフロントエンドの開発に必要な基本的な知識や経験 SPAの開発経験 RDBMSの利用経験 macOSの使用経験 業務内容 B to Bサービスの開発運用保守 単価目安 (月額) 73万円〜83万円 働き方 フルリモート 必要なスキル KotlinでのAndroidアプリ開発経験5年以上 ネイティブアプリのアーキテクチャー設計経験 Jetpack Composeの利用経験 Kotlin案件はこちら Kotlinフリーランスの将来性 長期的にフリーランスとして市場価値を維持し、単価を上げ続けるには、現在の需要を追うだけでは不十分です。重要なのは、技術・ビジネス両面の将来の変化を予測し、それに合わせて自分のスキルセットと提供価値を戦略的に再設計することです。 以下では、今後の需要がどのように変化するかを予測し、その変化に対応して高単価を維持・実現するための具体的なキャリアパスを提示します。 市場需要の動向 Kotlinエンジニアの市場需要は、今後も長期的に見て堅実に継続し、拡大していくと予測されます。その最大の要因は、Android市場の成長が続く限り、Googleが推進する「Kotlin First」戦略の基盤が揺らがないことです。世界のモバイルOSのシェアはAndroidとiOSが二分しており、GoogleがKotlinを推奨言語として公式化したことで、Android開発におけるKotlinの地位は確固たるものとなりました。そのため、コア市場での需要は継続的に安定しています。 さらに、Kotlinエンジニアの活躍領域は、従来のモバイル開発という枠を超え、システム開発全体へと拡大し続けています。具体的には、サーバーサイドでのSpring Bootとの連携や、軽量なKtorフレームワークの採用が広がっています。また、Kotlin Multiplatform Mobile によるクロスプラットフォーム開発の戦略的採用の広がりも重要です。 KMMは、UI以外のビジネスロジックやデータ層をKotlinで一元化し、iOSとAndroid間でコードを共有できるため、開発効率を重視するスタートアップやSaaS企業にとって非常に魅力的なソリューションとなっています。 今後のキャリアパス展望 フリーランスとして長期的に活躍し、高単価を維持するためのキャリア戦略は、以下の専門性の深化と適用範囲の拡大の2つの軸で構築されます。 Kotlin Multiplatformの習得 KMMは、開発コストを大幅に削減しつつ、ネイティブに近い品質を実現する、企業にとって最も魅力的なソリューションの一つです。 現在のフリーランス市場においてKMM経験者はまだ希少であり、先行してこのスキルをマスターすることで、高単価で将来性の高い、戦略的なプロジェクトに参画できる可能性が高まります。 フルスタック化の推進 モバイル開発のスペシャリストに留まらず、サーバーサイドの知識を深め、クライアントからバックエンドまで一貫して設計・開発できる能力を持つことが求められます。これにより、プロジェクト全体を統括できるフルスタックKotlinエンジニアとしての市場価値を確立できます。結果として、より大規模で高報酬の案件にアクセスが可能となり、多様な技術スタックを持つことで、技術トレンドの波に対しても柔軟に対応できる基盤が整います。 技術アーキテクトパスの確立 技術リードやアーキテクト技術的な意思決定、大規模な方式設計、チームメンバーの指導、インフラストラクチャの最適化など、開発全体の品質と方向性を決定する役割を担います。このスキルセットと実績を積み重ねることで、単なるコーダーではなく、プロジェクトの成功に責任を持つ技術責任者としての安定したキャリア基盤を築くことができます。 まとめ Kotlinフリーランスは、Android開発を中心に安定した需要があり、月額平均単価は 約70万円 と高水準です。リモート案件も約67%を占め、働き方の選択肢も広がっています。案件数自体はJavaやPythonに比べると少なめですが、Android市場の成長とGoogleの「Kotlin First」方針により、今後も需要は堅実に継続すると見込まれます。 高単価案件を獲得するには、Kotlin基礎を超えたモダン開発スキル、サーバーサイドとの横断スキル、アーキテクト・リード経験などがカギとなります。また、Kotlin Multiplatform Mobileの普及によって、クライアント〜バックエンドをKotlinで統一する企業が増えており、このスキルは今後の市場価値を押し上げる要素です。 テクフリでフリーランス案件を探してみる

Kotlin
Kotlinのおすすめフレームワークを5つ紹介!特徴をわかりやすく解説
Kotlinは、「Javaをもっと簡潔・安全に」という想いから開発されたプログラミング言語のひとつです。Javaを改良して作られた言語ということもあり、Javaとの親和性が非常に高く、Kotlinを使用している大手企業も少なくありません。Javaは歴史が古く、多くの企業で採用されている言語ですが、流行りの言語と組み合わせづらいという欠点があります。そのため、より簡潔なKotlinを新たに学習しようと考えるエンジニアの方がいると思いますが、 「Kotlinのフレームワークって何があるの?」 「いくつかあってどのフレームワークを使えばいいかわからない…」 といった疑問をお持ちかもしれません。 そこで、この記事ではKotlinのフレームワークについて解説していきます。最後まで読んでいただければ、どのフレームワークを学習すれば良いかわかります! Kotlinについて詳しく知りたい方はこちらの記事を参考にしてください。 Kotlinの歴史とこれからを解説 テクフリでフリーランス案件を探してみる Kotlinフレームワークとは? Kotlinフレームワークとは、Kotlinを利用して開発をする際に必要な基本機能をまとめたソフトウェアのことです。 フレームワークには、ある程度決まったルールが存在しています。そのため、誰が書いても理解がしやすいという特徴があります。 また、自分で1から書くと数百行必要なコードが、フレームワークを使うと数十行で解決するのも魅力です。 フレームワークと似た言葉としてライブラリがありますが、両者の違いは「制御の反転があるかどうか」によります。 ライブラリの場合、プログラムを動かす主導権はプログラマーが書いたコードにあります。一方で、フレームワークの場合、プログラマーが書いたコードはフレームワークによって制御されるのです。 つまり、ライブラリは主導権がエンジニア側にあり、フレームワークは主導権がフレームワーク側にあると言えます。 Kotlinフレームワークを利用するメリット Kotlinを使う上で、フレームワークを利用することにはいろいろなメリットがあります。ここでは、以下のメリットについて詳しく解説します。 開発スピードが上がる コードの統一性を保持(多人数開発にも対応しやすくなる) バグの減少 フリーランスとして仕事が取りやすくなる テスト工数を削減できる 開発スピードが上がる MVP開発やリーンスタートアップという言葉が注目されているように、IT/Web業界では特に、サービスを高速で市場に投下することが重要です。Kotlinのフレームワークを利用するのとしないのでは、開発スピードにかなりの差が生じます。 例えばKotlinのフレームワークには、Androidアプリや、サーバーの開発機能などが備わっているのですが、それらをフレームワークなしでエラー無く完成させるには、かなりの時間を要してしまうのです。 コードの統一性を保持(多人数開発にも対応しやすくなる) プログラミングに限らず全ての仕事にいえますが、コードの書き方にはその人の個性やクセがでます。 経験、スキル、年齢、性格、キャリアなど様々な要因によって差が生じるのですが、人が書いたコードを修正するのは、かなり大変な作業です。 フレームワークを利用すれば、コードの統一性を保持させることができます。 統一性を保持することにより、多人数開発にも対応しやすくなります。 バグの減少 Kotlinのフレームワークは基本的に大人数のエンジニアに利用されています。そのため、バグはすでに解決されていることが多いです。 それらのバグが少ないフレームワークを利用して開発を進めると、開発をしたプログラムもバグが少なくなる可能性が高まるといえます。 フリーランスとして仕事が取りやすくなる Kotlinの中規模、大規模以上案件では、フレームワークが利用されていることがほとんどです。 特にSpring Bootは人気のフレームワークとなっているため、Kotlinエンジニアとして仕事を獲得したい場合、習得しておくといいかもしれません。 テスト工数を削減できる Kotlinフレームワークを導入することで、テスト工数も削減することが可能です。 なぜなら、フレームワークを使って実装した箇所は、単体テストを行う必要がなくなるためです。 システム開発ではテストに多くの時間がかかってしまうこともあります。それでいてシステムの品質を高めるための重要な工程でもあるため、簡略化することは難しいのです。 特にスマホアプリはユーザーの要望や流行に合わせて何度も改良する必要があり、その度にテストを行わなくてはいけません。 スマホアプリ開発を行うなら、Kotlinフレームワークを用いて、極力テスト工数を減らすことが大切なのです。 Kotlinフレームワークを使用するデメリット 一方で、Kotlinフレームワークを使用することのデメリットは次の4点が挙げられます。 学習期間が必要 イレギュラーに対応できないことがある フレームワークに依存してしまう 選定を間違えると開発効率が下がる 学習期間が必要 フレームワークを使いこなすにはKotlinの理解がある前提で、最低でも数週間は学習をする必要があります。 概要を抑えられても、細かい要望を実現しようとすると調査に更に時間がかかることはよくあります。使用者が多くないフレームワークになると、情報量が少なく、調査が難しいこともあるでしょう。 また、ドキュメントは基本的に英語で書かれていることが多いです。 イレギュラーに対応できないことがある フレームワークはいわゆる「よくある機能」を開発する際には有用です。 しかし、前例が少ない機能を開発したい場合、対応できないことが多々あります。 フレームワークは決められたルールに則ってサービスを開発していかなければならないため、イレギュラーが多発するようなサービスではフレームワークを利用しないほうが作りやすいことがあるのです。 フレームワークに依存してしまう Kotlinフレームワークに依存してしまう、というのもデメリットとして挙げられます。もし、フレームワークの仕様が変更にあった場合、自社のシステムもそれに合わせて変更しないといけません。 また、フレームワークに深刻なバグがあった場合、自社のシステムにも不具合が生じる可能性があります。さらに、フレームワークがサポート終了した場合、そのフレームワークを使い続けることはできませんので、他のフレームワークに移行する手間が発生してしまいます。このように、フレームワークに依存するデメリットがあることは事実です。とはいえ、フレームワークによる開発工数削減のメリットも大きいので、どちらを優先するかはプロジェクト次第と言えるでしょう。 選定を間違えると開発効率が下がる どのKotlinフレームワークを導入するか、判断を誤ると開発効率がむしろ下がってしまう恐れがあります。たとえば、小規模な開発なら制約が緩くて自由度の高いフレームワークの方が使いやすいでしょう。しかし、大規模な開発になると、制約が緩いフレームワークはコードの書き方をチームで統一しにくく、開発効率が上がらない可能性があるのです。Kotlinフレームワークにはそれぞれ特徴があります。それぞれの特徴を踏まえて選定しないと、システムと相性が悪いフレームワークを導入してしまうかもしれません。 おすすめKotlinフレームワーク5選 ここからは、人気のフレームワークや、目的によって有用なKotlinフレームワークについて解説していきます。 Spring Boot Spring Bootは、JavaのフレームワークであるSpringを改良して開発されたフレームワークです。Javaのフレームワークとして開発されたものですが、KotlinがJavaを改良して作られた言語であるため、Kotlinでも使用できるようになっています。Springでは、多機能ゆえの複雑さが課題でしたが、Spring Bootではシンプルな設計が実現されており、機能の使い分けを行いやすくなっているのが特徴です。また、XMLファイルの設定を自動で行うことができる機能なども実装されています。 >Spring Boot公式サイト Spring BootはJavaのフレームワークであるため、こちらの記事も是非参考にしてみてください! Javaフレームワークとは?おすすめの10選と選び方【2022年最新版】 Ktor Ktorは、Kotlinの開発元が公開しているフレームワークです。Kotlin自体は2011年に発表された言語ですが、Ktorはリリースが2018年と新しく、現在もなおアップデートされています。Ktorは非同期クライアントとサーバーアプリケーションを作成するためのフレームワークで、拡張性が高いのが特徴です。また、最低限の機能のみで構成され、処理が軽量なのも大きなメリットです。スマホアプリの動作の早さを重視したい場合にもおすすめと言えるでしょう。 >Ktor公式サイト Javalin Javalinは、その名の通り、JavaとKotlinで使用可能なフレームワークです。Ktorと同様にシンプルで、軽量である点が特徴です。設定次第では、非同期で動かすことができるのも大きなポイントとなっています。同期・非同期の両方で動かすことができると、スマホアプリの動作効率を高めやすくなり、ユーザーによって使いやすいアプリに改良することが可能です。基礎的な知識さえあれば、すぐに使えるほどシンプルなので、使いやすいフレームワークと言えるでしょう。 >Javalin公式サイト Jooby Joobyは、Java/Kotlin/JavaScriptで使用可能な、マイクロフレームワークです。機能を最小限にするために、Java8以降を標準としているので、環境が古いバージョンの場合注意が必要です。(Kotlinの場合は別です)マイクロフレームワークと謳っているだけあって、最小限の機能のみで構成されており、軽量さが魅力となっています。また、拡張性が高いのも特徴です。必要に応じて機能を追加できるため、柔軟性も高いフレームワークと言えるでしょう。拡張性が高い分、学習コストは高いですが、使い慣れればその便利さを感じることができるはずです。 >Jooby公式サイト wasabi wasabiはKotlin用に作られたフレームワークです。wasabiの特徴は、MVCモデルを採用していないことでしょう。MVCモデルを採用していると、役割ごとにプログラムを分けることができ、ソースの管理が容易になります。一方で、コードの制約が増えてしまうデメリットがあり、小規模開発ではMVCモデルを採用していないフレームワークの方が、相性が良い可能性があります。現状、他のフレームワークに比べるとwasabiはそれほど知名度は高くありません。しかし基本的な性能も高く、アップデートが頻繁に行われているため、今後も期待できるフレームワークと言えるでしょう。 >wasabi公式サイト Kotlinの単価や記事数は? ここまでフレームワークの解説をしてきました。では実際の単価や記事数はどのようになっているのでしょうか? テクフリに掲載されている案件を参考に以下にまとめました。 Kotlin案件の単価 弊社調べによると、Kotlinの平均単価は84.2万円、最高単価は165万円となっております。 (テクフリ調べ 2023/08/21付) Javaの単価相場と比較したいという方は、こちらの記事をご参考にどうぞ! >Javaのおすすめフレームワーク10選を紹介!【2023年最新版】 Kotlinフレームワークの記事数比較 Kotlinフレームワークの記事数を下記のようにまとめました。2023年8月時点では、学びやすさの観点から見ると、選ぶべきKotlinフレームワークはSpring Bootであるといえます。 フレームワーク Qiitaの記事数 stackoverflowでの質問数 Spring Boot 4572 187 Ktor 214 0 Javalin 11 0 Jooby 18 0 wasabi(Kotlin) 4 0 まとめ 本記事ではKotlinフレームワークについて解説しました。Kotlinフレームワークのメリット・デメリットやKotlinフレームワークの種類などがお分かりいただけたかと思います。Kotlinは文法が易しく、開発工数を減らすことに貢献してくれる優秀な言語です。Kotlinフレームワークを導入することで、自分達で1から機能を作らなくてすむため、さらに工数を短縮することができます。 これからKotlinフレームワークを学ぶ方には、Spring Bootが特におすすめです。Spring Bootは機能がシンプルな点や、コード量を少なくすることができる点が初心者向きと言えます。フレームワークをうまく活用することによって、Kotlinでの開発をより生産的なものにしていきましょう。 テクフリでフリーランス案件を探してみる

Kotlin
Google formとKotlinを使って、無料のハッカソン・アンケートフォームを作っていきましょう
先日、私たちは半年期のハッカソン:Carrot Wars 2018 をインスタカートで開催しました。 イベントを通してある事実、大きなギャップを知りました。今のネット上でハッカソンイベントの結果を簡単に(そして無料で)集計するサービスはありません。素敵な選択肢はありますが、料金はかなり高いです。しかも、ほとんど単一のイベントでしか対応できません。また月額課金制度も基本です。そして他の制限もあります。 最近人気のあるハッカソンがどのようなものかを考えると、そこには少なくともいくつかの選択肢があると思います。もちろん私たちはリサーチをしましたが、ニーズを満たすオプションを残念ながら見つけられませんでした。 この点に対して、私の共催者は私より現実を認識していました。「今はもうイベントの2日前です! もう直前です。一からアンケート用フォームを作る場合ではありません。もっと重要なことに集中するべきです」彼はそう言いました。 彼の言う通り、私は下記の方法でやってみました。 テクフリでフリーランス案件を探してみる ソリューションの選択 Google Forms 個人的に一からアンケート用サイトを作るのが好きではありません。だから私はGoogle フォームの力をちょっと借りたいと思います。もし一気に大量の応募者に対応しなければならない場合、Google フォームはかなり役に立つと思います。Googleは良いUIを提供していますし、作る方法も驚くほど簡単です。 Kotlin script (kscript) 私が興味を持つのは”集計結果”です。私はおそらく、Googleシートに結果を出力するためにGoogleフォームを取得している可能性があります。しかし、私のExcel /シートは、私が望んだ結果を得るために必要な数学的表現を調整するのに十分強くはありませんでした。 それについて、私は数学的シート表現の代わりに単純にKotlinでスクリプトを書きました。それは私にとって自然な行為でした。さらにアンケートの結果を綺麗にプリントできました。 Kotlinを選んだ理由は二つ:私はAndroid開発者です、そしてInstacartでみんなさんはKotlinを愛用者です。面白いことにこのハッカソンを行う時ちょうどKotlinが新いバージョンをリリースした頃でした(Kotlin 1.2.50 )。 あなたがbashのようにターミナル・プロンプトでスクリプトを実行することについては非常に満足のいくものがあります。 bash syntaxの不快さと、Kotlin言語のすべての心地よさがなくてはなりません。 アンケートの流れ: ・参加者は五つのカテゴリーに参加できます。 ・イベント当日は参加者にプロジェクトのリストを送ります。そして、参加者は各カテゴリーのベストスリーを選びます。 ・Googleフォームはかなり使いやすいです。アンケートの結果を簡単にCVSフォーマットに移行できます。 ・このKotlinスクリプトはCSVを取り込み、計算も行います。それぞれのカテゴリの結果をプリントします。 ハッカソンに対するこのフォームの使い方 1.フォームを作る 私が1押しのアドオンはformRangerというアドオンです。理由は一つ、このアドオンは自動的に資料の追加ができます。 これは私たちにとって役に立ちます。ハッカソンはいつもイベント直前に応募する方々が多くいます。そのためプロジェクトリストはいつも変動が多く、それに対し、アンケート用のフォームも連動しないといけません。(Instacartのハッカソンは五つのカテゴリーがあって、各カテゴリーは30件のプレゼンテーションがあります。それは合計150件のエントリーです。)どのようにして150件のエントリーを管理するのかがとても大事なこととなります。答えはformRanger です。たった一つのGoogleシートで全ての資料を管理できます。 そしてマッチング方法はこのようになります。プロジェクトは行で、順位は列になります(多肢選択法のグリッッドのようです)。あと一つとても重要なポイントは順位に対してレスポンスは一つしかできないという事です。そうでないと一つ以上のベストスリーが発生する場合もあります。 2. Kotlin scriptのインストール こちらのハイパーリンクから、Kotlin scriptの設定方法がわかります。 # install sdkman (if you haven’t already)curl -s “https://get.sdkman.io” | bashsdk install mavensdk install kotlinsdk install kscript # alternatively with homebrewbrew install mavenbrew install holgerbrandl/tap/kscript 3. CVSフォームを作る(出力する) Googleフォームであるレスポンスボタンを押すと、綺麗なCVSフォームを自動作成しますので、簡単にダンロードできます。Googleフォームはだいたい十分ですが、私はもう少し洗練された要素を付け加えたいです。例えば、各カテゴリー(結果)についてのweightingとfiltering です。こういうプログラムを使うと本当にいろんな可能性がでてきます。 4. commandを動かす 流れは下記のようになります: kscript carrot-wars-tabulate.kts ~/Downloads/star-wars-demo-results.csv 初回(スクリプトを初めて実行すると必要な依存関係を作成するので)は少し時間がかかりますが、ご了承ください。 実際はこうなります: 気に入らない人もいますが、でもこれは私のチョイスです 4. リソース ・ Demo Google voting form(自分の好きな選択肢を選んでください!) ・Sample CSV responses file (CSV 結果ファイルの見本です) ・Google sheetused topopulate above form (内容追加のためです) ・Source repofor Kotlin scriptthat tabulates and prints out the results (Kotlin script用、フォーム作りと結果を出力する) タイトル:Free hackathon vote tabulation using Google Forms & Kotlin 作者:Kaushik Gopal 原文URL:https://tech.instacart.com/free-hackathon-vote-tabulation-using-google-forms-kotlin-3c7b7080ea テクフリでフリーランス案件を探してみる

Kotlin
Kotlinの歴史|今後の展望についても解説
Kotlin(コトリン)は、誕生してから10年と経たない、新しいプログラミング言語です。そんなKotlin(コトリン)は今、世界中のエンジニアたちの間で注目を集めつつあります。国内で見ても、IT企業の最王手であるYahoo! JAPANが、『ヤフオク』や『GYAO』といった超有名アプリ(Android)開発で、この言語を導入しています。今後、さらに盛り上がりを見せることでしょう。今回は、そんなKotlin(コトリン)の誕生から現在に到るまでの歴史を見ていきたいと思います。 テクフリでフリーランス案件を探してみる Kotlin(コトリン)の由来、開発されたきっかけとは 2011年7月にKotlin(コトリン)は、誕生しました。開発者は主にアンドリー・ブレスラフ、ドミトリー・ジェメロフの二人。彼らは、ロシアのサンクトペテルブルグにある『ジェットブレインズ社』の研究所で、この言語の開発に取り組みました。ソフトウェア開発企業である同社は、Javaをはじめとした、数多くのプログラミング言語に対応するIntelliJ IDEA(インテリジェイ アイディア)という統合開発環境を開発した会社としても有名です。 Kotlin(コトリン)という名前の由来ですが、これは開発拠点であるサンクトペテルブルグ脇、バルト海に浮かぶ『コトリン島』にちなんで命名されたそうです。こちらの島は、日本でいう淡路島のようなもので、全長約12kmほどしかないとても小さな島です。 そもそもKotlin(コトリン)は『Javaを、もっと簡潔・安全になるように』との想いから、開発がスタートしました。 Kotlin(コトリン)はJavaよりも簡潔に書ける言語 言葉通りKotlin(コトリン)は、コードを簡潔に書くことができます。例えばJavaでは7行ほど書く必要があったコードを、たったの1行で済ますことができるものもあります。 それだけではありません。比較的面倒な、文の末尾にセミコロンが不要。そして、初期値がない変数を定義することも可能です。 エンジニアたちにとっては、非常に使い勝手の良い機能が豊富に搭載されています。専門的な用語を使うと、この言語は型推論やラムダ式,トレイトなどのモダンな文法,機能を持った静的型付けの本格的なオブジェクト指向言語です。 ただ気になるのは「なぜJavaではなくKotlin(コトリン)が必要だったのか」ということ。Javaは、リリースから20年以上の歴史を誇る、言わずと歴史あるプログラミング言語です。時間の経過とともに、ライブラリの数も豊富に蓄積されて聞きました。もちろん現在でも、世界各国のエンジニアたちに愛用されています。 一方でその歴史の古さゆえに、過去の問題点を踏まえて開発された新興言語と比べると、コードがやや冗長になるという側面もありました。そして、以前のバージョンをサポートするために、流行りの言語を取り入れづらくなっていたのです。 そんな課題を解決すべく開発が始まったKotlin(コトリン)ですが、非常に強くJavaの血を受け継いでいます。だからこそ、Javaとの親和性が非常に高いという、他の言語にはない利点を持っています。 基本的にプログラミング言語は、新しい言語を利用すると、それまで使っていた言語のソースは利用できなくなります。要するに、今まで開発してきたプログラムを、作り直すor移植する必要が出てくるのです。 その点、Kotlin(コトリン)はJavaで書いたコードを流用することができます。逆に、Kotlin(コトリン)で書いたコードをJavaで利用することもできるのです。つまりは、これまでのように、コードを書き換える必要がないのです。 それでいて、Javaよりも開発効率が高い。記述ルールが簡潔でコードがシンプルに書ける。コードがシンプルに書けると、入力の回数が減ります。それは結果的に、不要な文字などを、誤って打ち込む危険性を減らすことにも繋がります。 関連記事:Kotlinのおすすめフレームワークを5つ紹介!特徴をわかりやすく解説 Kotlin(コトリン)が激しく変化する時代に残るわけ 実はこの頃のIT業界は、Kotlin(コトリン)以外にも実に様々なプログラミング言語が誕生する時代にありました。「いかに効率よく開発を進めるか」が、これまで以上に重要になってきたからです。 同言語がリリースされる1年前の2010年には、すでに、Scalaが流行り始めている状況でした。また2011年にKotlin(コトリン)が誕生した後も、Apple社が開発したSwift(2014年にベータ版をリリース)、Mozillaが開発に携わったRust(2015)など、非常に多くのプログラミング言語が生み出されています。 そしてそのほとんどが『型推論付きの静的型』の言語です。型推論とは、変数や関数の型を、エンジニア自身が明示せずとも、プログラムがそれを推論してくれることを言います。シンプルに説明すると、余計な手間が減ったということです。 現在もそうですが、その頃も「流行していたサービスが、気付くと市場から消え去っていた」なんてことが、珍しくない世の中でした。そんなことにならないために、企業やエンジニアたちは、めまぐるしく変化する状況に、素早く柔軟に対応する姿勢が求められます。 そんな中で、開発やメンテナンスに手間がかかってしまうというのは、命取りにもなるということです。つまりは、より開発効率の高いツール・環境が求められます。Kotlin(コトリン)はそんな状況かで、ある種必然的な流れとして生み出されたのでした。 Kotlin(コトリン)の成長の歴史 Kotlin(コトリン)は、かつてない速さで人気が高まっていきます。それほど広く世の中に知られるようになった要因は何でしょう。 一概には言えませんが、OSS(Open Source Software)として、開発環境とそのソースコードが、一般公開されていることが一つとして挙げられるでしょう。またその人気と実績を証明したのは、2017年5月です。あのGoogleが「Kotlin(コトリン)を公式言語に追加する」と発表しました。 それがどう影響しているのかは、調査会社のRedmonk社が発表した、プログラミング言語の人気ランキングを見ると明らかです。 同言語は元々65位からスタートしましたが、2017年の6月頃には46位に。2018年には27位まで上昇しました。近々「Javaをも超えるのではないか」とまで言われています。 関連記事:Javaでできることとは?初心者向けにわかりやすく解説 まとめ Kotlinは2011年、JetBrains社のアンドリー・ブレスラフとドミトリー・ジェメロフを中心に誕生したプログラミング言語です。開発拠点近くの「コトリン島」にちなんで命名され、Javaの課題であった冗長さや扱いづらさを解消することを目的に作られました。 JetBrainsはもともとIntelliJ IDEAを開発してきた企業で、Javaに精通していたことから、Kotlinは当初からJavaとの互換性が非常に高い設計となりました。これにより、既存のJava資産を活かしつつ、より短く安全なコードを書ける言語として注目を集めるようになります。 2010年前後はScalaやSwiftなど多くの新言語が登場した時代で、いかに効率良く開発できるかが重要視されていました。この流れの中で、Kotlinの簡潔で安全且つモダンな文法という特性は大きく支持されます。 Kotlin普及の決定的な転機は2017年、GoogleがAndroid開発の公式言語にKotlinを追加したことです。これによりKotlinの人気は急上昇し、プログラミング言語ランキングでも短期間で上位へ躍進しました。その後もKotlinは改良を続け、Kotlin 1.2以降も定期的にバージョンアップ。現在は国内でもYahoo! JAPAN、クックパッド、Sansanなど多くの企業が採用し、求人市場も拡大しています。 テクフリでフリーランス案件を探してみる






