Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ソフトウェアエンジニアとしての姿勢と心構え / Software Engineer's Survival Guide

85da685d91fda190e2e3162d0de248a4?s=47 Recruit
August 19, 2021

ソフトウェアエンジニアとしての姿勢と心構え / Software Engineer's Survival Guide

2021年度リクルート エンジニアコース新人研修の講義資料です

85da685d91fda190e2e3162d0de248a4?s=128

Recruit

August 19, 2021
Tweet

Transcript

  1. ιϑτ΢ΣΞ ΤϯδχΞͱͯ͠ͷ ࢟੎ͱ৺ߏ͑ ࿨ా୎ਓ !U@XBEB "QS !ϦΫϧʔτ

  2. UXBEB U@XBEB UXBEB ࿨ా୎ਓ

  3. खֻ͚ͨຊͨͪ

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

    ΩϟϦΞతͳ΋ͷ
  5. None
  6. None
  7. ֶͼଓ͚Δ࢟੎

  8. l͋ͳͨͷ ஌ࣝϙʔτϑΥϦΦ ʹରͯ͠ఆظతͳ౤ ࢿΛߦ͏͜ͱz

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

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

  11. 感覚記憶 0.5 〜 2sec 短期記憶 15 〜 30 sec 長期記憶

    死ぬまで? ֶͼͷ࢓૊Έ
  12. ೴಺ΠϯσοΫεΛ࡞Δ ピッカーを育てる = 反復練習 何度も長期記憶から出し入れする 荷物を他の荷物とくっつける 連想記憶を育てる

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

  14. l݄ʹ࡭ͷ ϖʔεͰٕज़ॻ ΛಡΉz

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

  17. ॻ੶ͷ࣌୅͔ΒςοΫϒϩάͷ࣌୅΁

  18. ݄ʹ࡭ͷϖʔεͰٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖ೥গͳ͘ͱ΋ݴޠΛֶͭश͢Δ ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ Ξ΢τϓοτΛߦ͏ 👉

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

  20. Ͱ͖Δ Θ͔Δ ΍Δ ໼ҹਖ਼ͷ઀ଓ ࠜݩ͕૿͑Ε͹ઌ΋૿͑Δɻ ࠜݩ͕ݮΕ͹ઌ΋ݮΔ

  21. ࣸܦ

  22. https://twitter.com/t_wada/status/9000231741

  23. ݄ʹ࡭ͷϖʔεͰٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖ೥গͳ͘ͱ΋ݴޠΛֶͭश͢Δ ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ Ξ΢τϓοτΛߦ͏ 👉

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

  25. ୈೋͷݴޠʹ͸ɺੋඇͱ΋ɺ࠷ॳͷݴޠͱ͸ύϥμΠϜ ͷҧ͏ݴޠΛબͿ΂͖Ͱ͢ɻͦΕ͸ͳ͔ͥͱ͍͏ͱɺύ ϥμΠϜͷҧ͏ݴޠΛֶͿͱɺΞϧΰϦζϜɺΠσΟΦ Ϝɺύλʔϯͷ࣮૷ʹ͍ͭͯݏͰ΋ߟ͑ΔΑ͏ʹͳΔ͔ ΒͰ͢ɻ ಉ༷ͷΞϧΰϦζϜΛ࣮૷͢Δʹͯ͠΋ɺ৭ʑͳ΍Γ͔ ͕ͨ͋ΓಘΔ͜ͱʹؾ͖ͮ·͢ɻ͜ͷମݧ͕ɺϓϩάϥ Ϛͷٕज़Λେ͖͘޲্ͤ͞·͢ɻ ϓϩάϥϛϯάݴޠ͸ෳ਺शಘ͢΂͖

  26. "OEZ)VOUͱ%BWF5IPNBT͸ɺଟ͘ͷਓʹӨڹΛ༩ ͑ͨஶॻʰୡਓϓϩάϥϚʔʱͷதͰɺʮຖ೥ɺ৽ͨͳ ϓϩάϥϛϯάݴޠΛͭ͸ֶͿ͜ͱʯͱקΊ͍ͯ· ͢ɻࢲ͸ͦͷΞυόΠεʹै͍ɺաڈԿ೥͔ͷؒʹ࣮ࡍ ʹ਺ଟ͘ͷݴޠΛֶΜͰ͖·ͨ͠ɻ ͦͯ͠ɺͦͷதͰʮݴޠΛֶͿͱ͍͏ͷ͸ɺͨͩจ๏ɺ ߏจΛֶͿ͜ͱͰ͸ͳ͘ɺͦͷഎܠʹ͋ΔจԽ΋ֶͿ ͜ͱʯͱ͍͏ॏཁͳڭ܇Λಘ·ͨ͠ɻ ݴޠ͚ͩͰͳ͘จԽ΋ֶͿ

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

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

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

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

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

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

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

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

  35. ݄ʹ࡭ͷϖʔεͰٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖ೥গͳ͘ͱ΋ݴޠΛֶͭश͢Δ ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ Ξ΢τϓοτΛߦ͏ 👉

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

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

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

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

  40. None
  41. None
  42. ࠷ۙͭͬͨ͘΋ͷ ࢠҭͯ΍ڭҭؔ܎ͷ -*/&#PU "NB[PO"MFYB4LJMM ͳͲ

  43. ݄ʹ࡭ͷϖʔεͰٕज़ॻΛಡΉ खΛಈֶ͔ͯ͠Ϳ ຖ೥গͳ͘ͱ΋ݴޠΛֶͭश͢Δ ਎ͷճΓΛϓϩάϥϛϯάର৅ʹ͢Δ Ξ΢τϓοτΛߦ͏ 👉

  44. Ξ΢τϓο τΛߦ͏

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

  46. Πϯϓοτ Ξ΢τϓοτ ਖ਼ͷϑΟʔυόοΫϧʔϓ ໼ҹਖ਼ͷ઀ଓ ࠜݩ͕૿͑Ε͹ઌ΋૿͑Δɻ ࠜݩ͕ݮΕ͹ઌ΋ݮΔ

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

  48. CMPHΛॻ͘

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

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

  51. ٕज़ಉਓࢽࢢ৔ͷొ৔ https://techbookfest.org/

  52. ίʔυΛެ։͢Δ

  53. ߨԋ͢Δ

  54. Ͱ͖Ε͹ϥΠϒίʔσΟϯάͰ

  55. ಈը഑৴ https://www.youtube.com/watch?v=Q-FJ3XmFlT8

  56. w5XJUUFS wCMPH 2JJUB౳ wࡶࢽهࣄ 8FC ࢴഔମ ిࢠഔମ  wॻ੶ ڞஶ

    ຋༁ ؂༁ ୯ஶ  wߨԋ ࣾ಺ษڧձ ࣾ֎-5 ࣾ֎ߨԋ  wϥΠϒίʔσΟϯά w(JU)VC Ξ΢τϓοτͷνϟωϧ
  57. JOUFSWBM

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

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

  60. ຖ೔ίʔυΛ ॻ͘

  61. w K2VFSZ࡞ऀ+PIO3FTJH͸ि຤ʹࣗ෼ͷϓϩ μΫτ։ൃΛؤுΖ͏ͱ͕ͨ͠ɺࣦഊɻ w ฏ೔ͱಉ͡അྗͰ͸ॻ͚ͳ͍ w શͯͷि຤͕ۭ͍͍ͯΔΘ͚Ͱ͸ͳ͍ w Ұिؒ ͋Δ͍͸ೋिؒ

    ͸௕͍ɻίʔυ Λ๨Εͯ͠·͏ w ͦ͜Ͱ+PIO3FTJH͕ߦͬͨ͜ͱ͸ʜʜ ͋ͷ+PIO3FTJHͰ΋͏·͍͔͘ͳ͍͜ͱ
  62. IUUQFKPIOPSHCMPHXSJUFDPEFFWFSZEBZ

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

  64. ౰࣌ͷ !KFSFTJHͷHJUIVCQSPpMF IUUQTHJUIVCDPNKFSFTJH

  65. w ඞཁ࠷খݶͷίʔυ΁ͷूதҰ೔෼ʙ࣌ؒఔ౓Ͱҙ ຯͷ͋ΔίʔυΛॻ͘͜ͱ͕ڧ͍ΒΕΔ ٳ೔ʹ͸΋ͬͱ ͔͚ΒΕΔ  w ϓϩάϥϛϯάͷश׳ԽHJUIVCʹ૲Λੜ΍͢ͷ͕໨తͰ ͸ͳ͍ɻࣗ෼Ͱࣗ෼ࣗ਎ͷͨΊʹੜ׆श׳Λม͑Δͷ͕େ ࣄ

    w ෆ҆ͱͷઓ͍Ҏલ͸ʮे෼ʹʯਐΜͰ͍Δ͔ɺʮे෼ ʹʯ׬੒͍ͯ͠Δ͔ɺෆ͕҆͋ͬͨɻຖ೔ίʔυΛॻ͍ͯ ΈͯɺਐΜͰ͍Δͱ͍͏࣮ײ͸ɺ࣮ࡍͷਐḿͱಉ͘͡Β͍ ॏཁͩͱ͍͏ؾ͖ͮΛಘͨ +PIO3FTJHʹىͬͨ͜มԽ 
  66. w ि຤ͷա͔ͨ͝͠Ҏલ͸։ൃͷશͯΛि຤ʹṌ͚ࣦͯ ഊ͍͕ͯͨ͠ɺ͍·΍ि຤͸ͦΕ΄ͲॏཁͰͳ͘ͳ ΓɺϦΞϧϥΠϑΛॆ࣮Ͱ͖ΔΑ͏ʹͳͬͨ w όοΫάϥ΢ϯυॲཧࢄาதɺγϟϫʔதɺৗʹίʔ υͷ͜ͱΛόοΫάϥ΢ϯυͰߟ͑ΔΑ͏ʹͳΓɺྑ ͍ΞΠσΞ͕ු͔ͿΑ͏ʹͳͬͨ w ίϯςΫετεΠονҎલ͸िʹҰճͷ։ൃͩͬͨͷ

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

    ίʔυ΍Ξ΢τϓοτ͸ࣗ෼Ͱ΋֮͑ΒΕͳ͍͘Β͍ͷ ྔʹͳΓɺॆ࣮ײΛಘΒΕΔ +PIO3FTJHʹىͬͨ͜มԽ 
  68. ʮ͍·ɺখ͞ͳ͜ͱΛଟ͘ੵΈ্ ͛Δ͜ͱ͕ɺͱΜͰ΋ͳ͍ͱ͜Ζ ΁ߦͨͩ͘ͻͱͭͷಓͳΜͩͳͱ ͍͏;͏ʹײ͍ͯ͡·͢ʯ Πνϩʔ͕೥ʹ.-#೥ؒ࠷ଟ҆ଧΛߋ৽ͨ͠ͱ͖ͷݴ༿

  69. ࢲ΋݁ߏଓ͚·ͨ͠

  70. ࣄྫ

  71. ࢝ൃӺۙ͘ʹॅΈɺ࠲ΕΔՄೳੑΛίϯτϩʔϧ͢Δ

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

  73. ೥Լ͔Β ֶͿ

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

  75. Ͱ͖Δ ޷͖ʹͳΔ ա৒ద߹ͱλίπϘԽ ໼ҹਖ਼ͷ઀ଓ ࠜݩ͕૿͑Ε͹ઌ΋૿͑Δɻ ࠜݩ͕ݮΕ͹ઌ΋ݮΔ

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

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

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

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

  80. ٕज़͸ʮৼΓࢠʯ

  81. ٕज़͸ʮΒͤΜʯ

  82. IUUQTTQFBLFSEFDLDPNUXBEBVOEFSTUBOEJOHUIFTQJSBMPGUFDIOPMPHJFT

  83. IUUQXXXQVCMJDLFZKQCMPHIUNM

  84. IUUQTGVLBCPSJGN

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

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

  87. ਓͷͭ͘Δ ӔΛݟΔ

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

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

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

  91. IUUQEIBUFOBOFKQFTTBQ

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

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

  94. IUUQDIBTFOPSHdEBJUJNUFYUXPSTFJTCFUUFSKBIUNM 5IF3JTFPGl8PSTFJT#FUUFSz

  95. IUUQTUXJUUFSDPNU@XBEBTUBUVT

  96. IUUQTTQFBLFSEFDLDPNUXBEBXPSTFJTCFUUFSVOEFSTUBOEJOHUIFTQJSBMPGUFDIOPMPHJFTFEJUJPO

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

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

  99. IUUQTXXXBNB[PODPKQEQ

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

  101. ֶͼଓ͚Δ࢟੎

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

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