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
Recruit Technologies
August 21, 2020
Technology
82k
23
Share
エンジニアとして この先生きのこるために
2020年度リクルート新人ブートキャンプ エンジニアコースの講義資料です
Recruit Technologies
August 21, 2020
More Decks by Recruit Technologies
See All by Recruit Technologies
障害はチャンスだ! 障害を前向きに捉える
rtechkouhou
1
770
Flutter移行の苦労と、乗り越えた先に得られたもの
rtechkouhou
3
12k
ここ数年間のタウンワークiOSアプリのエンジニアのチャレンジ
rtechkouhou
1
1.6k
大規模環境をAWS Transit Gatewayで設計/移行する前に考える3つのポイントと移行への挑戦
rtechkouhou
1
2k
【61期 新人BootCamp】TOC入門
rtechkouhou
3
42k
【RTC新人研修 】 TPS
rtechkouhou
1
42k
Android Boot Camp 2020
rtechkouhou
0
42k
HTML/CSS
rtechkouhou
10
52k
TypeScript Bootcamp 2020
rtechkouhou
9
46k
Other Decks in Technology
See All in Technology
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
300
APIテストとは?
nagix
0
160
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
650
はじめてのDatadog
kairim0
0
250
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
210
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
2.8k
自称宇宙最速で不合格となったAIP-C01にリベンジを果たすべくAIで問題集アプリを作ってみた。
yama3133
0
260
インフラが苦手でも大丈夫! 紙芝居 Kubernetes -WWGT 10周年編-
aoi1
1
310
関西に縁あるMicrosoft MVPsが語るCopilotの未来
kasada
0
880
OpenClawとHermesAgentでAI新入社員を作った話
takanoriyanada
0
150
long-running-tasks
cipepser
2
450
AI駆動開発でなんでもハンズオン環境をつくってみた
yoshimi0227
0
190
Featured
See All Featured
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
The Spectacular Lies of Maps
axbom
PRO
1
770
The Curse of the Amulet
leimatthew05
1
13k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Making Projects Easy
brettharned
120
6.7k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Ruling the World: When Life Gets Gamed
codingconduct
0
240
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
310
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Unsuck your backbone
ammeep
672
58k
How to Ace a Technical Interview
jacobian
281
24k
Transcript
ΤϯδχΞͱͯ͠ ͜ͷઌੜ͖ͷ͜ΔͨΊʹ ాਓ "QS !ϦΫϧʔτςΫϊϩδʔζ
UXBEB U@XBEB UXBEB ాਓ
मɺ༁ɺ༁ͨ͠ຊͨͪ
テスト書いてますか!! ελϯυ໊ϫΠϧυɾαόϯφ
wେֶࡏֶத͔ΒઃܭͱϓϩάϥϛϯάͷΞϧόΠτ Λ࢝ΊΔ wଔۀޙϓϩάϥϚͱͯ͠ͷΩϟϦΞΛ։࢝ wిࢠͷαϒϓϩδΣΫτ ઍਓن ͰϦʔυ ϓϩάϥϚ w91ͷίʔνͱͯ͠ਓͷΞδϟΠϧνʔϜʹࢀՃ wߨԋɺࣥචɺ044׆ಈΛ࢝ΊΔ wݱࡏٕज़ސۀΛߦ͍ͬͯΔ
ΩϟϦΞతͳͷ
ΑΖ͓͘͠ئ͍͠·͢
None
None
ֶͼଓ͚Δ࢟
lৗʹ͋ͳͨͷ ࣝϙʔτϑΥϦΦ ʹࢿ͢Δ͜ͱz
ٕज़ΛֶͿͷͰ ͳ͘ɺٕज़ͷ ֶͼํΛֶͿ
Agenda ֶͼํΛֶͿ ݱϓϩάϥϚͰ͍ΔͨΊʹ ͓ΘΓʹ
࢛ظຖʹٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖগͳ͘ͱͭͷݴޠΛֶश͢Δ ͷճΓΛϓϩάϥϛϯάରʹ͢Δ ΞτϓοτΛߦ͏
l࢛ظຖʹ ٕज़ॻΛಡΉz
None
感覚記憶 0.5 〜 2sec 短期記憶 15 〜 30 sec 長期記憶
死ぬまで? ֶͼͷΈ
ΠϯσοΫεΛ࡞Δ ピッカーを育てる = 反復練習 何度も長期記憶から出し入れする 荷物を他の荷物とくっつける 連想記憶を育てる
1999 2000 2001 2002 2003 2004 2005 2006 ͨͱ͑ɺ࣌ܥྻʹฒΔ
࢛ظຖʹٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖগͳ͘ͱͭͷݴޠΛֶश͢Δ ͷճΓΛϓϩάϥϛϯάରʹ͢Δ ΞτϓοτΛߦ͏
lखΛಈ͔͠ ֶͯͿz
Ͱ͖Δ ͖ʹͳΔ Δ ҹਖ਼ͷଓ ࠜݩ͕૿͑Εઌ૿͑Δɻ ࠜݩ͕ݮΕઌݮΔ
σʔϧͷԁਲ਼
ࣸܦ
IUUQUXJUUFSDPNU@XBEBTUBUVTFT
࢛ظຖʹٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖগͳ͘ͱͭͷݴޠΛֶश͢Δ ͷճΓΛϓϩάϥϛϯάରʹ͢Δ ΞτϓοτΛߦ͏
lຖগͳ͘ͱ ҰͭͷݴޠΛ ֶश͢Δz
ୈೋͷݴޠʹɺੋඇͱɺ࠷ॳͷݴޠͱύϥμΠϜ ͷҧ͏ݴޠΛબͿ͖Ͱ͢ɻͦΕͳ͔ͥͱ͍͏ͱɺύ ϥμΠϜͷҧ͏ݴޠΛֶͿͱɺΞϧΰϦζϜɺΠσΟΦ Ϝɺύλʔϯͷ࣮ʹ͍ͭͯݏͰߟ͑ΔΑ͏ʹͳΔ͔ ΒͰ͢ɻ ಉ༷ͷΞϧΰϦζϜΛ࣮͢Δʹͯ͠ɺ৭ʑͳΓ͔ ͕ͨ͋ΓಘΔ͜ͱʹؾ͖ͮ·͢ɻ͜ͷମݧ͕ɺϓϩάϥ Ϛͷٕज़Λେ্͖ͤ͘͞·͢ɻ ϓϩάϥϛϯάݴޠෳशಘ͖͢
"OEZ)VOUͱ%BWF5IPNBTɺଟ͘ͷਓʹӨڹΛ༩ ͑ͨஶॻʰୡਓϓϩάϥϚʔʱͷதͰɺʮຖɺ৽ͨͳ ϓϩάϥϛϯάݴޠΛֶͭͿ͜ͱʯͱקΊ͍ͯ· ͢ɻࢲͦͷΞυόΠεʹै͍ɺաڈԿ͔ͷؒʹ࣮ࡍ ʹଟ͘ͷݴޠΛֶΜͰ͖·ͨ͠ɻ ͦͯ͠ɺͦͷதͰʮݴޠΛֶͿͱ͍͏ͷɺͨͩจ๏ɺ ߏจΛֶͿ͜ͱͰͳ͘ɺͦͷഎܠʹ͋ΔจԽֶͿ ͜ͱʯͱ͍͏ॏཁͳڭ܇Λಘ·ͨ͠ɻ ݴޠ͚ͩͰͳ͘จԽֶͿ
http://www.thoughtworks.com/radar/languages-and-frameworks
http://www.thoughtworks.com/radar/languages-and-frameworks
http://www.thoughtworks.com/radar/languages-and-frameworks
http://www.thoughtworks.com/radar/languages-and-frameworks
http://www.thoughtworks.com/radar/languages-and-frameworks
lӳޠ͕Ͱ͖ΔΑ͏ʹͳΔͱ͍͏ͷɺ ʮେ͖ͳਤॻؗͷ伴ʯΛ͞ΕΔΑ͏ͳ ͷͰ͢ɻҰਓͻͱΓͷਓੜʹ͍ΖΜͳ ՄೳੑΛ༩͑ͯ͘Ε·͢z ߴদचࢠ http://blogos.com/article/85541/ ٕज़ऀͱӳޠ
࢛ظຖʹٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖগͳ͘ͱͭͷݴޠΛֶश͢Δ ͷճΓΛϓϩάϥϛϯάରʹ͢Δ ΞτϓοτΛߦ͏
ͷճΓΛ ϓϩάϥϛϯά ରʹ͢Δ
ϓϩάϥϚ͚ͷຊͷमऀ Ͳ͏͋Δ͖͔
ϓϩάϥϚΒ͘͠ ଵଦɺၗຫɺؾ ϓϨʔϯςΩετΛΉ ͯ͢Λόʔδϣϯཧ͢Δ ͯ͢ΛࣗಈԽ͢Δ มԽΛ๊༴͢Δ
ϓϩάϥϚΒ͘͠ ݪߘNBSLEPXOܗࣜ ݪจεΫϨΠϐϯάͯ͠औಘ HJUΛ͍όʔδϣϯཧ IFSPLVʹQVTIͯ͠αΠτʹө मࠩEPDEJGGͰදࣔ
None
None
࠷ۙͭͬͨ͘ͷ ࢠҭͯڭҭؔͷ -*/&#PU "NB[PO"MFYB4LJMM ͳͲ
࢛ظຖʹٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖগͳ͘ͱͭͷݴޠΛֶश͢Δ ͷճΓΛϓϩάϥϛϯάରʹ͢Δ ΞτϓοτΛߦ͏
Ξτϓο τΛߦ͏
σʔϧͷԁਲ਼
https://twitter.com/ProfFeynman/status/981943455508148225
Πϯϓοτ Ξτϓοτ ਖ਼ͷϑΟʔυόοΫϧʔϓ ҹਖ਼ͷଓ ࠜݩ͕૿͑Εઌ૿͑Δɻ ࠜݩ͕ݮΕઌݮΔ
ྔ࣭ʹసԽ͢Δ http://d.hatena.ne.jp/KZR/20080808/p1
CMPHΛॻ͘
lใൃ৴ɺCMPH ൃ ද ެ։ͳͲɺֶͷ ະղܾͷ ূ໌Ͱ ͳ͘ɺྉཧͷΑ͏ͳ ͷz
ࣥච͢Δ ·ͣࡶࢽ͔Β
HJIZPKQͷ࿈ࡌ ʰʦಈըͰղઆʧాਓͷlςετۦಈ։ൃzߨ࠲ʱ IUUQHJIZPKQEFWTFSJBMUEE શճͯ͢ಈը͖ղઆ χίχίಈըͰݟΕ·͢ 8&# %#աڈهࣄͷಛઃαΠτͱಈը
ίʔυΛެ։͢Δ
assert(typeof item.id === 'strong') | | | | | |
| false | | "foo" | Item{id:"foo",name:"bar"} "string" --- [string] 'strong' +++ [string] typeof item.id @@ -1,6 +1,6 @@ str -o +i ng power-assert IUUQTHJUIVCDPNQPXFSBTTFSUKTQPXFSBTTFSU
ߨԋ͢Δ
ϥΠϒίʔσΟϯά͕࠷ϋΠϦεΫϋΠϦλʔϯ
w5XJUUFS wCMPH 2JJUB wࡶࢽهࣄ 8FC ࢴഔମ ిࢠഔମ wॻ੶ ڞஶ
༁ ༁ ୯ஶ wߨԋ ࣾษڧձ ࣾ֎-5 ࣾ֎ߨԋ wϥΠϒίʔσΟϯά w(JU)VC Ξτϓοτͷνϟωϧ
JOUFSWBM
Agenda ֶͼํΛֶͿ ݱϓϩάϥϚͰ͍ΔͨΊʹ ͓ΘΓʹ
ຖίʔυΛॻ͘ Լ͔ΒֶͿ աڈ͔ΒະདྷΛݟΔ ਓͷͭ͘ΔӔΛݟΔ େࣄͳ͜ͱʹूத͢Δ
ຖίʔυΛ ॻ͘
w K2VFSZ࡞ऀ+PIO3FTJHिʹࣗͷϓϩ μΫτ։ൃΛؤுΖ͏ͱ͕ͨ͠ɺࣦഊɻ w ฏͱಉ͡അྗͰॻ͚ͳ͍ w શͯͷि͕ۭ͍͍ͯΔΘ͚Ͱͳ͍ w Ұिؒ ͋Δ͍ೋिؒ
͍ɻίʔυ ΛΕͯ͠·͏ w ͦ͜Ͱ+PIO3FTJH͕ߦͬͨ͜ͱʜʜ ͋ͷ+PIO3FTJHͰ͏·͍͔͘ͳ͍͜ͱ
IUUQFKPIOPSHCMPHXSJUFDPEFFWFSZEBZ
ຖίʔυΛॻ͘͜ͱɻϒϩάɺυΩϡϝϯ τɺͦͷଞίʔυΛॻ͍ͨΒͬͯΑ͍ɻ ҙຯͷ͋ΔίʔυΛॻ͘͜ͱɻΠϯσϯτ ϑΥʔϚοτͷमਖ਼ɺՄೳͳΒϦϑΝΫ λϦϯάίʔυॻ͖ʹΧϯτ͠ͳ͍ɻ ਂ࣌લʹऴΘΒͤΔ͜ͱɻ ॻ͍ͨίʔυΛHJUIVCͰશͯ044ʹ͢Δ ͜ͱɻ ࢛ͭͷϧʔϧ IUUQFKPIOPSHCMPHXSJUFDPEFFWFSZEBZ
࣌ͷ !KFSFTJHͷHJUIVCQSPpMF IUUQTHJUIVCDPNKFSFTJH
w ඞཁ࠷খݶͷίʔυͷूதҰʙ࣌ؒఔͰҙ ຯͷ͋ΔίʔυΛॻ͘͜ͱ͕ڧ͍ΒΕΔ ٳʹͬͱ ͔͚ΒΕΔ w ϓϩάϥϛϯάͷश׳ԽHJUIVCʹΛੜ͢ͷ͕తͰ ͳ͍ɻࣗͰࣗࣗͷͨΊʹੜ׆श׳Λม͑Δͷ͕େ ࣄ
w ෆ҆ͱͷઓ͍ҎલʮेʹʯਐΜͰ͍Δ͔ɺʮे ʹʯ͍ͯ͠Δ͔ɺෆ͕҆͋ͬͨɻຖίʔυΛॻ͍ͯ ΈͯɺਐΜͰ͍Δͱ͍͏࣮ײɺ࣮ࡍͷਐḿͱಉ͘͡Β͍ ॏཁͩͱ͍͏ؾ͖ͮΛಘͨ +PIO3FTJHʹىͬͨ͜มԽ
w िͷա͔ͨ͝͠Ҏલ։ൃͷશͯΛिʹṌ͚ࣦͯ ഊ͍͕ͯͨ͠ɺ͍·िͦΕ΄ͲॏཁͰͳ͘ͳ ΓɺϦΞϧϥΠϑΛॆ࣮Ͱ͖ΔΑ͏ʹͳͬͨ w όοΫάϥϯυॲཧࢄาதɺγϟϫʔதɺৗʹίʔ υͷ͜ͱΛόοΫάϥϯυͰߟ͑ΔΑ͏ʹͳΓɺྑ ͍ΞΠσΞ͕ු͔ͿΑ͏ʹͳͬͨ w ίϯςΫετεΠονҎલिʹҰճͷ։ൃͩͬͨͷ
ͰίϯςΫετεΠονͷίετ͕͕͋ͬͨɺ͍· ຖͳͷͰͦΕ͕ͳ͍ +PIO3FTJHʹىͬͨ͜มԽ
w ϫʔΫϥΠϑόϥϯεࣄੜ׆ࣗͷϓϩδΣΫτ ͷόϥϯεͷऔΓํ͕͔ͬͨͷ͕࠷େͷऩ֭ͩͬͨɻ ຖΔͱ͍͏͜ͱɺόϥϯεΛऔΔͱ͍͏͜ͱ w ·ΘΓ͔ΒͷཧղʮຖίʔυΛॻ͘ʯͱ͍͏श׳Λ ެݴͨ͜͠ͱͰɺύʔτφʔ͔ΒͷཧղಘΒΕΔΑ͏ ʹͳͬͨ w ͲΕ͚ͩίʔυΛॻ͍͔ͨ͜ͷश׳Λଓ͚Δͱॻ͘
ίʔυΞτϓοτࣗͰ֮͑ΒΕͳ͍͘Β͍ͷ ྔʹͳΓɺॆ࣮ײΛಘΒΕΔ +PIO3FTJHʹىͬͨ͜มԽ
ʮ͍·ɺখ͞ͳ͜ͱΛଟ͘ੵΈ্ ͛Δ͜ͱ͕ɺͱΜͰͳ͍ͱ͜Ζ ߦͨͩ͘ͻͱͭͷಓͳΜͩͳͱ ͍͏;͏ʹײ͍ͯ͡·͢ʯ Πνϩʔ͕ʹ/#"ؒ࠷ଟ҆ଧΛߋ৽ͨ͠ͱ͖ͷݴ༿
ࢲ݁ߏଓ͚·ͨ͠
ࣄྫ
ݱࡏͷ!KFSFTJHͷHJUIVCQSPpMF IUUQTHJUIVCDPNKFSFTJH
࢝ൃӺۙ͘ʹॅΈɺ࠲ΕΔՄೳੑΛίϯτϩʔϧ͢Δ
ຖίʔυΛॻ͘ Լ͔ΒֶͿ աڈ͔ΒະདྷΛݟΔ ਓͷͭ͘ΔӔΛݟΔ େࣄͳ͜ͱʹूத͢Δ
Լ͔Β ֶͿ
lҰੜϓϩάϥϚʔͰ͍ ΕΔ͔Ͳ͏͔ɺݴ͍ ͑ΕԼ͔Βֶ Δ͔൱͔ɻz
Ͱ͖Δ ͖ʹͳΔ աద߹ͱλίπϘԽ ҹਖ਼ͷଓ ࠜݩ͕૿͑Εઌ૿͑Δɻ ࠜݩ͕ݮΕઌݮΔ
wఆظతʹࣗͷεΩϧΛ୨Է͢͠Δ wੵۃతʹ֎෦ʹग़ͯɺࣗͷεΩϧΛ ૬ରԽ͢Δ w͏ಓ۩Λఆظతʹม͑Δ wະͷίϛϡχςΟʹࢀՃ͢Δ wएऀ͔ΒֶͿ wएऀͱಉ͡ඨͰڝ͏ ϕϯνϚʔΫͱΞϯϥʔχϯά
ペアプログラミング ベテランにはアンラーニングのチャンス
ຖίʔυΛॻ͘ Լ͔ΒֶͿ աڈ͔ΒະདྷΛݟΔ ਓͷͭ͘ΔӔΛݟΔ େࣄͳ͜ͱʹूத͢Δ
աڈ͔Β ະདྷΛΔ
ٕज़ʮৼΓࢠʯ
ٕज़ʮΒͤΜʯ
IUUQTTQFBLFSEFDLDPNUXBEBVOEFSTUBOEJOHUIFTQJSBMPGUFDIOPMPHJFT
IUUQXXXQVCMJDLFZKQCMPHIUNM
IUUQTGVLBCPSJGN
ʮ5ࣈܕʯͰͳ͘ෳͷபΛ
ຖίʔυΛॻ͘ Լ͔ΒֶͿ աڈ͔ΒະདྷΛݟΔ ਓͷͭ͘ΔӔΛݟΔ େࣄͳ͜ͱʹूத͢Δ
ਓͷͭ͘Δ ӔΛݟΔ
৫ͷ͔࣌Βݸਓͷ࣌
ݸ͕ଟ͘ू·ΔͱԿ͔͕ى͜Δ
ϩʔυϚοϓࢦ͔ΒΤίγεςϜࢦ
IUUQEIBUFOBOFKQFTTBQ
l͔͠͠ɺࠓͷۀքɺʮΤίγεςϜʯͷ࣌ͩɻ ଳӍྛͷΑ͏ʹɺ৯͍͍͋ͭͭڞੜ͋͠͏͞·͟ͳ λΠϓͷϓϨΠϠʔ͕ɺࣗͷҝ͚ͩͷݸผͷҙࢥܾ ఆΛͯ͠ɺͦͷ૬ޓ࡞༻Ͱٕज़͕ൃల͍ͯ͘͠ɻʮΤ ίγεςϜʯໃ६ͩΒ͚Ͱɺ͋Δٕज़͕ൃల͢Δͷ ͱಉ࣌ʹɺͦͷΞϯνςʔθͱͳΔٕज़৳ͼΔz lʮϩʔυϚοϓʯ͕ࢦࣔ͢͠ະདྷͷํͱҧ͏ํ ʹਐΉ͜ͱக໋తͳؒҧ͍͕ͩɺʮΤίγεςϜʯ Ή͠Ζத৺෦͕ϨουΦʔγϟϯͰɺपล෦ʹੜ͖ Γ͕༰қͳϒϧʔΦʔγϟϯ͕͋Δz
IUUQEIBUFOBOFKQFTTBQ
lී௨ͷਓʮϩʔυϚοϓʯ ͷதͰਅΜதΛਐΉ͖Ͱɺ ʮΤίγεςϜʯͷதͰਅΜ தΛආ͚Δ͖ͩz IUUQEIBUFOBOFKQFTTBQ
IUUQDIBTFOPSHdEBJUJNUFYUXPSTFJTCFUUFSKBIUNM 5IF3JTFPGl8PSTFJT#FUUFSz
IUUQTUXJUUFSDPNU@XBEBTUBUVT
IUUQTTQFBLFSEFDLDPNUXBEBXPSTFJTCFUUFSVOEFSTUBOEJOHUIFTQJSBMPGUFDIOPMPHJFTFEJUJPO
ຖίʔυΛॻ͘ Լ͔ΒֶͿ աڈ͔ΒະདྷΛݟΔ ਓͷͭ͘ΔӔΛݟΔ େࣄͳ͜ͱʹूத͢Δ
େࣄͳ͜ͱʹ ूத͢Δ
IUUQTXXXBNB[PODPKQEQ
None
Agenda ֶͼํΛֶͿ ݱϓϩάϥϚͰ͍ΔͨΊʹ ͓ΘΓʹ
ֶͼଓ͚Δ࢟
ٕज़ΛֶͿͷͰ ͳ͘ɺٕज़ͷ ֶͼํΛֶͿ
ތΓ͋Δϓϩʹͳ͍ͬͯͩ͘͞ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠