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
Yosuke Furukawa
PRO
December 09, 2022
Programming
22
14k
キャリアの悩みについて
2022/12/09 Developers CAREER Boost で発表したキャリアについての話です。
Yosuke Furukawa
PRO
December 09, 2022
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
9
3.8k
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
1
4.1k
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
230
Removing Corepack
yosuke_furukawa
PRO
9
1.6k
JavaScript Runtime とはなにか
yosuke_furukawa
PRO
15
2.8k
Strip Types と Storage
yosuke_furukawa
PRO
4
410
Module Harmony について
yosuke_furukawa
PRO
3
1.7k
LTのやり方
yosuke_furukawa
PRO
16
2.6k
AppRouter Panel Talk
yosuke_furukawa
PRO
3
810
Other Decks in Programming
See All in Programming
10 Costly Database Performance Mistakes (And How To Fix Them)
andyatkinson
0
340
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
AI駆動のマルチエージェントによる業務フロー自動化の設計と実践
h_okkah
0
150
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
590
AI時代の『改訂新版 良いコード/悪いコードで学ぶ設計入門』 / ai-good-code-bad-code
minodriven
14
5.2k
Goで作る、開発・CI環境
sin392
0
230
ソフトウェア品質を数字で捉える技術。事業成長を支えるシステム品質の マネジメント
takuya542
1
13k
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
510
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
220
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
260
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
790
Systèmes distribués, pour le meilleur et pour le pire - BreizhCamp 2025 - Conférence
slecache
0
120
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Unsuck your backbone
ammeep
671
58k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Thoughts on Productivity
jonyablonski
69
4.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
300
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Transcript
ΩϟϦΞͷΈʹ͍ͭͯ 2022/12/09 @ Developers CAREER Boost
Twitter: @yosuke_furukawa Github: yosuke-furukawa ࠷ۙͷ׆ಈ $ISPNF"EWJTPSZ#PBSE +4$POG+1PSHBOJ[FSFUD
͜ͷʮΩϟϦΞͷΈʯ ͱݴΘΕͯΜͰ͍Δਓ͚ Ͱ͢ɻΜͰ͍ͳ͍ਓͦͷ ··Ͱɻ
ݞॻ • Ұൠࣾஂ๏ਓ Japan Node.js Association දཧࣄ • ΤΩεύʔτ৫ άϧʔϓϚωʔδϟ
• σϕϩοϓϝϯτࣨ ࣨ • Google Chrome Advisory Board • ٕज़ސ ࣾ
ΩϟϦΞͷΈͳΜ͔ͳͦ͞͏ • ͦΜͳ;͏ʹࢥͬͯ͠·ͬͨํ •ʮΩϟϦΞʹΜͰ· ͢ʂʂʂʂʂʂʯ • ΩϟϦΞͷΈ͕ͳ͘ͳΔ͜ͱͳΜͯແ͍ • ࠓͦΜͳΛ͠·͢
ݞॻͱΩϟϦΞͷΈ • ݞॻͱΩϟϦΞͷΈແؔ • ݞॻ୯ͳΔࣄ্ͷϥϕϧʹա͗ͳ͍ • ݞॻ͕ද͍ͯ͠ΔͷݱࡏؔΘ͍ͬͯΔࣄ ͷׂͷ໊લͰ͋Δ
ݞॻͱΩϟϦΞͷΈ • ΩϟϦΞࣄͷܦྺΛࢦ͢ • ͏গࣗ͠ͷݴ༿Ͱݴ͍͢ͱɺʮνϟϨ ϯδ͖ͯͨ͜͠ͱʯΛࢦ͢ • ʮࠓޙͷΩϟϦΞʯͱݴΘΕͨͱ͖ʹʮࠓ ޙͷνϟϨϯδʯͱಉٛޠͩͱࢥ͍ͬͯΔ
ݞॻͱΩϟϦΞͷΈ • ʮΩϟϦΞͷΈʯཁʮ͜ͷ··Ͱ͍͍ͷ͔ͳʯ ͱ͍͏Έ • ͦΜͳͷͣʔͬͱӬଓతͳΈͰ͋Δ • ࣍ͷઓΛܾΊͨҰ࣌తͳঢ়ଶΜͰ͍ͳ͍ͱࢥ ͏͕ɺͦͷޙ·ͨΉ •
ઓ͍ͯ͠ΔਓΛݟΔͱযΔͷҰ࣌తʹΈ͕ͳ͘ ͳͬͯͦ͏Ͱɺͤͦ͏ʹݟ͑Δ͔Β
ΩϟϦΞͷΈ
ΩϟϦΞͷΈ ৽͍͠νϟϨϯδͱͦΕ͕͏·͘ ݴͬͯΔ࠷ॳͷ͏ͪΜͰͳ͍
ΩϟϦΞͷΈ ఀ࢝͠ΊΔͱΈͩ͢
ΩϟϦΞͷΈ མͪࠐΈ࢝ΊΔͱ͍ͬͯͳΔ
ΩϟϦΞͷΈ ͦΕͷ܁Γฦ͠
ݞॻͱΩϟϦΞͷΈ • ͏·͘ߦ͍ͬͯΔঢ়ଶ͕ଓ͚͍͍͕ͦΜͳ ͷҰఆ࣌ؒͰ͙͢ʹফ͑ͯ͠·͏ • ͔ͦ͠Μͳ؆୯ʹ͏·͘ߦ͔ͳ͍ • େମ৽͍͠νϟϨϯδࣦഊ͢Δ • ࣦഊͨ͠Γɺࢼߦࡨޡ͍ͯ͠ΔΉ
ݞॻͱΩϟϦΞͷΈ • ΜͰ͍ͳ͍࣌ͳΜͯҰॠ͔͠ͳ͍ • جຊతʹͣͬͱΜͰΔ • ΈΜͳ͕ઓ͍ͨ͠ɺ͏·͍͖͍ͨͬͯ͘ ࢥͬͯΔ
ΩϟϦΞͷΈ͓ͦΒ͘த ظతʹݟΔͱͣͬͱ͍ͭͯ ·ΘΔ
ΩϟϦΞͷΈΛղফ͠Α͏ ͱ͠ͳ͍
ΩϟϦΞͷΈΛղফ͠Α͏ͱ ͠ͳ͍ • ଟͣͬͱΉΜͩ͠ɺ͏·͘ંΓ߹͍Λͭ ͚ͳ͕Β͏ͱࢥͬͯཉ͍͠ • ᘳʹ͏·͍ͬͯ͘ΔਓͳΜ͍ͯͳ͍ • Ұํɺ͔ͩΒͦ͜ʮ͜͜ͰͩͬͨΒΜͰ ͍͍ʯͱࢥ͑ΔڥΛݟ͚ͭͯཉ͍͠
͜͜ͰͩͬͨΒΜͰ͍͍ • Έਚ͖ͳ͍ͷͰɺΜͰ͍Δॴ͕ద͔Ͳ͏͔ Ͱߟ͑ͯཉ͍͠ • ձࣾͷ vision ʹڞײ͍ͯ͠Δͱ͔ • ձࣾͷҰॹʹಇ͍͍ͯΔϝϯόʔΛϦεϖΫτͯ͠
͍Δͱ͔ • ͦͷձࣾͷதͰ·ͩνϟϨϯδ͍ͨ͠ࣄ͕͋Δͱ͔
͜͜ͰͩͬͨΒΜͰ͍͍ • ద͡Όͳ͍ͳͱࢥͬͨΒม͑Δͷ͋Γͩͱ ࢥ͏ɻ • ͏Γ͍ͨ͜ͱ͕ͳ͍ • vision ʹڞײͰ͖ͳ͍ •
ΩϟϦΞҎ֎ͷਓؒؔͰΈଓ͚ͯ͠· ͏
ݹͷ
࠷ॳͷձࣾ • ϝʔΧʔͰจॻཧγεςϜΛ࡞͍ͬͯͨ • RDBͷΠϯσοΫεͷΈΛֶΜͩΓɺશจݕ ࡧͷΈֶΜͩΓͱͷֶ͘͢͝ͼ͕ଟ͔ͬͨ • ӳޠͬͨΓɺϓϩάϥϛϯάͨ͠Γ͠ͳ͕Βࣗ ݾݚᮎ͢Δ࣌ؒ͋ͬͯྑ͍اۀͩͱײ͍ͯͨ͡ •
ͦΕͰɺવΩϟϦΞʹΜͰ͍ͨ
ͦΜͳ࣌ʹ Node.js ʹग़ձ͏
ಥͳ౧ଠ • ͓͋͞Μચ୕ʹ͔͍·ͨ͠ • ͷ্ྲྀ͔Β౧͕ͲΜͿΒ͜ͱྲྀΕ͖ͯͨ • ࣋ͬͯؼ͓͍ͬͯ͡͞Μͱ৯Α͏ͱࢥͬͨ ʢ͜͜Α͘ߟ͑Δͱҟৗߦಈʣ
͓ͦΒͦ͘Μͳग़ձ͍͕৭Μ ͳॴͰى͖͍ͯΔ
ͷ߹ͷେ͖ͳ౧͕ Node.js ͩͬͨɻ
Node.js ʹϋϚΔ • ͱΓ͋͑ͣຖिϒϩάॻ͘ • ຖ݄ͳʹ͔࡞Δ • Πϕϯτʹ͔ͳΒͣߦ͘ • ʹҰొஃ͢Δ
͜ͷઓΛ͍ͯ͠Δָ࣌͠ ͔ͬͨɻ
͜͏͍͏ͷʢWeb ΞϓϦέʔ γϣϯͮ͘ΓʣΛࣄʹͨ͠ ͍ͱࢥͬͨ
2ͭΊͷձࣾ • ήʔϜձࣾ • ༏लͳਓ͕ͷ͘͢͝ଟ͔ͬͨ • ӡ༻ͷํֶΜͩ • ৽نࣄۀܦݧͨ͠ •
طଘࣄۀͷϦχϡʔΞϧͰେ͖ͳࣄͬͨ • ͪΖΜΩϟϦΞʹΜͰ͍ͨ
Node.js ͷ׆ಈଓ͚͍ͯͨ
ͨͩຊ֨తʹίϛϡχςΟͷ ϦʔμʔʹͳΔ ͜ͷลΓ͔Β Node.js Ϣʔ βʔάϧʔϓදʹͳΔ
Node.js ͱ io.js ͱͷ fork ͳ Ͳ͕ى͖ɺίϛϡχςΟࠞ ಱͱͩ͢͠ɻ
ݟݶΔਓଟ͍ ԿʮNode.js Φϫίϯʯ Έ͍ͨͳࣄΛݴΘΕ͔ͨ
Node.jsͱio.jsͷࠞಱΛऩΊ Α͏ͱɺϒϩάॻ͍ͨΓͲͪ ΒʹίϯτϦϏϡʔτͨ͠ Γ͍ͯͨ͠
͜ͷ࣌ͷ׆ಈΛࢦͯ͠ ͳΜͰ͜͏͍͏ࣄ͕Ͱ͖ͨΜ Ͱ͔͢ʁͱฉ͍͖ͯͯ͘ΕΔ ਓଟ͍
ҰݴͰ͍͏ͱʮѪʯ͔ͳͱ ࢥ͍ͬͯΔɻ
ϩδοΫΛ͑ͯΓଓ͚Δ ঢ়ଶΛࢦͯ͠ʮѪʯͱݺΜͰ ͍Δɻ
ͱʹ͔͘ଛಘൈ͖Ͱߟ͑ͯ ͨɻ Node.js ΛΓ্͛ͨ ͔ͬͨɻͳΜͰ͔ͱݴΘΕͯ Α͘Θ͔Βͳ͍ɻͦ͏͠ͳ ͖Ό͍͚ͳ͍ͱࢥͬͯͨɻ
͜͜·ͰເதʹͳΕΔͷ͕ ͋ͬͨͷྑ͔ͬͨؾ͕ͯ͠ ͍Δ
ͨͩͬͺΓͬͱ Node.js Λຊ֨తͳ׆ಈʹ͠ ͨ͘ͳͬͨ
ݱࡏͷձࣾ • Node.js Λ͔ͳΓૣ͔͘Β࠾༻͍ͯͨ͠ • ΣϒΞϓϦέʔγϣϯଟ͘ɺଟ༷ͳ͕ ଟ͔ͬͨ • ͕ࣗؔΘΔ͜ͱͰগ͠Ͱྑ͘͠Α͏ͱࢥͬͯ ͍Δɻ
• ͪΖΜΩϟϦΞʹΜͰ͍Δ
ϑϩϯτΤϯυͷઐνʔϜ Λ͞ΕΔ
ࢠձࣾͷ։ൃશൠΛ͞ΕΔ
৭ʑͱ৽͍͠νϟϨϯδ Λͤͯ͞Β͍͑ͯΔ
ͦΕͰͬͺΓΉ
όϥϯεͷͱΓํ ઐՈͷҭ ձࣾͷܦӦ Node.js ͳͲͷOSS׆ಈ ٕज़ސ ຊΛॻ͘
όϥϯεͷͱΓํ ຖͷݚᮎ (ӳޠ) ڝٕϓϩάϥϛϯά ےτϨ Ոఉ͍͠
·͊ͰΜͰ͍͍ͯͱ ࢥ͑Δ
ଟɺ͜Ε͕ࣗͷΩϟϦΞ ͷܗͷํԿͩͱࢥ͏ɻ Έͳ͕Βɺͦͷ࣌ϋϚͬͯ ΔࣄΛΓͳ͕Βɺόϥϯε ͱΓͳ͕Βɺͨ·ʹແ͠ͳ ͕ΒɺΓ͍ͨ͜ͱΛશ෦ ͬͯΈΔɺͱ͍͏ɻ
શһ͕͜͜·ͰແΛ͠Ζͱ ࢥΘͳ͍ɻਓʹΑͬͯΩϟ ϦΞͷܗͷํҧ͍ͬͯ ͍ɻͨͩΈड͚ೖΕͯཉ ͍͠ɻ
ͦ͏ͦ͏ɺେࣄͳ͜ͱ
Ήͷྑ͍͕ɺϝϯλϧΠ ϧωεʹͳΒͳ͍Α͏ʹͯ͠ ཉ͍͠
Έ݈͗ͯ͢߁ʹඃ͕ग़Δ ͷҧ͏
͍ʂͱࢥͬͨΒ ͙͢පӃʹɻ
පӃʹߦ͘લʹճΓʹ૬ஊ͠ ͨΓ͢Δͷ͋ΓͰ͠ΐ͏
ҿΈձͱ͔ͰΈΛݴͬͯΈ Δͷྑ͍ͱࢥ͍·͢ɻ
݈߁Ͱ͋ͬͯ΄͍͠ɻ Έա͗ͨΒपғΛཔͬͯ΄͍͠ɻ ໌ޙ40ࡀʹͳΓ·͢ɻ ݈߁ʹؾΛ͚͍ͭͯ·͢ɻ
དྷΈଟ͖ʹͳΔͰ ͠ΐ͏ɻͰҰॹʹΓӽ͑ ͍͖ͯ·͠ΐ͏ɻ
͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ