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.3k
スーパーエンジニアを「育て」られるか? / 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.2k
Nuxt.js のbuid速度が早くなるオプションのいくつかについて / Increase-build-speed-for-Nuxt.js
sunecosuri
1
1.3k
about-vue-hooks.pdf
sunecosuri
1
680
Nuxt.js におけるCSPの連携について / content security policy for Nuxt.js
sunecosuri
0
2.3k
ロリポップマネージドクラウドでAlexaスキルを開発しよう / let's development alexa skill by lolipop managed cloud
sunecosuri
1
160
マネージドクラウドのリリース速度を上げるお話 / Increase release speed for managed cloud
sunecosuri
2
310
Reconsider Content Security Policy for WEB Application
sunecosuri
0
84
Other Decks in Programming
See All in Programming
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
900
ヤプリ新卒SREの オンボーディング
masaki12
0
130
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
940
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
250
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
990
最新TCAキャッチアップ
0si43
0
190
受け取る人から提供する人になるということ
little_rubyist
0
250
ローコードSaaSのUXを向上させるためのTypeScript
taro28
1
630
Ethereum_.pdf
nekomatu
0
470
Contemporary Test Cases
maaretp
0
140
Functional Event Sourcing using Sekiban
tomohisa
0
100
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
6
1.7k
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Docker and Python
trallard
40
3.1k
A Modern Web Designer's Workflow
chriscoyier
693
190k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Designing for humans not robots
tammielis
250
25k
Writing Fast Ruby
sferik
627
61k
Bash Introduction
62gerente
608
210k
Producing Creativity
orderedlist
PRO
341
39k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Side Projects
sachag
452
42k
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