$30 off During Our Annual Pro Sale. View Details »

エンジニアとしてこの先生きのこるために

 エンジニアとしてこの先生きのこるために

2018年4~5月開催「ブートキャンプ特別講座」の資料になります。

Recruit Technologies

July 19, 2018
Tweet

More Decks by Recruit Technologies

Other Decks in Technology

Transcript

  1. ΤϯδχΞͱͯ͠
    ͜ͷઌੜ͖ͷ͜ΔͨΊʹ
    ࿨ా୎ਓ
    "QS !ϦΫϧʔτςΫϊϩδʔζ

    View Slide

  2. UXBEB
    U@XBEB
    UXBEB
    ࿨ా୎ਓ

    View Slide

  3. ؂मɺ؂༁ɺ຋༁ͨ͠ຊͨͪ

    View Slide

  4. テスト書いてますか!!
    ελϯυ໊ϫΠϧυɾαόϯφ

    View Slide

  5. 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

    View Slide

  6. wେֶࡏֶத͔ΒઃܭͱϓϩάϥϛϯάͷΞϧόΠτ
    Λ࢝ΊΔ
    wଔۀޙϓϩάϥϚͱͯ͠ͷΩϟϦΞΛ։࢝
    wిࢠ੓෎ͷαϒϓϩδΣΫτ ਺ઍਓن໛
    ͰϦʔυ
    ϓϩάϥϚ
    w91ͷίʔνͱͯ͠ਓͷΞδϟΠϧνʔϜʹࢀՃ
    wߨԋɺࣥචɺ044׆ಈΛ࢝ΊΔ
    wݱࡏ͸ʮྲྀ͠ͷϖΞϓϩۀʯΛߦ͍ͬͯΔ
    ΩϟϦΞతͳ΋ͷ

    View Slide

  7. ΑΖ͓͘͠ئ͍͠·͢

    View Slide

  8. View Slide

  9. ֶͼଓ͚Δ࢟੎

    View Slide

  10. lৗʹ͋ͳͨͷ
    ஌ࣝϙʔτϑΥϦΦ
    ʹ౤ࢿ͢Δ͜ͱz

    View Slide

  11. ٕज़ΛֶͿͷͰ
    ͸ͳ͘ɺٕज़ͷ
    ֶͼํΛֶͿ

    View Slide

  12. Agenda
    ֶͼํΛֶͿ
    ݱ໾ϓϩάϥϚͰ͍ΔͨΊʹ
    ͓ΘΓʹ

    View Slide

  13. ࢛൒ظຖʹٕज़ॻΛಡΉ
    खΛಈֶ͔ͯ͠Ϳ
    ຖ೥গͳ͘ͱ΋ͭͷݴޠΛֶश͢Δ
    ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ
    Ξ΢τϓοτΛߦ͏

    View Slide

  14. l࢛൒ظຖʹ
    ٕज़ॻΛಡΉz

    View Slide

  15. View Slide

  16. 感覚記憶
    0.5 〜 2sec
    短期記憶
    15 〜 30 sec
    長期記憶
    死ぬまで?
    ֶͼͷ࢓૊Έ

    View Slide

  17. ೴಺ΠϯσοΫεΛ࡞Δ
    ピッカーを育てる = 反復練習
    何度も長期記憶から出し入れする
    荷物を他の荷物とくっつける
    連想記憶を育てる

    View Slide

  18. 1999 2000 2001 2002 2003 2004 2005 2006
    ͨͱ͑͹ɺ࣌ܥྻʹฒ΂Δ

    View Slide

  19. ࢛൒ظຖʹٕज़ॻΛಡΉ
    खΛಈֶ͔ͯ͠Ϳ
    ຖ೥গͳ͘ͱ΋ͭͷݴޠΛֶश͢Δ
    ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ
    Ξ΢τϓοτΛߦ͏

    View Slide

  20. lखΛಈ͔͠
    ֶͯͿz

    View Slide

  21. Ͱ͖Δ
    ޷͖ʹͳΔ
    ΍Δ

    View Slide

  22. σʔϧͷԁਲ਼

    View Slide

  23. ࣸܦ

    View Slide

  24. IUUQUXJUUFSDPNU@XBEBTUBUVTFT

    View Slide

  25. ࢛൒ظຖʹٕज़ॻΛಡΉ
    खΛಈֶ͔ͯ͠Ϳ
    ຖ೥গͳ͘ͱ΋ͭͷݴޠΛֶश͢Δ
    ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ
    Ξ΢τϓοτΛߦ͏

    View Slide

  26. lຖ೥গͳ͘ͱ΋
    ҰͭͷݴޠΛ
    ֶश͢Δz

    View Slide

  27. http://www.thoughtworks.com/radar/languages-and-frameworks
    5IPVHIU8PSLT5FDIOPMPHZ3BEBS

    View Slide

  28. http://www.thoughtworks.com/radar/languages-and-frameworks

    View Slide

  29. http://www.thoughtworks.com/radar/languages-and-frameworks

    View Slide

  30. lӳޠ͕Ͱ͖ΔΑ͏ʹͳΔͱ͍͏ͷ͸ɺ
    ʮେ͖ͳਤॻؗͷݤʯΛ౉͞ΕΔΑ͏ͳ
    ΋ͷͰ͢ɻҰਓͻͱΓͷਓੜʹ͍ΖΜͳ
    ՄೳੑΛ༩͑ͯ͘Ε·͢z
    ŠŠߴদचࢠ
    http://blogos.com/article/85541/
    ٕज़ऀͱӳޠʹ͍ͭͯ

    View Slide

  31. ࢛൒ظຖʹٕज़ॻΛಡΉ
    खΛಈֶ͔ͯ͠Ϳ
    ຖ೥গͳ͘ͱ΋ͭͷݴޠΛֶश͢Δ
    ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ
    Ξ΢τϓοτΛߦ͏

    View Slide

  32. ਎ͷճΓΛ
    ϓϩάϥϛϯά
    ର৅ʹ͢Δ

    View Slide

  33. ϓϩάϥϚ޲͚ͷຊͷ؂मऀ͸
    Ͳ͏͋Δ΂͖͔

    View Slide

  34. ϓϩάϥϚΒ͘͠
    ଵଦɺၗຫɺ୹ؾ
    ϓϨʔϯςΩετΛ޷Ή
    ͢΂ͯΛόʔδϣϯ؅ཧ͢Δ
    ͢΂ͯΛࣗಈԽ͢Δ
    มԽΛ๊༴͢Δ

    View Slide

  35. ϓϩάϥϚΒ͘͠
    ݪߘ͸NBSLEPXOܗࣜ
    ݪจ͸εΫϨΠϐϯάͯ͠औಘ
    HJUΛ࢖͍όʔδϣϯ؅ཧ
    IFSPLVʹQVTIͯ͠αΠτʹ൓ө
    ؂मࠩ෼͸EPDEJGGͰදࣔ

    View Slide

  36. View Slide

  37. View Slide

  38. ࢛൒ظຖʹٕज़ॻΛಡΉ
    खΛಈֶ͔ͯ͠Ϳ
    ຖ೥গͳ͘ͱ΋ͭͷݴޠΛֶश͢Δ
    ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ
    Ξ΢τϓοτΛߦ͏

    View Slide

  39. Ξ΢τϓο
    τΛߦ͏

    View Slide

  40. σʔϧͷԁਲ਼

    View Slide

  41. https://twitter.com/ProfFeynman/status/981943455508148225

    View Slide

  42. Πϯϓοτ
    Ξ΢τϓοτ
    ਖ਼ͷϑΟʔυόοΫϧʔϓ

    View Slide

  43. ྔ͸࣭ʹసԽ͢Δ
    http://d.hatena.ne.jp/KZR/20080808/p1

    View Slide

  44. CMPHΛॻ͘

    View Slide

  45. l৘ใൃ৴ɺCMPH ൃ
    ද ެ։ͳͲ͸ɺ਺ֶͷ
    ະղܾ໰୊ͷ
    ূ໌Ͱ
    ͸ͳ͘ɺྉཧͷΑ͏ͳ
    ΋ͷz

    View Slide

  46. ࣥච͢Δ ·ͣ͸ࡶࢽ͔Β

    View Slide

  47. ίʔυΛެ։͢Δ

    View Slide

  48. ߨԋ͢Δ

    View Slide

  49. w5XJUUFS
    wCMPH 2JJUB౳
    wࡶࢽهࣄ 8FC ࢴഔମ ిࢠഔମ

    wॻ੶ ڞஶ ຋༁ ؂༁ ୯ஶ

    wߨԋ ࣾ಺ษڧձ ࣾ֎-5 ࣾ֎ߨԋ

    wϥΠϒίʔσΟϯά
    w(JUIVC
    Ξ΢τϓοτͷνϟωϧ

    View Slide

  50. JOUFSWBM

    View Slide

  51. Agenda
    ֶͼํΛֶͿ
    ݱ໾ϓϩάϥϚͰ͍ΔͨΊʹ
    ͓ΘΓʹ

    View Slide

  52. ຖ೔ίʔυΛॻ͘
    ೥Լ͔ΒֶͿ
    աڈ͔ΒະདྷΛݟΔ
    ਓͷͭ͘ΔӔΛݟΔ
    େࣄͳ͜ͱʹूத͢Δ

    View Slide

  53. ຖ೔ίʔυΛ
    ॻ͘

    View Slide

  54. w K2VFSZ࡞ऀ+PIO3FTJH͸ि຤ʹࣗ෼ͷϓϩ
    μΫτ։ൃΛؤுΖ͏ͱ͕ͨ͠ɺࣦഊɻ
    w ฏ೔ͱಉ͡അྗͰ͸ॻ͚ͳ͍
    w શͯͷि຤͕ۭ͍͍ͯΔΘ͚Ͱ͸ͳ͍
    w Ұिؒ ͋Δ͍͸ೋिؒ
    ͸௕͍ɻίʔυ
    Λ๨Εͯ͠·͏
    w ͦ͜Ͱ+PIO3FTJH͕ߦͬͨ͜ͱ͸ʜʜ
    ͋ͷ+PIO3FTJHͰ΋͏·͍͔͘ͳ͍͜ͱ

    View Slide

  55. IUUQFKPIOPSHCMPHXSJUFDPEFFWFSZEBZ

    View Slide

  56. ຖ೔ίʔυΛॻ͘͜ͱɻϒϩάɺυΩϡϝϯ
    τɺͦͷଞ͸ίʔυΛॻ͍ͨΒ΍ͬͯΑ͍ɻ
    ҙຯͷ͋ΔίʔυΛॻ͘͜ͱɻΠϯσϯτ
    ΍ϑΥʔϚοτͷमਖ਼ɺՄೳͳΒ͹ϦϑΝΫ
    λϦϯά΋ίʔυॻ͖ʹ͸Χ΢ϯτ͠ͳ͍ɻ
    ਂ໷࣌લʹऴΘΒͤΔ͜ͱɻ
    ॻ͍ͨίʔυΛHJUIVCͰશͯ044ʹ͢Δ
    ͜ͱɻ
    ࢛ͭͷϧʔϧ
    IUUQFKPIOPSHCMPHXSJUFDPEFFWFSZEBZ

    View Slide

  57. ౰࣌ͷ
    !KFSFTJHͷHJUIVCQSPpMF
    IUUQTHJUIVCDPNKFSFTJH

    View Slide

  58. w ඞཁ࠷খݶͷίʔυ΁ͷूதҰ೔෼ʙ࣌ؒఔ౓Ͱҙ
    ຯͷ͋ΔίʔυΛॻ͘͜ͱ͕ڧ͍ΒΕΔ ٳ೔ʹ͸΋ͬͱ
    ͔͚ΒΕΔ

    w ϓϩάϥϛϯάͷश׳ԽHJUIVCʹ૲Λੜ΍͢ͷ͕໨తͰ
    ͸ͳ͍ɻࣗ෼Ͱࣗ෼ࣗ਎ͷͨΊʹੜ׆श׳Λม͑Δͷ͕େ

    w ෆ҆ͱͷઓ͍Ҏલ͸ʮे෼ʹʯਐΜͰ͍Δ͔ɺʮे෼
    ʹʯ׬੒͍ͯ͠Δ͔ɺෆ͕҆͋ͬͨɻຖ೔ίʔυΛॻ͍ͯ
    ΈͯɺਐΜͰ͍Δͱ͍͏࣮ײ͸ɺ࣮ࡍͷਐḿͱಉ͘͡Β͍
    ॏཁͩͱ͍͏ؾ͖ͮΛಘͨ
    +PIO3FTJHʹىͬͨ͜มԽ

    View Slide

  59. w ि຤ͷա͔ͨ͝͠Ҏલ͸։ൃͷશͯΛि຤ʹṌ͚ࣦͯ
    ഊ͍͕ͯͨ͠ɺ͍·΍ि຤͸ͦΕ΄ͲॏཁͰͳ͘ͳΓɺ
    ϦΞϧϥΠϑΛॆ࣮Ͱ͖ΔΑ͏ʹͳͬͨ
    w όοΫάϥ΢ϯυॲཧࢄาதɺγϟϫʔதɺৗʹίʔ
    υͷ͜ͱΛόοΫάϥ΢ϯυͰߟ͑ΔΑ͏ʹͳΓɺྑ
    ͍ΞΠσΞ͕ු͔ͿΑ͏ʹͳͬͨ
    w ίϯςΫετεΠονҎલ͸िʹҰճͷ։ൃͩͬͨͷ
    ͰίϯςΫετεΠονͷίετ͕͕͋ͬͨɺ͍·͸
    ຖ೔ͳͷͰͦΕ͕ͳ͍
    +PIO3FTJHʹىͬͨ͜มԽ

    View Slide

  60. w ϫʔΫϥΠϑόϥϯε࢓ࣄੜ׆ࣗ෼ͷϓϩδΣΫτ
    ͷόϥϯεͷऔΓํ͕෼͔ͬͨͷ͕࠷େͷऩ֭ͩͬͨɻ
    ຖ೔΍Δͱ͍͏͜ͱ͸ɺόϥϯεΛऔΔͱ͍͏͜ͱ
    w ·ΘΓ͔Βͷཧղʮຖ೔ίʔυΛॻ͘ʯͱ͍͏श׳Λ
    ެݴͨ͜͠ͱͰɺύʔτφʔ͔Βͷཧղ΋ಘΒΕΔΑ
    ͏ʹͳͬͨ
    w ͲΕ͚ͩίʔυΛॻ͍͔ͨ͜ͷश׳Λଓ͚Δͱॻ͘
    ίʔυ΍Ξ΢τϓοτ͸ࣗ෼Ͱ΋֮͑ΒΕͳ͍͘Β͍
    ͷྔʹͳΓɺॆ࣮ײΛಘΒΕΔ
    +PIO3FTJHʹىͬͨ͜มԽ

    View Slide

  61. ݱࡏͷ!KFSFTJHͷHJUIVCQSPpMF
    IUUQTHJUIVCDPNKFSFTJH

    View Slide

  62. ࢲ΋݁ߏଓ͚·ͨ͠

    View Slide

  63. ࣄྫ

    View Slide

  64. ॅΉ৔ॴΛ޻෉͢Δ

    View Slide

  65. ҙਤతʹΦϑϥΠϯ࣌ؒΛͭ͘Δ

    View Slide

  66. ຖ೔ίʔυΛॻ͘
    ೥Լ͔ΒֶͿ
    աڈ͔ΒະདྷΛݟΔ
    ਓͷͭ͘ΔӔΛݟΔ
    େࣄͳ͜ͱʹूத͢Δ

    View Slide

  67. ೥Լ͔Β
    ֶͿ

    View Slide

  68. lҰੜϓϩάϥϚʔͰ͍
    ΕΔ͔Ͳ͏͔͸ɺݴ͍
    ׵͑Ε͹೥Լ͔Βֶ΂
    Δ͔൱͔ɻz

    View Slide

  69. Ͱ͖Δ
    ޷͖ʹͳΔ
    ա৒ద߹ͱλίπϘԽ

    View Slide

  70. wఆظతʹࣗ෼ͷεΩϧΛ୨Է͢͠Δ
    wੵۃతʹ֎෦ʹग़ͯɺࣗ෼ͷεΩϧΛ
    ૬ରԽ͢Δ
    w࢖͏ಓ۩Λఆظతʹม͑Δ
    wະ஌ͷίϛϡχςΟʹࢀՃ͢Δ
    wएऀ͔ΒֶͿ
    wएऀͱಉ͡౔ඨͰڝ͏
    ϕϯνϚʔΫͱΞϯϥʔχϯά

    View Slide

  71. ペアプログラミング
    ベテランにはアンラーニングのチャンス

    View Slide

  72. ຖ೔ίʔυΛॻ͘
    ೥Լ͔ΒֶͿ
    աڈ͔ΒະདྷΛݟΔ
    ਓͷͭ͘ΔӔΛݟΔ
    େࣄͳ͜ͱʹूத͢Δ

    View Slide

  73. աڈ͔Β
    ະདྷΛ஌Δ

    View Slide

  74. ٕज़͸ʮৼΓࢠʯ

    View Slide

  75. ٕज़͸ʮΒͤΜʯ

    View Slide

  76. IUUQTTQFBLFSEFDLDPNUXBEBVOEFSTUBOEJOHUIFTQJSBMPGUFDIOPMPHJFT

    View Slide

  77. IUUQXXXQVCMJDLFZKQCMPHIUNM

    View Slide

  78. ʮ5ࣈܕʯͰ͸ͳ͘ෳ਺ͷபΛ

    View Slide

  79. ຖ೔ίʔυΛॻ͘
    ೥Լ͔ΒֶͿ
    աڈ͔ΒະདྷΛݟΔ
    ਓͷͭ͘ΔӔΛݟΔ
    େࣄͳ͜ͱʹूத͢Δ

    View Slide

  80. ਓͷͭ͘Δ
    ӔΛݟΔ

    View Slide

  81. ૊৫ͷ࣌୅͔Βݸਓͷ࣌୅΁

    View Slide

  82. ݸ͕ଟ͘ू·ΔͱԿ͔͕ى͜Δ

    View Slide

  83. ϩʔυϚοϓࢦ޲͔ΒΤίγεςϜࢦ޲΁

    View Slide

  84. IUUQEIBUFOBOFKQFTTBQ

    View Slide

  85. l͔͠͠ɺࠓͷۀք͸ɺʮΤίγεςϜʯͷ࣌୅ͩɻ
    ೤ଳӍྛͷΑ͏ʹɺ৯͍͍͋ͭͭڞੜ͋͠͏͞·͟ͳ
    λΠϓͷϓϨΠϠʔ͕ɺࣗ෼ͷҝ͚ͩͷݸผͷҙࢥܾ
    ఆΛͯ͠ɺͦͷ૬ޓ࡞༻Ͱٕज़͕ൃల͍ͯ͘͠ɻʮΤ
    ίγεςϜʯ͸ໃ६ͩΒ͚Ͱɺ͋Δٕज़͕ൃల͢Δͷ
    ͱಉ࣌ʹɺͦͷΞϯνςʔθͱͳΔٕज़΋৳ͼΔz
    lʮϩʔυϚοϓʯ͕ࢦࣔ͢͠ະདྷͷํ޲ͱҧ͏ํ޲
    ʹਐΉ͜ͱ͸க໋తͳؒҧ͍͕ͩɺʮΤίγεςϜʯ
    ͸Ή͠Ζத৺෦͕ϨουΦʔγϟϯͰɺपล෦ʹੜ͖
    ࢒Γ͕༰қͳϒϧʔΦʔγϟϯ͕͋Δz
    IUUQEIBUFOBOFKQFTTBQ

    View Slide

  86. lී௨ͷਓ͸ʮϩʔυϚοϓʯ
    ͷதͰ͸ਅΜதΛਐΉ΂͖Ͱɺ
    ʮΤίγεςϜʯͷதͰ͸ਅΜ
    தΛආ͚Δ΂͖ͩz
    IUUQEIBUFOBOFKQFTTBQ

    View Slide

  87. IUUQDIBTFOPSHdEBJUJNUFYUXPSTFJTCFUUFSKBIUNM
    5IF3JTFPGl8PSTFJT#FUUFSz

    View Slide

  88. IUUQTUXJUUFSDPNU@XBEBTUBUVT

    View Slide

  89. ຖ೔ίʔυΛॻ͘
    ೥Լ͔ΒֶͿ
    աڈ͔ΒະདྷΛݟΔ
    ਓͷͭ͘ΔӔΛݟΔ
    େࣄͳ͜ͱʹूத͢Δ

    View Slide

  90. େࣄͳ͜ͱʹ
    ूத͢Δ

    View Slide

  91. IUUQTXXXBNB[PODPKQEQ

    View Slide

  92. Agenda
    ֶͼํΛֶͿ
    ݱ໾ϓϩάϥϚͰ͍ΔͨΊʹ
    ͓ΘΓʹ

    View Slide

  93. ֶͼଓ͚Δ࢟੎

    View Slide

  94. ٕज़ΛֶͿͷͰ
    ͸ͳ͘ɺٕज़ͷ
    ֶͼํΛֶͿ

    View Slide

  95. ތΓ͋Δϓϩʹͳ͍ͬͯͩ͘͞
    ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠

    View Slide