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
スーパーエンジニアを「育て」られるか? / how-to-let-an-engineer-to...
Search
sunecosuri
September 06, 2018
Programming
0
1.4k
スーパーエンジニアを「育て」られるか? / how-to-let-an-engineer-to-grow-up-into-a-hacker
sunecosuri
September 06, 2018
Tweet
Share
More Decks by sunecosuri
See All by sunecosuri
'Securing Web Apps with Modern Platform Features' を意訳してみる / Translate Securing Web Apps with Modern Platform Features
sunecosuri
2
310
Vue.js × TypeScript でclass style componentを廃止した話 / migrated-class-style-component -for-vuejs-and-typescrpit
sunecosuri
2
4.3k
Nuxt.js のbuid速度が早くなるオプションのいくつかについて / Increase-build-speed-for-Nuxt.js
sunecosuri
1
1.3k
about-vue-hooks.pdf
sunecosuri
1
690
Nuxt.js におけるCSPの連携について / content security policy for Nuxt.js
sunecosuri
0
2.4k
ロリポップマネージドクラウドでAlexaスキルを開発しよう / let's development alexa skill by lolipop managed cloud
sunecosuri
1
170
マネージドクラウドのリリース速度を上げるお話 / Increase release speed for managed cloud
sunecosuri
2
310
Reconsider Content Security Policy for WEB Application
sunecosuri
0
86
Other Decks in Programming
See All in Programming
Effective Signals in Angular 19+: Rules and Helpers @ngbe2024
manfredsteyer
PRO
0
140
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.7k
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
820
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
260
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
450
Exploring: Partial and Independent Composables
blackbracken
0
100
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
nekko cloudにおけるProxmox VE利用事例
irumaru
3
430
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
210
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
480
return文におけるstd::moveについて
onihusube
1
1.1k
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
Raft: Consensus for Rubyists
vanstee
137
6.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Producing Creativity
orderedlist
PRO
341
39k
Automating Front-end Workflow
addyosmani
1366
200k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Building Adaptive Systems
keathley
38
2.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Fireside Chat
paigeccino
34
3.1k
Transcript
໐ւ߂ً(.01FQBCP *OD %FWFMPQFST4VNNJU'6,60," εʔύʔΤϯδχΞΛ ʮҭͯʯΒΕΔ͔ʁ ϖύϘͷΤϯδχΞڭҭͷઓɹ
ຊͷ͓ ϖύϘͱΘͨ͠ ଐޙɺ ࣮ࡍʹಇ͍ͯΈͯ w Θͨ͠ʹ͍ͭͯ w ϖύϘΧϨοδͱ w ड͚ͯΈͨײ
w ଐޙʹ͍ͭͯ w ̍ܦͬͨࠓͳʹͯ͠Δʁ
ΤϯδχΞʢϖύΧϨظੜʣ ໐ւ߂ً!TVOFDPTVSJ ϗεςΟϯάࣄۀ෦ϗεςΟϯάάϧʔϓ ϚωʔδυΫϥυνʔϜ
۽ຊͷจܥେֶΛଔۀ ৽ଔͰ8&#੍࡞ձࣾʹ8&#ϓϩάϥϚͱͯ͠ೖࣾ ɾϓϩάϥϛϯάະܦݧ ɾडୗҊ݅ͰϑϧεΫϥονͰ࡞ΒΕͨ$.4ͷӡ༻։ൃ͕ϝΠϯ 1)1ɺ.Z42- ݄ʹ(.0ϖύϘʹೖࣾ ɾϖύϘΧϨοδظੜ
ϩϦϙοϓϚωʔδυΫϥυͷαʔϏε։ൃʹऔΓΉ ɾݱࡏΫϥΠΞϯταΠυΛத৺ʹ։ൃ͍ͯ͠·͢
ϖύϘΧϨοδʁ
ϖύϘΧϨοδͱ w̍ϲ݄ͷ8FC։ൃݚमΛܦͯଐ͞ΕΔ த్࠾༻ϓϩάϥϜ w8FCۀքະܦݧऀ͚ աڈʹΧελϚʔαʔϏεσΟϨΫλʔɺফ࢜ͳͲҟۀछͳͲ͔Βʜ w݄͔Β։࢝
ϖύϘΧϨοδͱ ظ 8FCΤϯδχΞ ظ "OESPJEΤϯδχΞ ظ 8FCΤϯδχΞ ظ J04ΤϯδχΞ ظ
8FCΤϯδχΞ ظ ΠϯϑϥΤϯδχΞ w౦ژɾԬͦΕͧΕͰ߹ܭظ·ͰߦΘΕ͖ͯͨ
ϖύϘΧϨοδͱʢؔ࿈ࢿྉʣ IUUQTUFDIQFQBCPDPNQFQBCPDPMMFHF@OE IUUQTUFDIQFQBCPDPNQFQBCPDPMMFHFTUJOUFSWJFX
िʢϙʔτϑΥϦΦݚमʣ w աڈͷܦݧΛৼΓฦΔ ࣗͷڧΈɾऑΈ ਓੜͷλʔχϯάϙΠϯτʹ͍ͭͯ ڞʹൃද͠߹͏
ि w ։ൃڥͷߏஙɺπʔϧͷհ (JUͷ͍ํΛϋϯζΦϯܗࣜͰֶͿ ࠓޙͷ։ൃʹඞཁͳπʔϧͷ४උศརػೳͷհ QFDP [TI HIR w UJHͳͲ
िʢ3VCZ 3BJMTݚमʣ w 3VCZͷݴޠॲཧΛΫΠζܗࣜͰ࣮ફ w 3BJMTʹ͍ͭͯͷ࠲ֶ5PEPΞϓϦΛ࡞ w ϫʔΫγϣοϓ &3% &3ਤ
3&45ͷߟ͑ํʹ͍ͭͯ
िʢ+BWB4DSJQUݚमʣ w +BWB4DSJQUݚम ϑϩϯτΤϯυͷ։ൃϑϩʔ +BWB4DSJQUͷྺ࢙ݴޠಛ༗ͷߟ͑ํ ֤πʔϧͷׂ ɹτϥϯεύΠϧλεΫϥϯφʔͳͲ 3FBDUºXFCQBDLΛͬͯ5P%PΞϓϦΛ࡞Δ
िʢΠϯϑϥݚमʣ w αʔόʔΛϋϯζΦϯܗࣜͰԽߏ·Ͱ࡞ w *UBNBFͰ࡞ͨ͠αʔόʔΛίʔυԽ *OGSBTUSVDUVSFBT$PEFʹ͍ͭͯ w αʔόʔࢹख๏ʹ͍ͭͯ࠲ֶʢ֎ܗࢹɺܗࢹʣ w
ෛՙௐࠪͷߟ͑ํར༻͢ΔίϚϯυʹ͍ͭͯ σόοάͷํϩάͷݟํ ݪҼͷΓ͚ํͳͲΛʹ͚ͭΔ͜ͱ͕త
िʢεΫϥϜݚमͱαʔϏεاըʣ w ։ൃख๏ʹ͍ͭͯͷ࠲ֶ ΥʔλʔϑΥʔϧ ΞδϟΠϧ εΫϥϜ w εΫϥϜ։ൃख๏ʹ͍ͭͯͷϫʔΫγϣοϓ w αʔϏεݚमʹ͚ͯͷϦʔϯΩϟϯόε࡞
ि αʔϏεݚम w ࡞ͬͨϦʔϯΩϟϯόεΛݩʹͰ αʔϏεΛ࡞Δ w αʔϏεɺϦϦʔεཁ݅ͷఆٛ w σΠϦʔεΫϥϜΛ௨ͯ͡ νʔϜʹͳΔաఔΛײ͡Δ͜ͱ͕Ͱ͖ͨ
w ࠷ऴతʹ3VCZPO3BJMTº7VFKTͰ ϨϏϡʔґཔαʔϏεΛ࡞ͬͨ
ϖύΧϨΛ௨ͯ͠ w ΤϯδχΞͱͯ͠ඞཁͳࣝɺٕज़ͳͲମܥతʹֶͨ ςετίʔυͷߟ͑ํɺίʔυϨϏϡʔɺνʔϜͰͷ։ൃख๏ͳͲ ࠲ֶͱԋशΛ௨ֶͯ͠Ϳ͜ͱ͕Ͱ͖ͨ w Ұํɺใྔ͕ଟͯ͘ཧղ͖͠Εͳ͍෦͋ͬͨ ࣗͷʮΘ͔Βͳ͍ʯ͕ͳʹ͕Θ͔Βͳ͍ͷ͔ΛΔ͜ͱ·Ͱ͕Ͱ͖ͨ w ಉ͡৬छͰͷಉظ͕͍Δ҆৺ײ
த్࠾༻ʹؔΘΒͣɺ٧·ͬͨΓ͢Δͱ૬ஊ͍͢͠͠ҰॹʹΜͰऔΓΊͨ
ϖύΧϨऴྃޙ
ϩϦϙοϓϚωʔδυΫϥυνʔϜ
ϩϦϙοϓʂ ϚωʔδυΫϥυ
w ݄ʹਖ਼ࣜ൛ΛϦϦʔε w ฐࣾ!VE[VSBͷ)BDPOJXBʹΑΔ ίϯςφϕʔεϗεςΟϯά w ΦʔτεέʔϧػೳΛࡌ
ଐ࣌ʹ͍ͭͯ wЋϦϦʔεʹ͚ͯ։ൃਅͬத w ͜Ε·Ͱͷܦݧ͕΄΅׆͔ͤͳ͍ϓϩδΣΫτ ࠾༻ݴޠٕज़5ZQF4DSJQU /VYUKTʢ7VFKTʣ FDIP (P w
ΞʔΩςΫνϟ͕ෳࡶ .JDSP4FSWJDFT"SDIJUFDUVSFΛ࠾༻͍ͯͯ͠ߏཁૉ͕ଟ͍
ଐ࣌ʹ͍ͭͯ wЋϦϦʔεʹ͚ͯ։ൃਅͬத w ͜Ε·Ͱͷܦݧ͕΄΅׆͔ͤͳ͍ϓϩδΣΫτ ࠾༻ݴޠٕज़5ZQF4DSJQU /VYUKTʢ7VFKTʣ FDIP (P w
ΞʔΩςΫνϟ͕ෳࡶ .JDSP4FSWJDFT"SDIJUFDUVSFΛ࠾༻͍ͯͯ͠ߏཁૉ͕ଟ͍ Ͳ͏ͬͯΩϟονΞοϓ͢Εʜ Ͳ͏ͨ͠ΒνʔϜʹߩݙͰ͖ΔͩΖ͏ʜ
ଐͯͬͨ͜͠ͱ w લ৬ʹҰ൪͍ۙϨΠϠʔ͔ΒཧղΛਂΊ͍ͯ͘ 8&#੍࡞ձࣾͩͬͨͷ͋ͬͯ͠Έ͍͢ϑϩϯτΤϯυϨΠϠʔ͔Β ˠ7VFKTͱ5ZQF4DSJQUΔͧʂʂ w 5ZQF4DSJQUઌഐʹϨϏϡʔΛ௨ͯ͡গֶͣͭ͠Ϳ +BWB4DSJQUʹ͍ͭͯ.P[JMMBͷϦϑΝϨϯεͳͲҰ࣍ใΛࢀর͢ΔΑ͏ʹҙࣝ͢Δ w )5.-ʹ͍ۙ7VFKT͔Βࡉ͔͍λεΫΛͰ͖Δͱ͜Ζ͔Βணख
࣍ใΛಡΈࠐΈͳ͕Β࣮ࡍʹखΛಈ͔ͯ͠ૉৼΓ ςΩετͷमਖ਼ιʔγϟϧϘλϯΛίϯϙʔωϯτʹΓग़࣮͢ͳͲ
ଐͰॳϦϦʔε
ϖύΧϨΛܦͯײͨ͋͡Γ͕ͨΈ
ͱʹ͔͘ ΪϟοϓΛײ͡ʹ͔ͬͨ͘ʂʂ
w(JUͷݚम ͜Ε·ͰҰਓͰ͍ͬͯͨHJUͩͱ(JU8PSLqPXͱ͔ॻ੶ΛಡΜͰ ཧղ͠ʹ͔ͬͨ͘ͷ͕ͩɺ՝ใͷఏग़͕13ϕʔεͩͬͨͷ ͋ͬͯଐޙεοͱ13ΛૹΔͷʹ᪳͠ͳ͘ͳͬͨ wମܥతʹֶͨ ʮݱͰಇ͘ΤϯδχΞʯ͔Βಇ্͘ͰͷϚΠϯυ͔Β֤ϨΠϠʔʹ ΘͨΔٕज़·Ͱڭ͑ͯΒ͑Δ͜ͱͰɺΞϓϦέʔγϣϯ͚ͩͰ ͳ͘ଞͷϨΠϠʔͷڵຯͱཧղͷ্͕͕ͬͨ͢͠͞
ݱࡏ͍ͬͯΔ͜ͱ w ϑϩϯτΤϯυΤϯδχΞʹͳΔͨΊʹ 7VFKTXFCQBDLͳͲ044ͷίʔυΛಡΜͰπʔϧϓϥάΠϯΛ࡞ͬͯΈΔ ंྠͷ࠶։ൃࣸܦΛ͢Δ ίϛϡχςΟʹॴଐ͢Δ w ৽ػೳ։ൃʹ͚ͯػೳ୯ҐͰϦϦʔε·Ͱר͖औΕΔΑ͏ʹ ϑϩϯτͷλεΫΛҰ෦ݗҾͰ͖ΔΑ͏ʹͳͬͨ w
(Pͱ5ZQF4DSJQUͰ"1*ͷઃܭ͔Β࣮·Ͱ࡞ΕΔΑ͏ʹ όοΫΤϯυ͔ΒϑϩϯτΤϯυ·ͰϊϯετοϓͰ։ൃͰ͖ΔΑ͏ʹͳͬͨʂ (Pʢ"1*ʣˠ5ZQF4DSJQU "1* ˠ7VFKT ϖʔδσβΠϯͷ࣮
·ͱΊ w ϖύΧϨΤϯδχΞͱͯࣗ͠Ͱ͖ΔΑ͏ͳߏʹͳ͍ͬͯΔ ɾମܥతͳٕज़ ɹ࠷લઢͰݱʹ͍ͭͯಇ͍͍ͯΔΤϯδχΞ͔ΒֶͿ͜ͱ͕Ͱ͖Δ w ϖύϘͰಇ͘ͱ ࣗʹͳʹ͕Γͳͯ͘ɺͲ͏͢ΕΑ͍ͷ͔͕Θ͔Γ͍͢ ఆظతʹߦΘΕΔPOͰৼΓฦΓɺظ͝ͱͷධՁ໘ஊΛ௨ͯ͠লΛ܁Γฦ͢ ΤϯδχΞͱͯ͠ظ͞ΕͯΔ͜ͱΔ͖͜ͱͷํੑ͕ݟ͑ͯ͘Δ
w ·͞ʹʮ͍Δ͚ͩͰͰ͖ΔڥʯΛମײ͢Δ͜ͱ͕Ͱ͖Δ
͍Δ͚ͩͰ Ͱ͖Δڥ
ҰॹʹαʔϏεΛ࡞Γ·ͤΜ͔ʁ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU