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
shu223
January 06, 2017
Programming
9
11k
シリコンバレーで働くエンジニアと考える、これからのキャリア
オンライン動画学習サービスSchooでの講義資料です。
http://schoo.jp/class/3713
shu223
January 06, 2017
Tweet
Share
More Decks by shu223
See All by shu223
slidify-sample
shu223
1
1.2k
機械学習のブルーオーシャン Core ML by 堤 修一 #iOSDC Japan 2020
shu223
12
5.6k
エンジニアのための発信講座 #4 登壇しよう
shu223
0
120
エンジニアのための発信講座 #3
shu223
0
100
エンジニアのための発信講座 #2
shu223
2
220
エンジニアのための発信講座 #1
shu223
1
910
今こそwatchOS #iosdc
shu223
5
9.8k
Depth in Depth #iOSDC
shu223
4
29k
Metal Acceleratedかどうかを調べる方法〜あなたのアプリのどこでMetalが暗躍しているのか #potatotips
shu223
1
1.6k
Other Decks in Programming
See All in Programming
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
230
命名をリントする
chiroruxx
1
420
fs2-io を試してたらバグを見つけて直した話
chencmd
0
240
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
170
Beyond ORM
77web
7
960
MCP with Cloudflare Workers
yusukebe
2
220
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
260
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
300
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
2
400
[JAWS-UG横浜 #76] イケてるアップデートを宇宙いち早く紹介するよ!
maroon1st
0
480
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
510
110k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Music & Morning Musume
bryan
46
6.2k
A Modern Web Designer's Workflow
chriscoyier
693
190k
GraphQLとの向き合い方2022年版
quramy
44
13k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Docker and Python
trallard
42
3.1k
Building Applications with DynamoDB
mza
91
6.1k
Automating Front-end Workflow
addyosmani
1366
200k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Statistics for Hackers
jakevdp
796
220k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Transcript
γϦίϯόϨʔͰಇ͘ΤϯδχΞ ͱߟ͑Δɺ͜Ε͔ΒͷΩϟϦΞ Fusion, Inc అ मҰ
ຊतۀʹ͍ͭͯ అͷΩϟϦΞͦͷߟ͑ํ͋͘·Ͱࡐͱ͠ ͯɺԿ͔͠Βͷώϯτɺํੑɺ͋Δ͍༐ؾͳ ͲΛಘ͍͚ͯͨͩΕ͍Ͱ͢
ΞδΣϯμ 1. ʮΤϯδχΞͷΩϟϦΞʯʹ͍ͭͯ - ࣗݾհ - అͷΩϟϦΞ؍ - ҙ͍ࣝͯ͠ΔϙΠϯτ 2.
ςʔϚΛݩʹडߨੜࢀՃܕͰΤϯδχΞΩϟϦ Ξஊٛ 3. ࣭ٙԠ
• ࣗݾհ • అͷΩϟϦΞ؍ • ҙ͍ࣝͯ͠ΔϙΠϯτ
• iOSΤϯδχΞ • 38ࡀɺطࠗ • 10݄ΑΓαϯϑϥϯγείࡏॅ - ͨͩ͠ຊʹΑ͘ؼ͖͍ͬͯͯΔ • TwitterGitHubͷID
shu223ʢπʔπʔϛʔʣ • ϒϩάʰOver&Out ͦͷޙʱ
works Music for the Deaf
ΩϟϦΞͷมભ • 2016.10 ʙ Fyusion • 2014 ʙ 2016 ϑϦʔϥϯε
• 2013 ϑϦʔϥϯεʢୈ1࣍ւ֎ࢦʣ • 2010 ʙ 2012 ΧϠοΫ • 2003 ʙ 2009 େاۀࣾһ࣌
ձࣾͷنͷมભ ਓ ਓ ਓ ਓ େاۀ" େاۀ# ΧϠοΫ ϑϦʔϥϯε
'ZVTJPO 10,000 30,000 120 3 1 30
ձࣾͷنͷมભ ਓ ਓ ਓ ਓ େاۀ" େاۀ# ΧϠοΫ ϑϦʔϥϯε
'ZVTJPO 10,000 30,000 120 3 1 30 ͷࠒେاۀࢤ
ձࣾͷنͷมભʢରʣ ਓ ਓ ਓ େاۀ" େاۀ# ΧϠοΫ ϑϦʔϥϯε 'ZVTJPO
10,000 30,000 120 3 1 30
ձࣾͷنͷมભʢରʣ ਓ ਓ ਓ େاۀ" େاۀ# ΧϠοΫ ϑϦʔϥϯε 'ZVTJPO
10,000 30,000 120 3 1 30 ٱʑͷେਓ
ऩೖͷมભ େاۀ" େاۀ# ΧϠοΫ ϑϦʔϥϯε 'ZVTJPO
ऩೖͷมભ େاۀ" େاۀ# ΧϠοΫ ϑϦʔϥϯε 'ZVTJPO ݮ
• ࣗݾհ • అͷΩϟϦΞ؍ • ҙ͍ࣝͯ͠ΔϙΠϯτ
• άϦʔϯΧʔυΛऔಘ͠ɺւ֎ʹҠॅ͍ͨ͠
• άϦʔϯΧʔυΛऔಘ͠ɺւ֎ʹҠॅ͍ͨ͠ !
• άϦʔϯΧʔυΛऔಘ͠ɺւ֎ʹҠॅ͍ͨ͠ • ͍ͣΕىۀ͠ɺੈքΛม͍͑ͨ !
• άϦʔϯΧʔυΛऔಘ͠ɺւ֎ʹҠॅ͍ͨ͠ • ͍ͣΕىۀ͠ɺੈքΛม͍͑ͨ ! !
• άϦʔϯΧʔυΛऔಘ͠ɺւ֎ʹҠॅ͍ͨ͠ • ͍ͣΕىۀ͠ɺੈքΛม͍͑ͨ • ٕज़ͰੈքΛྑ͍ͨ͘͠ ! !
• άϦʔϯΧʔυΛऔಘ͠ɺւ֎ʹҠॅ͍ͨ͠ • ͍ͣΕىۀ͠ɺੈքΛม͍͑ͨ • ٕज़ͰੈքΛྑ͍ͨ͘͠ ! ! !
࣌ྲྀࣗͷڵຯ͕ҠΓมΘΔதͰɺ ͦͷ࣌ʑͰ͓͠Ζ͍ͱࢥ͑Δબࢶ ΛऔΕΔࣗͰ͋Γ͍ͨ
ʢΑ͋͘ΔԠʣ
ʢΑ͋͘ΔԠʣ " ʮ·͊ɺͦΓΌͦ͏Ͱ͢Ͷɾɾɾʯ
͜Ε͕ͳ͔ͳ͔େม
• ಉ͡ఔͷޭͰୡײΛײ͡ΒΕͳ͍ - ͔ͱ͍ͬͯΑΓେ͖͍ޭΛ͠ଓ͚Δͷ؆୯Ͱͳ͍ • ಉ͜͡ͱΛ͍ͬͯΔͱ͖Δ - ΞϓϦΛͭ͘Δ͜ͱ͕ʮແ݅ʹʯָ͍͠ɺͱ͍͏࣌ ͱ͏ʹա͗ͨ -
ւ֎Ͱࣄͯ͠ςϯγϣϯ্͕ͬͯ3Ͱ׳ΕΔ • ৽͍ٕ͠ज़Λ࣌ؒͰϚελʔ͢ΔΑ͏ͳఱ࠽Ͱͳ͍
ʮ͓͠Ζ͕Γଓ͚Δʯ ͷେม
• ࣗݾհ • అͷΩϟϦΞ؍ • ҙ͍ࣝͯ͠ΔϙΠϯτ
ָ͘͠ಇ͖ଓ͚ΔͨΊʹ ҙ͍ࣝͯ͠ΔϙΠϯτ4ͭ 1. ษڧΛࣄʹܨ͛Δ 2. “Searchable”ʹͳΔ 3. ʮڐ༰Ͱ͖ΔϦεΫʯΛΔ 4. Ҿ͖ࡍେࣄ
1. ษڧΛࣄʹܨ͛Δ
໋ɿ৽͍ٕ͠ज़ΛͲ͏ͬͯʹ͚ͭΔ͔ʁ
໋ɿ৽͍ٕ͠ज़ΛͲ͏ͬͯʹ͚ͭΔ͔ʁ • ৽ͨͳܹͷ͋ΔࣄΛ֫ಘ͢ΔͨΊʹɺ৽͍ٕ͠ज़ Λशಘ͢Δඞཁ͕͋Δ
໋ɿ৽͍ٕ͠ज़ΛͲ͏ͬͯʹ͚ͭΔ͔ʁ • ৽ͨͳܹͷ͋ΔࣄΛ֫ಘ͢ΔͨΊʹɺ৽͍ٕ͠ज़ Λशಘ͢Δඞཁ͕͋Δ • ࣌ؒͰϚελʔ͢ΔΑ͏ͳఱ࠽Ͱͳ͍
໋ɿ৽͍ٕ͠ज़ΛͲ͏ͬͯʹ͚ͭΔ͔ʁ • ৽ͨͳܹͷ͋ΔࣄΛ֫ಘ͢ΔͨΊʹɺ৽͍ٕ͠ज़ Λशಘ͢Δඞཁ͕͋Δ • ࣌ؒͰϚελʔ͢ΔΑ͏ͳఱ࠽Ͱͳ͍ • ඞཁʹഭΒΕͯͳ͍ษڧΛܧଓ͢Δ͜ͱ͍͠
10000࣌ؒͷ๏ଇ • ͦͷಓͷτοϓϨϕϧͷεΩϧΛʹ͚ͭΔͨΊʹඞ ཁͳ࣌ؒ • ʹ4࣌ؒͣͭͬͯ25 • ͔ͳΓେม
ʢ࣋ʣ20࣌ؒͷ๏ଇ
ʢ࣋ʣ20࣌ؒͷ๏ଇ • 20࣌ؒɿະܦݧͷਓ͔ΒݟΔͱʮ͍͢͝ʂʯ͍ͬͯ͏ ͙Β͍ͷϨϕϧʹͳΔ
ʢ࣋ʣ20࣌ؒͷ๏ଇ • 20࣌ؒɿະܦݧͷਓ͔ΒݟΔͱʮ͍͢͝ʂʯ͍ͬͯ͏ ͙Β͍ͷϨϕϧʹͳΔ → ࣗͷಘҙྖҬͱΈ߹ΘͤΕɺࣄΛ֫ಘͰ͖Δ
ʢ࣋ʣ20࣌ؒͷ๏ଇ • 20࣌ؒɿະܦݧͷਓ͔ΒݟΔͱʮ͍͢͝ʂʯ͍ͬͯ͏ ͙Β͍ͷϨϕϧʹͳΔ → ࣗͷಘҙྖҬͱΈ߹ΘͤΕɺࣄΛ֫ಘͰ͖Δ • ϑϧλΠϜͰܦݧΛੵΊΔ
ʢ࣋ʣ20࣌ؒͷ๏ଇ • 20࣌ؒɿະܦݧͷਓ͔ΒݟΔͱʮ͍͢͝ʂʯ͍ͬͯ͏ ͙Β͍ͷϨϕϧʹͳΔ → ࣗͷಘҙྖҬͱΈ߹ΘͤΕɺࣄΛ֫ಘͰ͖Δ • ϑϧλΠϜͰܦݧΛੵΊΔ • ࣄ͔ͩΒଓ͚ΒΕΔʂՔ͛Δʂ
Ͳ͏ͬͯษڧΛࣄʹܨ͛Δͷ͔ʁ • ʮԿΛࣔͤࣗʹͦͷࣄ͕·Θͬͯ͘Δ͔ʁʯΛ ߟ͑ͭͭΞτϓοτ͢Δ - ษڧաఔΛϒϩάʹॻ͘ • ʮษڧ͍ͨ͜͠ͱʹؔΘΔࣄʯશྗͰऔΓʹߦ͘ - ීஈਭ࣌ؒΒͳ͍͕ɺ͜͜౿ΜுΓͲ͜Ζ
- ใुʹ͓ۚɹͰͳ͘ɺใुʹ͓ۚʴ࣮ʴεΩϧ
1. ษڧΛࣄʹܨ͛Δ ಠֶΛଓ͚ΔΑΓɺ͓ۚΛՔ͗ͭͭϑϧλΠϜ ͰܦݧΛੵΜͩํ͕ང͔ʹૣ͘ɾ࣮֬ʹ৽͍͠ ٕज़ΛशಘͰ͖Δ
2. “Searchable”ʹͳΔ
໋ɿ͓͠Ζ͍ࣄ͕དྷΔϙδγϣϯʹ͍Δʹʁ
໋ɿ͓͠Ζ͍ࣄ͕དྷΔϙδγϣϯʹ͍Δʹʁ • ٻਓ͕ग़ͨΓɺϓϩμΫτ͕ʹͳΔλΠϛϯάͰ ͔ࣗΒΞΫγϣϯ͢ΔͷͰ͍
໋ɿ͓͠Ζ͍ࣄ͕དྷΔϙδγϣϯʹ͍Δʹʁ • ٻਓ͕ग़ͨΓɺϓϩμΫτ͕ʹͳΔλΠϛϯάͰ ͔ࣗΒΞΫγϣϯ͢ΔͷͰ͍ • ͓͠Ζ͍ਓ͕͓͠Ζ͍͜ͱΛ࢝ΊΔλΠϛϯάͰ Λ͔͚ͯΒ͍͍ͨ
໋ɿ͓͠Ζ͍ࣄ͕དྷΔϙδγϣϯʹ͍Δʹʁ • ٻਓ͕ग़ͨΓɺϓϩμΫτ͕ʹͳΔλΠϛϯάͰ ͔ࣗΒΞΫγϣϯ͢ΔͷͰ͍ • ͓͠Ζ͍ਓ͕͓͠Ζ͍͜ͱΛ࢝ΊΔλΠϛϯάͰ Λ͔͚ͯΒ͍͍ͨ →ʮ͕ࣗԿ͕Ͱ͖ΔਓͰɺԿΛΓ͍ͨਓ͔ʯ Λࣔ͠ɺͦΕΛඞཁͱ͢Δਓʹݟ͚ͭͯΒ͑ ΔΑ͏ʹ͢Δ
Ͳ͜Ͱ͔ࣔ͢ • ϒϩά • ษڧձɺΧϯϑΝϨϯε • ޱίϛʢΓ߹͍ͷհʣ • GitHub
Ͳ͏͔ͬͯࣔ͢ • ʑֶΜٕͩज़TipsΛϒϩάʹॻ͘ - ΛߜΔ - ʮΓ͍ͨ͜ͱʯʮͰ͖Δ͜ͱʯͷ྆ํͷΞϐʔϧʹͳΔ • GitHubͰιʔεΛެ։͢Δ -
ʮΓ͍ͨ͜ͱʯʮͰ͖Δ͜ͱʯͷ྆ํͷΞϐʔϧʹͳΔ - Star͕ྑ͠ѱ͠ΛܾΊΔͷͰͳ͍͕ɺStar͕ଟ͍΄͏͕ ʮݟ͚ͭͯΒ͏ʯνϟϯε૿͑Δ • ʮॻ੶ʯʮߨԋʯͳͲɺઐ֎ͷਓʹڹ͘ʮഩʯΛ͚Δ
2. SearchableʹͳΔ ͓͠Ζ͍ࣄΛ֫ಘ͢ΔͨΊʹɺ͕ࣗʮͰ ͖Δ͜ͱʯʮΓ͍ͨ͜ͱʯΛࣔ͠ɺͦΕΛඞ ཁͱ͢Δਓʹݟ͚ͭͯΒ͑ΔΑ͏ʹ͢Δ
3. ʮڐ༰Ͱ͖ΔϦεΫʯΛΔ
໋ɿٕज़ྗ͚͍ͩٻΊͯ ্ʹ্͕͍ͯΩϦ͕ͳ͍
໋ɿٕज़ྗ͚͍ͩٻΊͯ ্ʹ্͕͍ͯΩϦ͕ͳ͍ • Կ͔ผͷͱ͜ΖͰҧ͍Λग़͍ͨ͠
໋ɿٕज़ྗ͚͍ͩٻΊͯ ্ʹ্͕͍ͯΩϦ͕ͳ͍ • Կ͔ผͷͱ͜ΖͰҧ͍Λग़͍ͨ͠ • ࣗͷܦݧ্ɺͪΐͬͱͨ͠ʮߦಈྗʯͰҙ֎ͳఔ ʹҧ͍͕ग़Δ
໋ɿٕज़ྗ͚͍ͩٻΊͯ ্ʹ্͕͍ͯΩϦ͕ͳ͍ • Կ͔ผͷͱ͜ΖͰҧ͍Λग़͍ͨ͠ • ࣗͷܦݧ্ɺͪΐͬͱͨ͠ʮߦಈྗʯͰҙ֎ͳఔ ʹҧ͍͕ग़Δ • ଞਓͳ͔ͳ͔Βͳ͍ʮϋΠϦεΫɾϋΠϦλʔϯʯ ͳߦಈ͕͋Δͱͯ͠ɺͦͷϦεΫΛʮࣗʯڐ༰Ͱ
͖ΔͷͰ͋ΕɺͦΕࣗʹͱͬͯʮϩʔϦεΫɾ ϋΠϦλʔϯʯͳߦಈͱͳΔ
໋ɿٕज़ྗ͚͍ͩٻΊͯ ্ʹ্͕͍ͯΩϦ͕ͳ͍ • Կ͔ผͷͱ͜ΖͰҧ͍Λग़͍ͨ͠ • ࣗͷܦݧ্ɺͪΐͬͱͨ͠ʮߦಈྗʯͰҙ֎ͳఔ ʹҧ͍͕ग़Δ • ଞਓͳ͔ͳ͔Βͳ͍ʮϋΠϦεΫɾϋΠϦλʔϯʯ ͳߦಈ͕͋Δͱͯ͠ɺͦͷϦεΫΛʮࣗʯڐ༰Ͱ
͖ΔͷͰ͋ΕɺͦΕࣗʹͱͬͯʮϩʔϦεΫɾ ϋΠϦλʔϯʯͳߦಈͱͳΔ → ϦεΫΛऔΒͣʹϦλʔϯΛಘΒΕΔ
ྫ • ւ֎ͷΧϯϑΝϨϯεͰӳޠͰߨԋ - ڐ༰ͨ͠ϦεΫɿӳޠ΄ͱΜͲͤͳ͍͠ɺஏΛ͔͔͘͠Εͳ͍ - ͳͥڐ༰Ͱ͖͔ͨɿͪΌΜͱ͖͢ωλͱݟ͕͋Γೖ೦ʹ४උ ͢Εͦ͜·ͰͷେࣦഊʹͳΒͳ͍ͣ - ಘͨϦλʔϯɿࣄɺଞͷΧϯϑΝϨϯεͰͷߨԋɺւ֎ͰߨԋͰ
͖Δͱ͍͏ࣗ৴ɺւ֎Ͱߨԋͨ͠ͱ͍͏ഩ
ྫ • ւ֎ͷΧϯϑΝϨϯεͰӳޠͰߨԋ - ڐ༰ͨ͠ϦεΫɿӳޠ΄ͱΜͲͤͳ͍͠ɺஏΛ͔͔͘͠Εͳ͍ - ͳͥڐ༰Ͱ͖͔ͨɿͪΌΜͱ͖͢ωλͱݟ͕͋Γೖ೦ʹ४උ ͢Εͦ͜·ͰͷେࣦഊʹͳΒͳ͍ͣ - ಘͨϦλʔϯɿࣄɺଞͷΧϯϑΝϨϯεͰͷߨԋɺւ֎ͰߨԋͰ
͖Δͱ͍͏ࣗ৴ɺւ֎Ͱߨԋͨ͠ͱ͍͏ഩ • ւ֎ब৬ - ڐ༰ͨ͠ϦεΫɿ͙͢ʹղޏ͞ΕΔϦεΫʁ - ͳͥڐ༰Ͱ͖͔ͨɿϑϦʔϥϯεʹΕ͍͍͠Ή͠ΖΓ͍ͨ - ಘͨϦλʔϯɿٕज़໘Ͱ৭ʑɺւ֎ब৬ͱ͍͏ܦݧɺH-1BϏβɺӳ ޠ׳Ε
3. ʮڐ༰Ͱ͖ΔϦεΫʯΛΔ ίπίπٕज़ྗΛຏ͘ͷେࣄ͕ͩɺࣗʹͱͬ ͯڐ༰Ͱ͖ΔϦεΫΛݟۃΊͯߦಈ͢Δ͜ͱ Ͱɺେͨ͠ϦεΫΛऔΒͣʹϋΠϦλʔϯʢٕ ज़ɾ࣮ʣΛಘΒΕΔ͜ͱ͕͋Δ
4.Ҿ͖ࡍେࣄ
໋ɿʹཱ͍ͪͨͷࢁʑ͕ͩɺ શͯΛΔ࣌ؒͳ͍
໋ɿʹཱ͍ͪͨͷࢁʑ͕ͩɺ શͯΛΔ࣌ؒͳ͍ • ϞνϕʔγϣϯMaxͰऔΓΉ΄͏͕ޏ͍ओʗࣗ ํʹͱͬͯྑ͍
໋ɿʹཱ͍ͪͨͷࢁʑ͕ͩɺ શͯΛΔ࣌ؒͳ͍ • ϞνϕʔγϣϯMaxͰऔΓΉ΄͏͕ޏ͍ओʗࣗ ํʹͱͬͯྑ͍ • ͓͠Ζ͍ࣄΛͬͯΔͱ͖༡ͼͷ༧ఆΑΓ ࣄͷํ͕͓͠Ζ͍
໋ɿʹཱ͍ͪͨͷࢁʑ͕ͩɺ શͯΛΔ࣌ؒͳ͍ • ϞνϕʔγϣϯMaxͰऔΓΉ΄͏͕ޏ͍ओʗࣗ ํʹͱͬͯྑ͍ • ͓͠Ζ͍ࣄΛͬͯΔͱ͖༡ͼͷ༧ఆΑΓ ࣄͷํ͕͓͠Ζ͍ • ༵ʹ೦ͳؾ࣋ͪʹͳΔͳΒԫ৭৴߸
໋ɿʹཱ͍ͪͨͷࢁʑ͕ͩɺ શͯΛΔ࣌ؒͳ͍ • ϞνϕʔγϣϯMaxͰऔΓΉ΄͏͕ޏ͍ओʗࣗ ํʹͱͬͯྑ͍ • ͓͠Ζ͍ࣄΛͬͯΔͱ͖༡ͼͷ༧ఆΑΓ ࣄͷํ͕͓͠Ζ͍ • ༵ʹ೦ͳؾ࣋ͪʹͳΔͳΒԫ৭৴߸
→ Ҿ͖ࡍେࣄ
ָ͘͠ಇ͖ଓ͚ΔͨΊʹ ҙ͍ࣝͯ͠ΔϙΠϯτ4ͭ 1. ษڧΛࣄʹܨ͛Δ 2. “Searchable”ʹͳΔ 3. ʮڐ༰Ͱ͖ΔϦεΫʯΛΔ 4. Ҿ͖ࡍେࣄ