Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Androidエンジニア少ない!どうしたらいい!

cOnigashima
March 24, 2022
550

 Androidエンジニア少ない!どうしたらいい!

cOnigashima

March 24, 2022
Tweet

Transcript

  1. Androidエンジニア少ない?

    絶対おかしい!

    なんで!どうしたらいい!

    Android開発に関わる我々は何をすべきなのかというモヤモヤと、

    今後(個人的に)やっていきたいこと


    View Slide

  2. 自己紹介

    ● 大西 泰司(@taiji_cOnigashima)

    ● FiNC Technologies株式会社

    ● SwE/Android開発4年生

    ○ SEとしてキャリアを初めて以降、Android開発に従事してきた 

    ○ 入り口から今までAndroid開発でピュア・ネイティブな存在 


    View Slide

  3. 背景

    ● 社内でAndroidエンジニア一人になったらどうしたらいいんですか

    ○ DroiKaigi 2021

    ■ Androirdエンジニアが一人という不安と向き合う 


    ● Androidエンジニアって少ない?よく言われるけど


    ● 採用動いても見つからない

    ○ Androidエンジニアは今や売り手市場? 

    ○ オファー飛んでる感想 

    ■ どこもかしこも「We're hiring!」 

    ■ ソフトウェアエンジニアだとモバイルアプリに限らないが 

    ■ でもカンファレンスとか勉強会いったらAndroidの人いっぱいいる 


    View Slide

  4. Android開発に関わる我々は、何をすべきなのかというモヤモヤ

    と、

    今後(個人的に)やっていきたいこと

    View Slide

  5. 目次

    ● 背景・自己紹介


    ● Android開発の需要とエンジニアの供給

    ○ ネイティブ開発とマルチプラットフォーム 


    ● Android開発の昨今


    View Slide

  6. Android開発の需要はあるか?


    ● 求人は他の分野と大差ない

    ○ Androidエンジニアの需要|将来性や仕事内容、年収、求人・案件数を紹介 


    ● OS別のシェアはどうか

    ○ ※ 一旦日本に限ります 


    View Slide

  7. 日本のスマホOS別シェア

    ばらつきはあれど、シェア的に差があるわけではなさそう。

    引用
    https://mmdlabo.jp/investigation/detail_2012.html
    https://101010.fun/posts/world-ios-android-share-2021.
    html#jp
    https://bitwave.showcase-tv.com/iphone強すぎ|ガラパ
    ゴス化した日本のスマホ市場シ /
    https://simchange.jp/post-164095/

    View Slide

  8. Androidエンジニアの供給はあるか?

    ● Android開発を選択する割合

    ○ まずはiOS開発を選択する? 

    ○ マルチプラットフォーム開発を選択する?
    ■ ReactNative/Flutter / PWA(Progressive Web Apps)
    ○ ネイティブ開発は割に合わない? 


    View Slide

  9. 引用 ;https://medium.com/neoxia/pwa-vs-flutter-vs-react-native-vs-native-dc06a17ebf1a


    View Slide

  10. ネイティブ開発は割に合わない?

    ● ReactNative/Flutter/PWAとの比較表

    ○ ネイティブ開発は、開発・運用コストは高いものの、パフォーマ
    ンスも含めて優れている部分もある 

    ■ 消費電力

    ■ サポートと安定性

    引用 ;https://medium.com/neoxia/pwa-vs-flutter-vs-react-native-vs-native-dc06a17ebf1a


    View Slide

  11. Androidエンジニアの供給はあるか?

    ● Android開発を選択する割合

    ○ まずはiOS開発を選択する? 

    ○ マルチプラットフォーム開発を選択する?
    ■ ReactNative/Flutter / PWA(Progressive Web Apps)
    ○ ネイティブ開発は割に合わない?
    理由は分からない!!
    仮説ベースでしかないのと、目の前の問題に対してどうするか?

    View Slide

  12. 採用できないならどうしたらいい?

    やりたいこと:ネイティブ開発の人口を増やす

    ● 0(初学)から育成する

    ○ 新人から / 中途から 

    ○ 日本以外での採用を検討する 

    ■ 英語での運用

    ■ 日本語開発者ってどれくらいいる? 


    ● 他分野の開発者をコンバージョンをする ← 現実的

    ○ iOS ⇆ Android

    ○ ServerSide -> Android 

    ○ フロントエンド -> Android 


    View Slide

  13. Android開発への転換にはどんな障壁があるのか?

    ● Android開発は敷居が高い??

    ○ redditでの議論 :

    ■ Is it just me or is Android development hard AF to learn? 

    ■ 作ってみるしかない


    ● Android開発のために何を知って貰えば良いのか

    ○ The 2022 Android Developer Roadmap 

    ○ AndroidフレームワークにおけるUIやライフサイクル 

    ■ ActivityやらFragment 

    ○ xmlファイルによるレイアウト組み 

    ○ MVVMといったアーキテクチャ 

    ■ FiNCのような大規模コード開発だとむしろ必要 

    ○ 毎年来るOSアップデートへの対応やら 

    ○ え、JetPackのライブラリ多すぎ・・・? 


    View Slide

  14. Android開発の昨今 : JetPackCompose

    ● 宣言型UI

    ○ 最近主流のパラダイム 

    ■ ステートレスなコンポーネント化 

    ■ 状態管理からの解放 

    ○ Reactと比べて

    ■ React書いていたServerの人は「すごい書きやすい」と仰せ 


    ● Java to Kotlinぐらいのムーヴメントと言われている

    ○ 長期的にはxmlが置き換えられていくのでは 

    ■ 議論

    ● Will Jetpack Compose Take Over XML? : r/androiddev 


    View Slide

  15. 最近考えていること

    ● JetPackCompose導入して、フロントエンドからネイティブモバイル開発に持ってくる
    のがスムーズなのでは!!??(フロントエンドしらんけど)

    ○ Viewだけで切り出す 

    ○ Reactライクに書ける 

    ■ SwiftUI


    ● Androidの魅力を伝える

    ○ なんでモバイルアプリ開発? 

    ○ なんでAndroid開発をやるのか? 

    ■ Androidの価値を個人的に答えを持っておきたい 

    ○ 技術のなかで一つの選択肢 


    View Slide

  16. やっている(いきたい)こと

    ● Android開発コミュニティへの参加・貢献

    ○ 自分のためとそもそもの人口を増やすため 

    ■ 結構大事なんじゃないかなぁという最近のお気持ち 


    ● 間口の広げ

    ○ 社内のAndroid_Exampleを作る 

    ■ JetPackライブラリを使ったAndroid例 

    ○ 社内のtech共有会(主にAndroid開発者以外とのペアプロ・モブプロ)をしていく 

    ○ 止まりがち🥺


    ● 他の分野を知る

    ○ iOS / Server / Front / MultiPlatform 


    View Slide

  17. END


    View Slide