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
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
290
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
100
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
340
create_tableをしただけなのに〜囚われのuuid編〜
daisukeshinoku
0
260
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
210
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
120
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
110
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
360
命名をリントする
chiroruxx
1
410
暇に任せてProxmoxコンソール 作ってみました
karugamo
2
720
Go の GC の不得意な部分を克服したい
taiyow
3
790
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
169
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
The Language of Interfaces
destraynor
154
24k
RailsConf 2023
tenderlove
29
940
Building an army of robots
kneath
302
44k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Why Our Code Smells
bkeepers
PRO
335
57k
Facilitating Awesome Meetings
lara
50
6.1k
KATA
mclloyd
29
14k
Side Projects
sachag
452
42k
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. Ҿ͖ࡍେࣄ