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
January 19, 2021
Technology
60
24k
スペシャリストになる覚悟
2021/01/19 の Forkwell Engineer Career Study の資料です
Yosuke Furukawa
PRO
January 19, 2021
Tweet
Share
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
デザインシステムが必須の時代に
yosuke_furukawa
PRO
2
140
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
10
4.3k
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
1
4.2k
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
260
Removing Corepack
yosuke_furukawa
PRO
9
1.7k
JavaScript Runtime とはなにか
yosuke_furukawa
PRO
15
2.8k
Strip Types と Storage
yosuke_furukawa
PRO
4
420
Module Harmony について
yosuke_furukawa
PRO
3
1.7k
LTのやり方
yosuke_furukawa
PRO
16
2.7k
Other Decks in Technology
See All in Technology
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
280
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
700
AIの最新技術&テーマをつまんで紹介&フリートークするシリーズ:はじめてのローカルLLM
stanaka26
0
110
今日から始めるAWSセキュリティ対策 3ステップでわかる実践ガイド
yoshidatakeshi1994
0
130
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
160
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.8k
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
2
230
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
560
IoT x エッジAI - リアルタイ ムAI活用のPoCを今すぐ始め る方法 -
niizawat
0
130
20250912_RPALT_データを集める→とっ散らかる問題_Obsidian紹介
ratsbane666
0
100
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
480
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
339
57k
Automating Front-end Workflow
addyosmani
1370
200k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Balancing Empowerment & Direction
lara
3
630
The Cult of Friendly URLs
andyhume
79
6.6k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
A designer walks into a library…
pauljervisheath
207
24k
Being A Developer After 40
akosma
90
590k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
εϖγϟϦετʹͳΔ ֮ޛ 2021/01/16 @ Engineer Career Study #1
Twitter: @yosuke_furukawa Github: yosuke-furukawa ࠷ۙͷ׆ಈ $ISPNF"EWJTPSZ#PBSE +4$POG+1PSHBOJ[FSFUD
ϚωʔδϟʔͱεϖγϟϦετ
ITΤϯδχΞͷΩϟϦΞͱͯ͠ޠ ΒΕΔʮεϖγϟϦετʯͱͳ Μͳͷ͔ɻ ҰൠతͳΩϟϦΞͱͯ͠ޠΒΕͯ ͍ΔͷͷɺҰͭͷઐੑͷΈͰ څྉΛ͍͋͛ͯ͘͜ͱͷ͠͞Λ ײ͡ΔΤϯδχΞɺࣗͷߟ͑ ͱཪෲʹϚωʔδϟʔͷಓΛٻ ΊΒΕΔํ͍·͢ɻ https://forkwell.connpass.com/event/200159/
Զ͡ΌΜ... (γχΞιϑτΣΞΤϯδχΞ݉ άϧʔϓϚωʔδϟ)
ͦͦεϖγϟϦετͱϚ ωʔδϟʔͳͥରཱ͢Δ֓ ೦͔ͷΑ͏ʹѻΘΕͯΔͷ͔
ݹయ ୈޒষʮϚωʔδϟʔͱԿ͔ʯ ϚωʔδϟʔͰ͋ΕɺઐՈͰ͋ ΕɺϚωδϝϯτͷҰһͰ͋Δ͜ͱ ʹมΘΓ͕ͳ͍ɻ ϚωʔδϟʔͱઐՈͷҧ͍Ϛ ωʔδϟʔͷ΄͏͕Ұ͚ͭͩ༨ͳ ଆ໘Λ͍࣋ͬͯΔͱ͍͏ࣄ͚ͩͩɻ ɹɹɹɹɹʹʹதུʹʹ ҧ͍ɺػೳͰߩݙͰͳ͘खஈ
ʹ͋Δɻ྆ऀʹཁٻ͞ΕΔͷಉ ͡Ͱ͋Δɻ https://www.diamond.co.jp/book/9784478410233.html
εϖγϟϦετ ݸਓͰՌΛग़͢ਓ
Ϛωʔδϟʔ ৫ΛӡӦ͠ՌʹΛ࣋ͭਓ
εϖγϟϦετ ݸਓͰՌΛग़ ͢ਓ Ϛωʔδϟʔ ৫ΛӡӦ͠Ռ ʹΛ࣋ͭਓ ͦͦڥքઢ͕ͦ͜·Ͱ͖ͬΓ͍ͯ͠ͳ͍ɻ ιϑτΣΞ։ൃʹ͓͍ͯಛʹɻ
εϖγϟϦετ ιϑτΣΞ։ൃʹ͓͍ͯݸਓ୯ ମͰՌΛग़͢͜ͱ͕গͳ͍ɻ νʔϜ։ൃͱͯ͠νʔϜશମͰՌ Λग़͢ඞཁ͕͋Δɻ
Ϛωʔδϟʔ ιϑτΣΞ։ൃʹ͓͍ͯϚωʔ δϟʔઐతͳࣝඞཁɻ ਐԽͷ͍ۀքͰखΛಈ͔ͯ͠Π ϯϓοτ͢Δඞཁ͋Δɻ
εϖγϟϦετͱϚωʔδϟʔରཱ͢Δ ֓೦͡Όͳ͍ͱ͍͏ࣄΛೝࣝͯ͠΄͍͠ɻ εϖγϟϦετͰ͋ͬͯਓΛϦʔσΟϯ άͨ͠Γɺҭ͢Δඞཁ͋Δ͠ɺϚωʔ δϟʔͰ͋ͬͯίʔυॻ͘ɻ
ʮϚωʔδϟʔʹͳͬͯ΄͍͠ʯͱ ݴΘΕͨ࣌ʹΫϥγοΫͳఆٛͷϚ ωʔδϟʔͷҹ͔ΒωΨςΟϒʹ ߟ͑Δͷ͍ͬͨͳ͍ɻ
ݹϚωʔδϟʔʹͳͬͯ ΄͍͠ͱݴΘΕͨ࣌ʹ ʮͬͨ͜ͱͳ͍͔Βͬͯ Έ͍ͨʯͱࢥͬͨɻ
εϖγϟϦετಉ༷ɺࣗ ͷΓ͍ͨ։ൃΛଓ͚ΔͳΒ νʔϜશମʹߟ͑ํΛ͛Δ ඞཁ͕͋Δ͠ɺͦͷͨΊʹ Ϛωʔδϟʔ͕ΔΑ͏ͳ ࣄΔඞཁ͕͋Δɻ
ͱ͍͑ɺେมͦ͏...
ͷ߹
γχΞΤϯδχΞ • ΞϓϦέʔγϣϯ։ൃͦͷͷʹؔΘΔ͜ͱগ ͳ͍ʢͨ·ʹͦΕΔ͚ͲΔͱ͖ࠈʣ • ͦͦͷઃܭϓϩτλΠϓ։ൃ͕ϝΠϯ • ։ൃͷखॿ͚ʹͳΔΑ͏ͳϥΠϒϥϦͷ։ൃ OSSͷதʹ౿ΈࠐΜͩௐࠪ߹ʹΑͬͯPRΛ ग़͢ɺ·ͱ·ͬͨΒϒϩάͰࣝΛڞ༗͢ΔͳͲ
ҰํͰϚωʔδϟʔͱͯͬͯ͠ Δ͜ͱ • ϝϯόʔͷλεΫΞαΠϯʢΓ͍ͨ͜ͱͱΒͳ ͖Ό͍͚ͳ͍͜ͱΛ߹ΘͤΔʣ • ࠾༻ɺҭʢ໘༏लͳީิऀͷ͔͚ɺ৽ਓݚ मͷߨࢣʣ • ษڧձϋοΧιϯͳͲɺࣾͰΤϯδχΞίϛϡχ
ςΟ࡞Γ • ࠾༻ ϝϯόʔ͕༏लͰ͋ΔͱɺͲΕͦΜͳʹ͘͠ͳ͍ɻ ίϛϡχςΟ࡞ΓࣗͷϥΠϑϫʔΫʹ͍ۙͷͰͦ͜·Ͱ͘͠ͳ͍ɻ
ϚωδϝϯτͱεϖγϟϦετͷཱ͕྆େ ม͔Ͳ͏͔ϝϯόʔʹڧ͘ґଘ͢Δɻ पғͷϝϯόʔ͕༏लͳΒϚωδϝϯτΛ ߦ͍ͳ͕ΒίʔυΛॻ͘͜ͱՄೳ ܲͱཛͷΑ͏ͳؔʹͳ͍ͬͯΔɺͳͷͰେมɻ ࠾༻ҭҰேҰ༦ͰͰ͖ͳ͍ɻ͜͜·ͰདྷΔͷʹ͔͔ͬͨɻ
εϖγϟϦετ ൃද 044 ϥΠϒϥϦ αʔϏε Output φϨοδ Ϛωʔδϟʔ Team Assign
Share Engineer Community Recruitment
εϖγϟϦετ ൃද 044 ϥΠϒϥϦ αʔϏε Output φϨοδ Ϛωʔδϟʔ Team Assign
Share Engineer Community Recruitment εϖγϟϦετνʔϜ͕Ξτϓοτͨ͠ͷΛڞ༗͠ɺίϛϡχςΟʹؐݩ Ϛωʔδϟʔ͔ͦ͜ΒڵຯΛ࣋ͬͯ͘ΕͨਓΛ࠾༻͠ɺҭͯ͠νʔϜʹؐݩ
Q.εϖγϟϦετͱϚωʔ δϟʔΛ྆ํΔͷେมʁ A. ͪΖΜେม ͚ͩͲ྆ํΕΔ͜ͱ͕ཧ େม͞ΛΓӽ͑ΕΓ͍ͨ ͜ͱ͕͕͍ͬͯ͘ɻ
ͦͦεϖγϟϦετʹͳΔͬ ͯͲ͏ͬͨΒΕΔͷ͔...?
ͷ߹
ϦΫϧʔτʹ͓͚ΔγχΞͷཁ݅ • ࣾ֎ͰΤΩεύʔτͱͯ͠ೝ͞Ε͍ͯΔ͜ͱ ʢNode.js ͷୈҰਓऀͱͯ͠ೝࣝ͞Ε͍ͯΔʣ • ͦͷਓ͕Ұਓ͍Δ͚ͩͰɺϓϩμΫτઓུ͕มΘΔɻ ࠓ෩ʹݴ͏ͱɺʮபʯ ʢ௨ৗͰ࡞Εͳ͍Α͏ͳͷ࡞ΕΔɺϋΠύϑΥʔ ϚϯεͳΞϓϦέʔγϣϯʣ
• γχΞʹͳΔͱɺϝϯόʔ͔ΒϩʔϧϞσϧͱͯ͠ೝࣝ͞ΕΔ
ΤϯδχΞʹͳΔ֮ޛ • 3΄Ͳલʹൃදͨ͠ • ΞϓϦέʔγϣϯΛ࡞Ζ͏ • ඇػೳཁ݅ʹͩ͜ΘΖ͏ • ࣝʹ֞ࠜ࡞Βͳ͍
εϖγϟϦετʹͳΔͨΊʹ৺ ͕͚Δ͜ͱ • ࣗͷʹ͢Δ • ଉΛు͖ଓ͚Δ • Կ͔͠ΒͷνϟϨϯδΛଓ͚Δ
ࣗͷʹ͢Δ
Node.js ຊϢʔβʔάϧʔϓ දʹͳͬͨ࣌ͷࠒ (2014)
Node.js ࠞཚظͰͨ͠ɻ
ࢭ·Γଓ͚ΔϦϦʔε Revert͞Εଓ͚Δίϛοτ Ұͭୡ͠ͳ͍ϚΠϧετʔϯ
io.js ͱ Node.js ͱ͍͏அ
͜ͷ࣌ʹࢥ͍ͬͯͨͷɺ ʮNode.jsͱio.jsͷࠞཚΛࢭΊͳͯ͘ʯ
Node.js fork ͞Εͯ io.js ʹϝ Πϯίϛολ͕ྲྀΕɺ Node.js Node.js
ͰϨΨγʔ։ൃͱ͠ ͯෆ۩߹मਖ਼͕ਐΉ సػ
ࠓ·Ͱάϩʔόϧʹى͖͍ͯΔมߋΛϩʔΧϧ ʢຊʣʹ͑Δ͜ͱ͔ͯ͠͠ͳ͔ͬͨɻ ݴΘɺ֎Ͱى͖͍ͯΔ͜ͱΛ͑Δ͚ͩͩͬͨɻ
Node.jsͰى͖ͯΔ͜ͱΛ io.js ʹల։ ͠ɺ io.js Ͱى͖ͯΔ͜ͱΛ Node.js ʹ ϑΟʔυόοΫ͢ΔࣄͰɺมߋͷࠩΛ খ͘͢͞Δ͜ͱʹΊͨɻ
ͦ͏͢ΕɺҠߦͦ͜·Ͱ͘͠ͳ͍ɻ ͲͬͪΛબͿ͔Ϣʔβʔ͕બ͢Ε ྑ͍ɻ
ٕज़తʹى͖͍ͯΔมԽΛ୭͔͕ͬͯ͘ ΕΔͱࢥͬͯͤΔͷͰͳ͘ɺࣗͷ͜ ͱͱͯ͠Λ͏ɻ
݁Ռ: 2015ʹ Node.js ͱ io.js ౷߹ ͦͷ࣌ͷ׆ಈ͕͖͔͚ͬͰ ίΞίϯτϦϏϡʔλʔ݉ΤϰΝϯδΣϦετʹɻ
ଉΛు͖ଓ͚Δ
ଉΛు͖ଓ͚Δ = ΞτϓοτΛ͠ଓ͚Δ
ଉΛు͖ଓ͚ΔͱٵΘͳ͍ͱ ͍͚ͳ͘ͳΔɺΠϯϓοτ ܧଓతʹͰ͖ΔΑ͏ʹͳΔ
Node.js / io.js ૽ಈ͕͋ͬͨ࣌ ͔Βಛʹߟ͑ํ ʮάϩʔόϧΛҙࣝͯ͠Δʯ
άϩʔόϧͰͬͯΔ͜ͱΛ ຊʹೖΕΔΑΓຊͰى͖ͯ Δ͜ͱΛάϩʔόϧʹల։͢Δ
ͳͷͰΞτϓοτ άϩʔόϧΛҙ͍ࣝͯͨ͠ɻ jsconf.asia 2016 Node interactive 2017 AMP Fest 2020
ຊͩͱੈքͷϩʔΧϥΠζͰൃ දʹͳΔ͚Ͳੈքͩͱͦͷ্Λ͑ ͍ͯ͘ඞཁ͕͋Δɻ ͳͷͰΞτϓοτ࣭͕มΘΔɻ
Կ͔͠ΒͷνϟϨϯδΛଓ͚Δ
1ؒͱ͍͏εύϯΛઃ͚ͯ ԿΒ͔ͷνϟϨϯδΛଓ͚͖ͯͨɻ Japan Node.js Association ๏ਓԽ ೦ئͷ JSConf.JP ։࠵
͜͜࠷ۙϚωʔδϟʔ͚ͩͲຖ ίʔυॻ͘ͷΛΔͷΛνϟϨϯδ ʹ͍ͯ͠·͢ɻ Leetcode Λຖղ͍ͯΔʢ࠷ۙRustͰ) Write Code Everyday Ͱ1ܧଓ
ৗʹͳʹ͔Δɻ खΛಈ͔͢͜ͱΊͳ͍ɻ
ίϯϑΥʔτκʔϯʹཹ·Β ͳ͍Α͏ʹͯ͠ΔʢͭΓʣ
·ͱΊ
·ͱΊ • ϚωʔδϟʔͱεϖγϟϦετ • ϚωʔδϟʔͱεϖγϟϦετରཱ֓೦͡Όͳ͍ • ιϑτΣΞ։ൃʹ͓͍ͯΉ͠Ζڞ௨߲͕ଟ͍ • ཱ྆͢ΔͷͪΖΜେม͚ͩͲɺΓӽ͑ΕΓ͍ͨ͜ͱ͕Ͱ͖Δ •
εϖγϟϦετʹͳΔʹ • ࣗͷʹ͢Δ • ଉΛు͖ଓ͚Δ • ৗʹԿ͔͠ΒνϟϨϯδ͢Δ
ͦͯ͠ࠓ܅͕ͨͪ ޙഐΛकΔபͱͳΔͷͩɻ (َ໓ͷਕ 8ר: Ẃࠈҍण) ஶ: ޗಕݺੈ ग़൛ࣾ: ूӳࣾ ग़൛:
2017
͋Γ͕ͱ͏͍͟͝·ͨ͠