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
複業メンバーと共に創るカウシェ
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Katsuya Kato
September 29, 2022
Technology
780
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
複業メンバーと共に創るカウシェ
【 iOS祭り 】ヒットプロダクトを開発!iOSエンジニアが語る自社プロダクト開発の難しさ
Katsuya Kato
September 29, 2022
More Decks by Katsuya Kato
See All by Katsuya Kato
AndroidThingsとFirebaseで始めるホームセキュリティ / Android Things Home Security
katsuyax
2
5.6k
WWDCでこの先生きのこるには / WWDC2017
katsuyax
0
110
watchOS3の新機能 / watchos3
katsuyax
0
110
Firebaseを使ってみた
katsuyax
0
58
iPhone(iOS)のアプリ内課金 / in app purchase
katsuyax
0
120
Other Decks in Technology
See All in Technology
【CEDEC2026】『Relink』を拡張せよ - 『GRANBLUE FANTASY: Relink - Endless Ragnarok』の開発速度と品質を守るCI運用
cygames
PRO
0
140
名古屋の市バスGTFS-JPデータ×スガキヤ 最寄りバス停検索をAmazon ElastiCache Serverless for Valkeyで最適化する
usanchuu
1
440
Retriever と Reranker、結局どうする?
kazuaki
3
700
モダンフロントエンド 開発研修
recruitengineers
PRO
3
540
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.2k
【CEDEC2026】次世代デジタルカードゲームのサーバー設計と運用 〜『Shadowverse: Worlds Beyond』の舞台裏~
cygames
PRO
1
950
SmartHR Engineering Team Deck
smarthr
0
440
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.1k
QAエンジニア起点で進める、SmartHRにおける信頼性向上について
kaomi_wombat
1
120
JavaScript 研修 (2026)
recruitengineers
PRO
1
440
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
Featured
See All Featured
Site-Speed That Sticks
csswizardry
13
1.4k
A designer walks into a library…
pauljervisheath
211
24k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
290
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Done Done
chrislema
186
16k
Exploring anti-patterns in Rails
aemeredith
3
460
The Mindset for Success: Future Career Progression
greggifford
PRO
0
440
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Transcript
© KAUCHE, Inc. 複業メンバーと共に創るカウシェ Katsuya Kato
© KAUCHE, Inc. 2 目次 • 自己紹介 • カウシェのサービス、組織の特徴 •
複業メンバーと共に創るときの課題 • 対策 • まとめ
© KAUCHE, Inc. 自己紹介 • モバイルアプリエンジニア ◦ iOS/Androidともに黎明期からアプリ開発を行う ◦ 前職ではUnityでの開発も行う
◦ Flutterも少々 • 2022年9月に一人目の正社員iOSエンジニアとして入社 ◦ 入社エントリ ◦ 実装はもちろんのこと今まで他のメンバーに助けてもらっていたところ を徐々に整えていっている 3
© KAUCHE, Inc. カウシェの紹介 4
© KAUCHE, Inc. 5 カウシェの紹介
© KAUCHE, Inc. カウシェの組織の特徴 • 複業メンバーが多い ◦ 自ら働く環境を楽しみ、熱量を最大化する「自律・自燃 型組織」を目指し、様々な雇用形態のメンバーが活躍 •
創業当初からスピードを出すために 複業メンバーに助けてもらっている • 複業から正社員になるメンバーもいる • 先月(2022年8月)まで 正社員iOSエンジニアが一人もいなかった ※複業にはフリーランスも含む 6 ※2022年8月時点
© KAUCHE, Inc. 7 複業メンバーと共に創るときの課題
© KAUCHE, Inc. 8 複業メンバーと共に創るときの課題 • 複業メンバーの稼働時間が限られている • 非同期コミュニケーションが主体になってしまう
© KAUCHE, Inc. 9 対策 • 複業メンバーのアウトプットを最大化できるよう環境を整える • 開発の助けになるドキュメントを用意する •
開発効率を上げるDesignKit、MockKitを準備する
© KAUCHE, Inc. 10 複業メンバーのアウトプットを最大化できるよう環境を整える
© KAUCHE, Inc. 11 複業メンバーのアウトプットを最大化できるよう環境を整える • M1 MaxなMacを貸与 ◦ ただしフルタイムに近い稼働に限る
◦ ビルド時間、Xcodeのプレビュー表示などを少しでも速く、軽く • 複業でも自分事にしてもらえるよう会社の情報をオープンにする ◦ 自律・自燃を目指している ◦ 会社に関する情報は全て Notion上で公開されており 複業メンバーも閲覧可能
© KAUCHE, Inc. 12 開発の助けになるドキュメントを用意する
© KAUCHE, Inc. 13 開発の助けになるドキュメントを用意する • 些細なことでもNotionに記載する ◦ iOSチームとしての方針を周知する ◦
PRで書いたTipsも他の人が気が付かないと勿体ない ◦ Slackでの議論で終わると流れてそのタイミングで居なかった人が見逃 してしまう ◦ 新規メンバーのオンボーディングにも役立つ
© KAUCHE, Inc. 14 DesignKit / MockKit
© KAUCHE, Inc. 15 カウシェのモジュール構成 ※一部UIKitもあるが大半がSwiftUIで作られている
© KAUCHE, Inc. 16 カウシェのモジュール構成 ※一部UIKitもあるが大半がSwiftUIで作られている
© KAUCHE, Inc. 17 DesignKit
© KAUCHE, Inc. 18 DesignKit • DesignKitとは ◦ カウシェのデザインコンポーネントを保持 ◦
Colors、Styles、UI Componentsを有する • 目的 ◦ 開発の効率化 ◦ プレビューでどのようなコンポーネントかすぐに分かる ▪ 何がすでにあるかというコミュニケーションが省ける ▪ DesignKitのコンポーネントの一覧を Notionなどに作成することや、 UIを確認するアプリを作ることも検討したが費用対効果を考えてプレビューだけ にした
© KAUCHE, Inc. 19 DesignKit
© KAUCHE, Inc. 20 MockKit
© KAUCHE, Inc. 21 MockKit • MockKitとは ◦ カウシェのモックデータを定義する ◦
APIのレスポンス等をモックする • 目的 ◦ モックデータをプレビュー、 UnitTestで共用して効率化 ◦ それぞれで用意すると似たようなデータが重複し、開発効率も悪くなる ◦ プロダクションコードから切り離す • 色んなパターンのモックデータを用意することでプレビューで 複数パターンの表示を確認できる ◦ UI仕様の把握をXcode上でプレビューで確認できる
© KAUCHE, Inc. 22 MockKit
© KAUCHE, Inc. 23 まとめ • 課題 ◦ 複業メンバーの稼働時間が限られている ◦
非同期コミュニケーションが主体になってしまう • 対策 ◦ ドキュメントやXcodeのプレビューなどの仕組みを使って仕様把握やコミュニケーションの効率化 を図った
© KAUCHE, Inc. 24 https://enjoy-working.kauche.com/product