Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
つよみをいかして!AndroidエンジニアからEMになる
Search
ussy / @sudo5in5k
September 25, 2024
370
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
つよみをいかして!AndroidエンジニアからEMになる
ussy / @sudo5in5k
September 25, 2024
More Decks by ussy / @sudo5in5k
See All by ussy / @sudo5in5k
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
4
19k
「共創型エンジニアリングマネジメント」 の挑戦と実践
sudo5in5k
1
6.3k
開発生産性から振り返るエンジニアリングマネジメントの失敗2選
sudo5in5k
4
1.4k
Kyashモバイルエンジニアのオンボーディング
sudo5in5k
0
560
DIVE INTO CODE DEMODAY 7th
sudo5in5k
0
120
なぜ私はエージェントになったのか
sudo5in5k
0
450
17卒ミートアップ
sudo5in5k
1
210
転職LT#5
sudo5in5k
1
600
エンジニアのためのマーケティング・ブランディング入門
sudo5in5k
2
360
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.6k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
4 Signs Your Business is Dying
shpigford
187
22k
HDC tutorial
michielstock
2
740
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
390
Ruling the World: When Life Gets Gamed
codingconduct
0
280
Transcript
うっしー (牛窪 翔) 2024年9月25日 DroidKaigi.onCompletion { 2024@Online } つよみをいかして! AndroidエンジニアからEMになる
Hi👋 2 うっしー(@sudo5in5k) エンジニアリングマネージャー / 株式会社kubell 「Chatwork」Androidアプリ開発部署のマネジメントを しています。最近は全社のエンジニア組織に対して、 事業及び開発生産性をあげられるような組織・制度設計 に関わることが多いです。
コードを書く時間は減りましたが頭を使って考える時間が 増えました。 好きなJetpack Libraryは「lifecycle」です。
DroidKaigi楽しかったですね🎉🎉🎉 興味のあるセッションはありましたか?
サブトピックタイトルを入れます https://2024.droidkaigi.jp/timetable/9297898c-1d05-49dc-9bdf-6975d848e0ee/ より一部抜粋 パネルトーク
サブトピックタイトルを入れます Android開発以外のAndroid開発経験の活かしどころ https://2024.droidkaigi.jp/timetable/693873/ より一部抜粋
キャリアの悩みは尽きないですよね
私自身カジュアル面談でもAndroidエンジニアの みなさんから • EMになるために何かすることありますか? • これからのキャリアどうするんですか? • Androidエンジニアとして一定慣れてきたけど次 どうしよう といった質問や相談をもらったりします
きょうは Androidアプリエンジニア→EMになるつよみ とAndroidエンジニアのうちからできること をはなします
EMになるにはどういったスキルが必要なんだろう EM向いているか気になる Androidエンジニアのままでもいいだろうか など EMへのキャリアが少しでも気になるひとへ 1意見として参考になれば嬉しいです
01 | Androidエンジニア→EMのつよみ
Android端末のUIを介して ユーザー体験を最大化させるための 意思決定にかかわる スキルを備えていることがつよみ
さまざまなOS・端末・表現方法の考慮が必要 • OS ~15まで (公式のOSもあればメーカー独自にカスタマイズされたOSもある) • 端末 ◦ Androidスマートフォン, タブレット
▪ 通常 orフォールダブル ▪ ノッチorノッチレス ▪ 物理キーボードあり or なし ▪ 3ボタンナビゲーションあり or なし ◦ AndroidTV, AndroidCar, Chromebook, Android Watch など ◦ 端末幅・高さの違い ◦ 解像度の違い • 表現方法 ◦ アプリ ◦ Push通知, ショートカット, Widget など 12
カメラ・センサーも多い • カメラ ◦ 全面・背面 (複数) • センサー ◦ 加速度
◦ 気温 ◦ ジャイロスコープ ◦ 心拍 ◦ 光 ◦ 近接 ◦ 圧力 ◦ 相対湿度 ◦ など、位置情報・BluetoothやNFCなど日常的に使うものも数多くあります 13
動かす・魅せる手段も多くある • View Animation • Animator • ViewPropertyAnimator • Dynamic
Animation • LayoutTransition • Transition • Shared Element Transition (Compose) • 非同期処理時 ◦ スケルトンローディング ◦ placeholder • オンボーディング ◦ ウォークスルー型, ツールチップ型, パーソナライズ型, ダイアログ型 14
よりユーザーにとって使いやすくもできる • ユーザビリティ ◦ アクセシビリティ ◦ Material Designや自社のデザインシステム構築 ◦ UIの情報設計
▪ グルーピング, ラベリング, 配置関係のレイアウト, ナビゲーション ◦ ANR/Crashを極力なくす・起動速度改善などによるユーザーペイン解消 • マーケティングの意思決定 ◦ データログの埋め込みとその結果から仮説検証・効果測定・ABテスト などにつなげる • もっと早く価値のあるものをリリースすることへのcommit ◦ 開発プロセス改善 ◦ アーキテクチャ変更 ◦ CI/CDの改善 ◦ 生産性改善 (Four keysなど) 15
Androidアプリ開発は難しい 高度な知識・スキルの獲得が求められる
ですが
これだけの複雑なことをうまく組み合わせて より良いUI/UXを表現するこだわりを出せるのも Androidエンジニアにしかできません
02 | EMになるうえで Androidエンジニアのうちに できることがないか
視座を高く・視野を広く 20
視座を高く 21 CTO, VPoEなど: ROI・プロダクト事業戦略をふまえ、中長期的な エンジニア組織とその組織が使う技術の意思決定を行う EM: エンジニアが属する部署のピープル・プロジェクト・プロダクトやテ クノロジーマネジメントを通じて短期・中期の部署成果を最大化する テックリード・リーダー:
チーム内の短期・中期の技術的なリードを行う 先頭にたって実装を進めていく、一部チームマネジメントを担う など エンジニア: (リーダーやマネージャーの意図を理解したり・オーダーがく るなどして) 短期のアプリと周辺技術の実装を進めていく ※あくまで目安であり、企業規模や職種の役割によります
視野を広く 22 Android iOS UI/UX P/L, B/S 見積もり 要件定義 採用
要求工学 分析 仮説検証 Agile QA SWOT
考える視座が高いと 23
広く見渡せる(=視野も広くなる) 24
その上で視点を定めて実行へ移す! 25
例: KMP (Kotlin Multiplatform) 導入によるビジネスロジック共通化を検討 • 「Android」の視野を持つ「メンバー」の視座からは ◦ (+) 新しい技術がいけてる!
◦ (+) DroidKaigiでも取り上げられている! ◦ (+) バージョンが安定版だし信頼性もある! ◦ (+) JetBrains最高! ◦ (+) ロジックが共通化できてよさそう! ◦ (+) Kotlinなので学習コストが低い! など... • しかし、「iOS」の視野を持つ「メンバー」の視座からは ◦ (-) KotlinやGradleの学習コストが高い... ◦ (-) 結局Platform独自で書かなきゃいけないこともあったりするのでは?... ◦ (-) 予約語がありRenameを強いられる... などマイナスな意見もあるかもしれません 26
例: KMP (Kotlin Multiplatform) 導入によるビジネスロジック共通化を検討 • モバイルエンジニアをマネジメントしている「EM」の視座からは ◦ コスト ▪
(-) Android, とくにiOSエンジニアの学習コストやリファクタリングコスト ▪ (-) 採用コスト (=要件によっては採用が難しくなるかもしれない) ▪ (+) 仕様差異による手戻りやコミュニケーションコストが削減される ▪ (+) 運用保守の効率化がみこめる ◦ 開発プロセス・組織文化・キャリア形成 など ▪ (-) JetBrains, Kotlinを中長期的に信用できる? ▪ (-) 開発プロセスとして他部署への説明が必要 ▪ (+) リソース効率があがる ▪ (+) エンジニア同士のコミュニケーション・組織組成に寄与 ▪ (+) モバイルエンジニアの新たなキャリア形成の提示 27 など様々な要素を検討しながら中長期的な意思決定する必要があります
例: ではどうすればいい? 28 • 「Android」の視野を持つ「メンバー」の視座から ◦ iOSメンバー・モバイルのEMという視点に移ったうえでKMPを提案をするなら ◦ コスト面の課題に対して、 ▪
以前のベロシティをベースにロジック実装が半分になる際のデリバリーを提示 ▪ OS間実装差異やリソース状況により片方が歩留りになっていたときの状況精査をし リソース効率が向上できることを提示 ◦ 開発プロセス・組織文化・キャリア形成に対して、 ▪ 新しい採用要件の提案、そもそもの採用ターゲットを他部署とすり合わせ ▪ KMPのアーキテクチャ・各PFとの接続をどう果たすか設計方針を提示 ▪ 社内勉強会やオンボーディングなどKMPの走り出しを支援する会議体の設定 ▪ 他社のKMP導入状況とメリット・デメリットをみつつデファクトになりそうか調査 などアクションできるとより前向きにKMP導入がなされるかもしれません ※あくまで1例です
どうやって養えばいい? • ふだんのしごとをあえて別の視座・視野・視点から考える癖をつけてみる • 本・ブログでインプットしたり • 社内の制度を俯瞰してみてみる (=社内として求められるふるまい方が改めてみえてくるかも) ◦ ミッション・ビジョン・バリューなど会社の指針
◦ 評価制度 ◦ 採用 • 社内外問わず人と話してみる ◦ 社内の人と1on1 ◦ 社外勉強会・交流会・カンファレンス ◦ カジュアル面談 • 実践とふりかえり (一番大事) 29
03 | さいごに
正解があるわけではありません 31 • 今回はAndroidエンジニアからEMになるうえで「ユーザー体験を最大化 させるための意思決定にかかわるスキルを備えている」ことがつよみとい う1意見を主張してみました • そのうえで視座・視野・視点を考えてみると自分が獲得したいスキルや能 力を見極められたり、今後キャリアの幅を広げたり、選択肢も増えると思 います
• とはいえ、正解はなく最短ルートがあるわけでもありません ◦ Androidアプリエンジニアとしての現状を不安に思わず、自分の思う ように挑戦をしてもらえたらと思います
自分もまだまだ未熟です 32 • 発表している自分もまだまだ視座が高く、視野が広いとは いえないと思っています • ぜひ色々と意見交換・交流させていただきたいです ◦ カジュアル面談はじめ気軽にお話しましょう ◦
一緒に勉強会しましょう contact