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
Ryosuke Horie
January 24, 2017
Programming
0
930
ベストイノベーティブアプリを支える開発体制
Ryosuke Horie
January 24, 2017
Tweet
Share
More Decks by Ryosuke Horie
See All by Ryosuke Horie
Miro × ZOZO ZOZOのMiro活用事例紹介
horie1024
0
2.2k
GitHub Copilotは開発者の生産性をどれだけ上げるのか?ZOZOでの全社導入とその効果 / How Much Does GitHub Copilot Improve Developer Productivity? The Company-wide Implementation and Its Effects at ZOZO
horie1024
36
25k
ZOZOTOWNにおける開発生産性向上に関する取り組み / Initiatives to Improve Development Productivity at ZOZOTOWN
horie1024
8
6.2k
How does the Relay connect Android app development and Design?
horie1024
2
1.9k
既存画面の Jetpack Composeでの書き換え: FAANSでの事例紹介 / Case study of rewriting existing screens with Jetpack Compose
horie1024
0
1.7k
スキルマップを作った話 / Create a skills map
horie1024
3
4.5k
Miroを使った開発効率向上のための取り組み / Using Miro Efforts to Improve Development Efficiency
horie1024
0
2.4k
ktlintカスタムルールのパッケージ化と再利用/Package and reuse ktlint custom rules
horie1024
1
1.1k
Jetpack Benchmarkでの ViewのInflateパフォーマンスの可視化と改善 / The Jetpack Benchmark. Visualizing and improving View Inflate performance
horie1024
3
1.1k
Other Decks in Programming
See All in Programming
From the Wild into the Clouds - Laravel Meetup Talk
neverything
0
170
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
9
3.2k
技術を改善し続ける
gumioji
0
180
JAWS Days 2025のインフラ
komakichi
1
130
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
Drawing Heighway’s Dragon- Recursive Function Rewrite- From Imperative Style in Pascal 64 To Functional Style in Scala 3
philipschwarz
PRO
0
110
Better Code Design in PHP
afilina
0
180
Honoとフロントエンドの 型安全性について
yodaka
7
1.5k
Boos Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
500
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.1k
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
290
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.5k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
520
Embracing the Ebb and Flow
colly
84
4.6k
The Invisible Side of Design
smashingmag
299
50k
Adopting Sorbet at Scale
ufuk
75
9.2k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Code Review Best Practice
trishagee
67
18k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Site-Speed That Sticks
csswizardry
4
410
Transcript
ϕετΠϊϕʔςΟϒΞϓϦΛ ࢧ͑Δ։ൃମ੍ App Talk Night by Relux Ryosuke Horie VASILY,
inc.
ࣗݾհ @Horie1024 ▸ ງߐ ྄հ / Ryosuke Horie ▸ લ৬:
ϙʔλϧαΠτ Web / ΞϓϦ։ൃ ▸ 2લʹVASILYʹத్ೖࣾ ▸ ΞϓϦ։ൃ෦ AndroidνʔϜ ▸ Twitter GitHub Qiita: @Horie1024
ձࣾհ ▸ ձ໊ࣾ: גࣜձࣾVASILY / VASILY, inc. ▸ ॴࡏ: ౦ژ۠ޒా2ஸ23-5
δχΞεϏε 6F ▸ ैۀһ: 35໊ ▸ ΤϯδχΞ: 16໊
࣍ ▸ iQON(ΞΠίϯ)ʹ͍ͭͯ ▸ ։ൃମ੍ʹ͍ͭͯ ▸ ։ൃϑϩʔʹ͍ͭͯ
2016 Google Play ϕετΠϊϕʔςΟϒΞϓϦ େड
▸ ݟ͔ͭΔɺങ͑ΔɺஷΊΒΕΔʮiQON(ΞΠίϯ)ʯ ▸ ձһ250ສ ▸ ΞΠςϜ૯1200ສҎ্ ▸ 300Ҏ্ͷECαΠτͷσʔλΛܝࡌ ͓͠ΌΕ͕ݟ͔ͭΔɺཉ͍͕͠ങ͑Δ
▸ Ϣʔβʔ͕࡞͢Δʮίʔσʯ ▸ iQONܝࡌΞΠςϜͰϢʔβʔ͕ࣗ༝ʹ࡞ ▸ ߘ 250ສҎ্ ཉ͍͠ΞΠςϜ͕ ʮݟ͔ͭΔʯ
▸ Ϣʔβʔ͕࡞͢Δʮίʔσʯ ▸ iQONܝࡌΞΠςϜͰϢʔβʔ͕ࣗ༝ʹ࡞ ▸ ߘ 250ສҎ্ ▸ ΞΠςϜݕࡧ ▸
༷ʑͳ݅ͰݕࡧՄೳ ཉ͍͠ΞΠςϜ͕ ʮݟ͔ͭΔʯ
▸ ػցֶशʹΑΔʮݟ͔ͭΔʯମݧͷ্ ▸ ΞΠςϜϨίϝϯυΤϯδϯʮfor Youʯ ▸ Ϣʔβʔͷߦಈཤྺ͔ΒΞΠςϜΛຖਪન ཉ͍͠ΞΠςϜ͕ ʮݟ͔ͭΔʯ
▸ ػցֶशʹΑΔʮݟ͔ͭΔʯମݧͷ্ ▸ ΞΠςϜϨίϝϯυΤϯδϯʮfor Youʯ ▸ Ϣʔβʔͷߦಈཤྺ͔ΒΞΠςϜΛຖਪન ▸ ྨࣅΞΠςϜͷݕग़ͱදࣔ ▸
ؾʹͳΔΞΠςϜʹࣅͨΞΠςϜΛϢʔβʔʹఏࣔ ▸ ݁Ռ: ΞΠςϜӾཡ4ഒʹ ཉ͍͠ΞΠςϜ͕ ʮݟ͔ͭΔʯ
▸ ܝࡌΞΠςϜશ࣮ͯࡍʹߪೖՄೳ ▸ ϒϥϯυɺΞΠςϜΛLIKE͢Δ͜ͱͰϓογϡ௨ ▸ ৽ணΞΠςϜ௨ ▸ ηʔϧ௨ ▸ ࡏݿ௨
ཉ͍͠ΞΠςϜ͕ ʮങ͑Δʯ
▸ ΞΠςϜͷLIKE ▸ ཉ͍͠ΞΠςϜΛLIKE͠ϚΠϖʔδ͔Β֬ೝ ▸ ʮίϨΫγϣϯʯػೳ ▸ LIKEͨ͠ΞΠςϜΛࣗ༝ʹྨ ▸ ෳͷίϨΫγϣϯΛ࡞Մೳ
ཉ͍͠ΞΠςϜ͕ ʮஷΊΒΕΔʯ
։ൃମ੍ iQONΛࢧ͑Δ
։ൃମ੍ ▸ iQON༷ʑͳཁૉ͔Β࡞ΒΕ͍ͯΔ ▸ iOSɺAndroidΞϓϦɺAPIɺΠϯϑϥɺΫϩʔϥʔɺσʔλੳج൫… ▸ ΞϓϦΤϯδχΞ͚ͩͰ࡞Εͳ͍ ▸ ༷ʑͳνʔϜ͕ڠྗ͢Δ͜ͱ͕ඞཁ
ΞϓϦ։ൃʹؔΘΔνʔϜ ▸ σβΠϯ෦ ▸ ΞϓϦ։ൃ෦ ▸ ։ൃ෦ ▸ API ▸
Ϋϩʔϥ ▸ Πϯϑϥ ▸ σʔλαΠΤϯε
։ൃମ੍ σβΠϯ෦ ▸ WebɺiOSɺAndroid ͦͷଞσβΠϯ͕ؔ͢Δ෦ͯ͢ ▸ iOSɺAndroidɺOSผͰઐͷσβΠφʔ ▸ ֤OSͷσβΠϯΨΠυϥΠϯʹ४ڌ ▸
iQONಠࣗͷσβΠϯΨΠυϥΠϯΛ࡞
։ൃମ੍ ΞϓϦ։ൃ෦ ▸ iOSɺAndroidΞϓϦ։ൃ ▸ iQONΛؚΉΞϓϦ։ൃશൠΛ୲ ▸ ։ൃݴޠ ▸ iOS
▸ Swift 3.0.2 ▸ Android ▸ Java, Kotlin
։ൃମ੍ ։ൃ෦ (όοΫΤϯυ) ▸ ج൫ͱͳΔγεςϜͷݚڀͱ։ൃ ▸ API ▸ Ϋϩʔϥʔ ▸
Πϯϑϥ ▸ σʔλαΠΤϯε
։ൃମ੍ iQONͷٕज़ج൫ ▸ API ▸ ͋ΒΏΔϑΝογϣϯใΛ֨ೲ ▸ MonolithicͳAPI ▸ Ұ෦ϚΠΫϩαʔϏεʹҠߦத
։ൃମ੍ iQONͷٕज़ج൫ ▸ Ϋϩʔϥʔ ▸ 300Ҏ্ͷECαΠτΛΫϩʔϧ ▸ ஈɺࣸਅɺઆ໌ɺࡏݿͷ ▸ σΟʔϓϥʔχϯάʹΑΔΞΠςϜͷࣗಈΧςΰϦྨ
▸ ΞΠςϜͷը૾ఆ ▸ ฏஔ͖͔ɺਓ͕ண͍ͯΔ͔ɺτϧιʔ͔ ▸ ฏஔ͖͞ΕͨΞΠςϜͷ߹ʹࣗಈͰനൈ͖ॲཧ
։ൃମ੍ iQONͷٕज़ج൫ ▸ Πϯϑϥ ▸ ҆ఆͨ͠αʔϏεͷఏڙ ▸ σʔλੳج൫ ▸ AWSɾGCPϚϧνΫϥυ
▸ Ϋϩʔϥʔج൫ ▸ ෛՙʹԠͯ͡Φʔτεέʔϧ
։ൃମ੍ iQONͷٕज़ج൫ ▸ σʔλαΠΤϯε ▸ ͋ΒΏΔϩάΛBigQueryʹ ▸ iQONͷେͳσʔλͷੳ ▸ ػցֶशɾσΟʔϓϥʔχϯά
։ൃମ੍ ▸ ֤νʔϜͰڠྗ͠ͳ͕ΒਐΊΔ ▸ ࣮ࡍͲ͏։ൃΛਐΊ͍ͯ͘ͷ͔ʁ ▸ ΞΠςϜݕࡧͷ࣮Λྫʹ։ൃϑϩʔΛݟ͍ͯ͘
։ൃϑϩʔ iQONΛࢧ͑Δ
։ൃϑϩʔ ։ൃͷਐΊํ ▸ ࣮ࡍʹ։ൃΛͲ͏ਐΊΔͷ͔ʁ ▸ σβΠϯɺΞϓϦ։ൃɺ։ൃͰνʔϜΛΉ ▸ ΩοΫΦϑMTGΛߦ͍༷Λݕ౼ ▸ QiitaνʔϜͰϓϩδΣΫτΛ࡞
▸ ༷ɺઃܭɺεέδϡʔϧɺݟੵΓɺ֤छݕূ ▸ શͯ·ͱΊΔ ▸ KPI͓Αͼܭଌ༷ܾఆ
։ൃϑϩʔ UIઃܭ ▸ ֤OSͰͷϢʔβʔମݧΛ౿·͑ͨUIͷઃܭ ▸ SketchҠߦத ▸ ༷͔ΒϞοΫΛ࡞͠inVisionͰνʔϜશମల։ ▸ ϞοΫͰڍಈ֬ೝɺϑΟʔυόοΫ
▸ ༷ͷ࿙Εෆ໌૬ஊɺमਖ਼
։ൃϑϩʔ APIͷ࣮ ▸ ΞϓϦνʔϜͱ։ൃ(όοΫΤϯυνʔϜ)͕ڞಉͰAPIΛઃܭ ▸ ΞϓϦνʔϜinVisonΛݩʹඞཁͳσʔλΛચ͍ग़͢ ▸ όοΫΤϯυνʔϜ͕APIΛઃܭ ▸ ಉ࣌ʹApiaryͰAPIͷϞοΫΛ࡞
▸ ΞϓϦଆApiaryͷϞοΫΛར༻͠։ൃ ▸ APIͷσϓϩΠ͕ྃޙࠩ͠ସ͑
։ൃϑϩʔ ΞϓϦͷ࣮ ▸ σβΠϯΨΠυϥΠϯʹԊ࣮ͬͨ ▸ iOS Human Interface Guidelines ▸
Material design guidelines ▸ iQON design guidelines ▸ OSผʹ࡞ ▸ http://tech.vasily.jp/entry/design_guideline
None
None
։ൃϑϩʔ ΞϓϦ࣮ - ANDROID ▸ 8dpͷGridΛϕʔεʹͨ͠σβΠϯ ▸ Material CueͰ֬ೝ͠ͳ͕Β࣮ ▸
8dpͷάϦουΛΦʔόʔϨΠ ▸ σβΠϯͷ֬ೝ͕༰қʹ
։ൃϑϩʔ ࣾQA ▸ ϦϦʔεલʹ࣮ࢪ ▸ QAγʔτʹهೖ ▸ ४උࣗಈԽ ▸ ࢦఠʹରԠ͠ͳ͚ΕϦϦʔεෆՄ
▸ QAޙϦϦʔε
·ͱΊ
·ͱΊ ▸ iQON༷ʑͳཁૉ͔Β࡞ΒΕ͍ͯΔ ▸ ։ൃʹؔΘΔ֤νʔϜͷྗͱڠྗ͕ͳ͚ΕiQON࡞Εͳ͍ ▸ ΞϓϦνʔϜͷͩ͜ΘΓͱ࣮ ▸ σβΠφʔʹΑΔ͍͍͢ମݧͱUIͷઃܭ ▸
όοΫΤϯυνʔϜʹΑΔڧݻͰ҆ఆͨ͠ج൫ͷߏங ▸ ϕετΠϊϕʔςΟϒΞϓϦେͷडશһͷྗͷ݁Ռ
·ͱΊ ৽͍͠औΓΈ ▸ σΟʔϓϥʔχϯάͷԠ༻ ▸ ΑΓײతͳΞΠςϜͷݕࡧ ▸ ࣸਅ͔ΒͷΞΠςϜݕग़ͱݕࡧ ▸ ଐੑΛ༩͑ͨը૾ΫΤϦʹΑΔݕࡧ
▸ ྫ: ͜ͷγϧΤοτͰ͍ϫϯϐʔε͕ཉ͍͠
·ͱΊ ▸ iQON͍ͯ͠ΔΑ͏ʹݟ͑Δ͕·ͩ·ͩະ ▸ ΑΓศརʹ͑ΔΑ͏վળ͍͖͍ͯͨ͠ ▸ ࠓޙiQONҎ֎ͷࣄۀiQONͰഓٕͬͨज़Ͱઓ͍ͯ͘͠
We’re Hiring!
͋Γ͕ͱ͏͍͟͝·ͨ͠