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
Natsuki Akama
June 09, 2015
Technology
72
29k
日経電子版アプリ内製開発の舞台裏
「アプリ開発プロジェクト成功への道〜iOS/Androidアプリ開発者勉強会Vol.1」 で発表したスライドです。
http://connpass.com/event/14952/
Natsuki Akama
June 09, 2015
Tweet
Share
More Decks by Natsuki Akama
See All by Natsuki Akama
エンジニアがプロダクトグロースのためにやったこと
natsuz
1
910
UI設計で最初にやること: 日経電子版アプリ開発で学んだちょっとした知見
natsuz
0
580
日経にCircleCIを導入してみた
natsuz
15
4.8k
Other Decks in Technology
See All in Technology
コンテナ・K8s研修 - 後半 Kubernetes 基礎&ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
1
120
AWSサービスメニュー開発をしていてAWSを好きだ!と感じた瞬間
toru_kubota
0
130
GoとアクターモデルでES+CQRSを実践! / proto_actor_es_cqrs
ytake
1
150
累計ダウンロード数1億8000万を超えるアプリケーションプラットフォームのレガシーシステム脱却とモダン化への道
kmitsuhashi
0
120
AIエージェントを現場に導入する目線とは
masahiro_nishimi
1
1.5k
Datadog Cloud SIEMを使ってAWS環境の脅威を可視化した話/lifeistech-datadog-cloud-siem
gidajun
0
480
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
0
710
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.3k
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
テスト・設計研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
Featured
See All Featured
A Philosophy of Restraint
colly
200
16k
Automating Front-end Workflow
addyosmani
1362
200k
Code Reviewing Like a Champion
maltzj
517
39k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
129
32k
BBQ
matthewcrist
82
9k
Side Projects
sachag
451
42k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
Docker and Python
trallard
37
2.9k
How to name files
jennybc
67
96k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
13
430
Reflections from 52 weeks, 52 projects
jeffersonlam
346
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
224
21k
Transcript
ܦిࢠ൛ΞϓϦ։ൃͷ ཪ ؒՆथɹ
ࣗݾհ w ؒՆथ w ຊܦࡁ৽ฉࣾɹσδλϧฤہ w ৽ଔೖࣾ w ిࢠ൛ΞϓϦʢJ04ʣΛ։ൃ
ࣗݾհ
ܦ৽ฉɹσδλϧฤہ ܦ৽ฉɹσδλϧฤہ αʔϏε։ൃνʔϜ ਓ ΞϓϦ։ൃνʔϜ J04 1.ɿਓ σΟϨΫλʔ݉σβΠφʔɿਓ ΤϯδχΞɿਓ
ిࢠ൛ΞϓϦͷ͝հ
ຊ͓͢Δ༰ w Խͷ͖͔͚ͬ w ܦ͕։ൃͰΞϓϦϦχϡʔΞϧʹऔΓΜͩΘ͚ w ϦχϡʔΞϧϓϩηε w ܦݧθϩͷνʔϜ͕Ͳ͏ͬͯ։ൃΛਐΊ͔ͨ
ΞδΣϯμ
Խͷ͖͔͚ͬ ܦ͕։ൃͰΞϓϦϦχϡʔΞϧʹऔΓΜͩΘ͚
৽ػೳΛՃ͢Δ߹ͷ։ൃεέδϡʔϧʢաڈʣ ༷ɾཁ݅ఆٛॻͷ࡞ ࣾઆ໌ ։ൃاۀͱଧͪ߹Θͤɺൃॻͷ࡞ ςετέʔε࡞
࣮ ड͚ೖΕςετ ਃ Խͷ͖͔͚ͬ ࠷Ͱ̍िؒ ࠷Ͱ̍िؒ
։ൃظؒ̎िؒͷՌྫ Խͷ͖͔͚ͬ
Խͷ͖͔͚ͬ ϦϦʔεલ ϦϦʔεޙ
Խͷ͖͔͚ͬ ϦϦʔεલ ϦϦʔεޙ
ϘλϯΛ̍ͭՃ͢Δ͚ͩͰɺ ̎िؒͷ։ൃظؒͱɺेສԁͷίετ Խͷ͖͔͚ͬ
ʮૉૣ͍ʯ͕αʔϏεఏڙ͕ॏཁ w ͍αΠΫϧͰαʔϏεΛϦϦʔε͠ɺૉૣ͘ݕূɾमਖ਼͠ ͳ͍ͱɺڝ߹ͷొόάʹΑΓϢʔβʔମݧ͕͙͢ʹݮগ Խͷ͖͔͚ͬ ϦϦʔε ϦϦʔε ϦϦʔε ϦϦʔε
ϦϦʔε
ΥʔλʔϑΥʔϧ։ൃͰɺ ిࢠ൛αʔϏεͷૉૣ͍վળ͕͍͠ w ૉૣ͍αʔϏεఏڙ͕͍͠ w ٸͳ༷มߋʹରԠͰ͖ͳ͍ w ٕज़ϊϋ͕ͨ·Βͳ͍ Խͷ͖͔͚ͬ
*DPONBEFCZ"OUPO4BQVUSP GSPNXXXqBUJDPODPN
ԽʹΑΓૉૣ͘ܧଓతͳαʔϏεվળ w ૉૣ͍αʔϏεఏڙ w 1%$"Λૣ͘ճ͢ w औҾίετΛ࠷খԽ w ٕज़ϊϋΛੵ
Խͷ͖͔͚ͬ *DPONBEFCZ"OUPO4BQVUSP GSPNXXXqBUJDPODPN
ϑϩϯτͷ6*ɾ69Λ։ൃ͢Δମ੍Խ w ϢʔβʔʹͱͬͯՁ͋Δମݧͱʁ w ➜هऀ͕ॻ͘ίϯςϯπ w ➜ഔମͱͳΔΞϓϦɺ ϒϥβʔͰͷදݱ Խͷ͖͔͚ͬ
ωΠςΟϒΞϓϦΛ։ൃʂ w ϞόΠϧΛ·ͣԽʢϞόΠϧXFCͷܦݧ༗ʣ w ిࢠ൛ΞϓϦͷ6*ઃܭ࣌ͷ·· Խͷ͖͔͚ͬ
ϦχϡʔΞϧϓϩηε ܦݧθϩͷνʔϜ͕Ͳ͏ͬͯ։ൃΛਐΊ͔ͨ
ϦϦʔε·ͰͷྲྀΕ ݄ɿվળϓϩδΣΫτ࢝ಈɺ 4MBDLɾ2JJUB5FBNಋೖ ݄ɿOBPZB͞ΜͷϓϧϦΫ։ൃϋϯζΦϯɺ (JUIVCҠߦ ݄ɿOBPZB͞ΜͷςετϋϯζΦϯ ݄ɿϓϩτλΠϐϯά ݄ɿΞϓϦ։ൃελʔτ
݄ɿਃ ݄ɿϦϦʔε ϦχϡʔΞϧϓϩηε ࠓͷ༰
Խ͢ΔͨΊʹ࠷ॳʹͬͨ͜ͱ ϦχϡʔΞϧϓϩηε
ٕज़ސͷOBPZB͞Μͱࣾମ੍ͮ͘Γ w ։ൃϓϩηεվળνʔϜͷ্ཱͪ͛ w ࣾͰ։ൃ͍͢͠ڥΛͭ͘Δ w ➔ʮૉૣ͍ʯ։ൃ͕Ͱ͖Δମ੍ͮ͘Γ ϦχϡʔΞϧϓϩηε
·ͣ։ൃͷϘτϧωοΫΛચ͍ग़͠ w ձ͕ٞଟ͍ w ϨΨγʔͳ։ൃڥ ϦχϡʔΞϧϓϩηε
͋Δϝϯόʔͷ̍िؒͷ༧ఆ w ͷׂʙׂ͕ձٞ ϦχϡʔΞϧϓϩηε ࣌ ࣌ ݄ Ր ਫ
ۚ
ϨΨγʔͳ։ൃڥ w ίʔυཧɿόϥόϥʢ(JUIVCɺ4VCWFSTJPOɺͳ͠ʣ w ίʔυϨϏϡʔɿͳ͠ w ςετɿखಈ w σϓϩΠɿखಈ
ϦχϡʔΞϧϓϩηε
։ൃϓϩηεվળνʔϜͰϘτϧωοΫΛղܾ ϦχϡʔΞϧϓϩηε
ձٞͷݮ w ձٞΛ͠ͳͯ͘ɺ্ख͘ใڞ༗͕Ͱ͖ΔΈͮ͘Γ w ேձɺৼΓฦΓͰʑͷใڞ༗ w 2JJUB5FBNΛಋೖ w ேձɺৼΓฦΓͷ༰ϦϦʔε༧ఆͳͲΛߘ
w 4MBDLΛಋೖ w 2JJUB5FBNͷߘΛ௨ ϦχϡʔΞϧϓϩηε
Ϟμϯͳ։ൃڥͮ͘Γ w ίʔυཧ(JUIVCʹ౷Ұ wϓϧϦΫ։ൃɺ8*1ʢOBPZB͞ΜͱϋϯζΦϯʣ w ίʔυϨϏϡʔΛ࣮ࢪ w σϓϩΠɺςετΛҰ෦ࣗಈԽʢOBPZB͞ΜͱϋϯζΦϯʣ ϦχϡʔΞϧϓϩηε
มԽͷ߅ ϦχϡʔΞϧϓϩηε 8JLJQFEJB4DSVN
4MBDLɺ2JJUB5FBNΛ୭Θͳ͍ w ͻͨ͢Βॻ͖ଓ͚ͯڭ w ࣌ʹڧ੍తʹ wΫϩʔζυͳจԽɹ➜ɹΦʔϓϯͳจԽ ϦχϡʔΞϧϓϩηε
ϦχϡʔΞϧϓϩηε
ϦχϡʔΞϧϓϩηε
(JUIVCͷҠߦ͕ਐ·ͳ͍ w ։ൃϓϩηεվળνʔϜ͕ఆظతʹਐาΛ֬ೝ͠ɺϘτϧ ωοΫ͕͋ΕऔΓআ͘ w ϋϯζΦϯ2JJUB5FBNͰใڞ༗ w ։ൃޮ্͕͕ΔͷΛࣗͰମײͯ͠Β͏ ϦχϡʔΞϧϓϩηε
ϓϧϦΫ։ൃɺ8*1ɺίʔυϨϏϡʔ w ਐḿཧɺใڞ༗͕ίʔυϕʔεʹͳΔ w ίϛϡχέʔγϣϯίετݮ w ➔͍͍ͪͪਐาใࠂ͠ͳͯ͘ϓϧϦΫΛݟͯΒ͑ऴྃ w ίϯϑϦΫτࢭʢJ04Ͱಛʹʣ
w ษڧ ϦχϡʔΞϧϓϩηε
ࣗಈԽ w (JUIVCʹϓογϡͨ͠Βɺ$JSDMF$*ͰϏϧυˍςετ w ςετ͕ޭͨ͠Β'BCSJDΛͬͯࣾ w ➜มߋʹର͢Δ৺ཧతෆ҆Λղফ w ➜ΤϯδχΞҎ֎ʹΞϓϦΛ͢Δͱ͖ɺख࡞ۀ͔Β
ࣗಈʹ ϦχϡʔΞϧϓϩηε
ςετ݁ՌΛ௨ ࣾ Ϋϥογϡ௨ ϦχϡʔΞϧϓϩηε
։ൃ͍͢͠ڥ w ૉૣ͘ಈ͚ΔΈ w ձٞɺϨΨγʔͳڥʢਓྗʣνʔϜͷ։ൃΛ ͘͢ΔཁҼ w ҙࢥܾఆΛૣΊΔ͜ͱॏཁ ϦχϡʔΞϧϓϩηε
5)&(6*-%ͷqBEEJDU͞ΜͱϓϩτλΠϐϯά w ϓϩμΫτͷΠϝʔδΛνʔϜͰڞ༗ w ➜ॳظϑΣʔζͰαʔϏεͷΠϝʔδ͕ݻ·Γɺޙͷҙ ࢥܾఆָ͕ʹ w ➜ϦϦʔεલʹԾઆͷݕূɺमਖ਼͕Ͱ͖Δ ϦχϡʔΞϧϓϩηε
ϦϦʔε ݕূɾमਖ਼ ݕূɾमਖ਼ ϦϦʔε
ϦχϡʔΞϧͷతΛઃఆ w Ϣʔβʔͷཁɾૢ࡞ϩά͔ΒطଘΞϓϦͷΛநग़ w༗ྉձһͷΈɺίϯςϯπ͕গͳ͍ɺૢ࡞ੑ͕ѱ͍ w➜ແྉɾ༗ྉίϯςϯπΛ૿ՃʢैདྷΑΓෳࡶͳ֊ Λදݱʣͤͭͭ͞ɺยखͰշదʹಡΊΔ6*ઃܭ ϦχϡʔΞϧϓϩηε
ϦχϡʔΞϧϓϩηε ϦϦʔεϊʔτΛॻ͘ w σβΠϯϦχϡʔΞϧͷతΛڞ༗ w ࠷ऴΰʔϧɺ,1*Λ໌֬Խɺڞ༗ w ➔֤ʑͷஅͰ࣮Մೳ w
ػೳͷऔࣺબ͕͍͢͠
ϦχϡʔΞϧϓϩηε ϞοΫΞοϓΛ࡞ͬͯࣾϢʔβʔௐࠪ wπʔϧΛͬͯϞοΫΞοϓΛ࡞
ϦχϡʔΞϧϓϩηε άϩʔόϧϝχϡʔͷҐஔ wυϩϫʔϝχϡʔʢ্PSԼɺࠨPSӈʣ wλϒϝχϡʔʢ̍ஈPS̎ஈɺ্PSԼʣ
ϦχϡʔΞϧϓϩηε άϩʔόϧϝχϡʔͷҐஔ w υϩϫʔϝχϡʔʢ্PSԼɺࠨPSӈʣ w λϒϝχϡʔʢ̍ஈPS̎ஈɺ্PSԼʣ wยखͰૢ࡞͍͢͠ wJ04ͷελϯμʔυ wෳࡶͳ֊ߏΛදݱՄೳ
ϦχϡʔΞϧϓϩηε Ұཡͷදࣔํ๏ wάϦουϨΠΞτ wϦετϨΠΞτ
ϦχϡʔΞϧϓϩηε Ұཡͷදࣔํ๏ wάϦουϨΠΞτ wϦετϨΠΞτ wλΠτϧͱࣸਅͷҐஔ͕ݻఆ w➜ࢹઢͷಈઢ͕ཚΕͣɺམͪண͍ͯಡΊΔ
ϦχϡʔΞϧϓϩηε
͊͞ɺ࣮։࢝ ϦχϡʔΞϧϓϩηε
·ͱΊ
࣮Λ࢝ΊΔલʹ w ϢʔβʔʹՁ͋ΔମݧΛఏڙ͢ΔͨΊʹɺ։ൃ͍͢͠ ڥͮ͘Γେ w ૉૣ͘ݕূɾमਖ਼Ͱ͖ΔΈ w ԽɺϞμϯͳ։ൃڥɺϓϩτλΠϐϯά wࣗͨͪͰಈ͔ͳ͍ͱมΘΒͳ͍
w େ෦ݱͷΤϯδχΞ͕ओಋͯ͠ಋೖ ·ͱΊ
એ
ܦిࢠ൛ͰΤϯδχΞΛ࠾༻த wੵۃతʹαʔϏεվળʹऔΓΊΔํ w৽͍ٕ͠ज़Λ͍ͪૣ͘औΓೖΕΒΕΔح৺ͷڧ͍ํ ͝ڵຯ͋ΔํԼهʹ࿈བྷ͍ͩ͘͞ʂ EH@MBC!OFYOJLLFJDPKQ ࠷ޙʹએ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ϦχϡʔΞϧϓϩηε