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
910
ベストイノベーティブアプリを支える開発体制
Ryosuke Horie
January 24, 2017
Tweet
Share
More Decks by Ryosuke Horie
See All by Ryosuke Horie
GitHub Copilotは開発者の生産性をどれだけ上げるのか?ZOZOでの全社導入とその効果 / How Much Does GitHub Copilot Improve Developer Productivity? The Company-wide Implementation and Its Effects at ZOZO
horie1024
35
23k
ZOZOTOWNにおける開発生産性向上に関する取り組み / Initiatives to Improve Development Productivity at ZOZOTOWN
horie1024
8
5.9k
How does the Relay connect Android app development and Design?
horie1024
2
1.8k
既存画面の Jetpack Composeでの書き換え: FAANSでの事例紹介 / Case study of rewriting existing screens with Jetpack Compose
horie1024
0
1.6k
スキルマップを作った話 / Create a skills map
horie1024
3
4.4k
Miroを使った開発効率向上のための取り組み / Using Miro Efforts to Improve Development Efficiency
horie1024
0
2.3k
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
ZOZOTOWNでの Dagger Hilt対応について/Migration to Dagger Hilt at ZOZOTOWN.
horie1024
1
2k
Other Decks in Programming
See All in Programming
CSC509 Lecture 11
javiergs
PRO
0
180
CSC509 Lecture 12
javiergs
PRO
0
160
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.5k
OnlineTestConf: Test Automation Friend or Foe
maaretp
0
110
色々なIaCツールを実際に触って比較してみる
iriikeita
0
330
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.3k
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
350
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
920
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
4
640
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
910
みんなでプロポーザルを書いてみた
yuriko1211
0
260
Realtime API 入門
riofujimon
0
150
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
A Tale of Four Properties
chriscoyier
156
23k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Bash Introduction
62gerente
608
210k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
Designing Experiences People Love
moore
138
23k
Designing for humans not robots
tammielis
250
25k
How to train your dragon (web standard)
notwaldorf
88
5.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
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!
͋Γ͕ͱ͏͍͟͝·ͨ͠