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

初めてエンジニアインターンの育成に取り組んで考えたこと

7fccfb690a818ed2f3a15fc21d426d5a?s=47 meijin
March 23, 2022

 初めてエンジニアインターンの育成に取り組んで考えたこと

会社として初めてエンジニアインターンを受け入れることになり、2ヶ月ほど育成に取り組んできました。育成すると口で言うのは簡単ですが、実際にやってみると想像以上に大変なことの連続です。今回はその内容や考えたことについてざっくばらんにお話します。

7fccfb690a818ed2f3a15fc21d426d5a?s=128

meijin

March 23, 2022
Tweet

More Decks by meijin

Other Decks in Education

Transcript

  1. ॳΊͯΤϯδχΞΠϯλʔϯͷ ҭ੒ʹऔΓ૊ΜͰߟ͑ͨ͜ͱ גࣜձࣾNoSchool CTO / meijin

  2. ΞδΣϯμ • ࣗݾ঺հ • ձࣾ঺հ • ΤϯδχΞΠϯλʔϯΛड͚ೖΕ͖͔͚ͨͬ • ҭ੒͢ΔͨΊʹऔΓ૊Μͩ͜ͱ •

    2ϲ݄ҭ੒ͨ݁͠Ռ • ߟ͑ͨ͜ͱ • ·ͱΊ • ࠂ஌
  3. ࣗݾ঺հ • ໊ਓʢझຯͷকعʹͪͳΜͩϋϯυϧωʔϜʣ • ܦྺ ◦ 2011ʙ2016 ಸྑߴઐ ◦ 2016ʙ2019

    גࣜձࣾLIFULL WebΤϯδχΞ ◦ 2019ʙݱࡏ גࣜձࣾNoSchool CTO • ޷͖ͳٕज़͸ReactɺTypeScriptɺιϑτ΢ΣΞΞʔΩςΫνϟetc @Meijin_garden
  4. એ఻ʢݸਓʣ • ʲLaravel Ͱ Fat Controller ΛϦϑΝΫλϦϯά͠Α͏ʳ • https://www.techpit.jp/courses/176

  5. ձࣾ঺հʲΦϯϥΠϯՈఉڭࢣϚφϦϯΫʳ https://manalink.jp/

  6. ࠾༻ͨ͠ΠϯλʔϯੜͷϓϩϑΟʔϧ • จܥֶ෦ࡏֶத • ϓϩάϥϛϯάྺ͸1೥ऑ • ”ReactΛڭ͑ͯ͘ΕΔεΫʔϧ”ʹ൒೥௨͍ͬͯͨ • εΫʔϧΛଔۀޙ΋ɺݸਓͰReact΍React NativeΛ࢖ͬͨαʔϏε։ൃʹऔΓ૊ΜͰ

    ͍ͨ • ໘઀Ͱޱ಄ࢼ໰Λ30΄Ͳ͕ͨ͠ɺ·ͩ·ͩεΩϧతʹ͸ෆ଍͍ͯ͠Δײ͡ʢͨͩΠϯλʔ ϯͳͷͰεΩϧΑΓ࿩ͨ͠ײ৮Λ༏ઌͯ͠࠾༻ܾఆͨ͠ʣ
  7. ҭ੒͢ΔͨΊʹऔΓ૊Μͩ͜ͱ

  8. ֶशϐϥϛουʢʁʣΛߟҊ

  9. ֶशϐϥϛουͷޮՌ • ”ReactΛڭ͑ͯ͘ΕΔεΫʔϧ”ʹ௨͍ͬͯͨΈ͍͕ͨͩɺ 
 ࣮ࡍ͸ͦͷ౔୆ͱͳΔJavaScriptͷ஌ࣝɺ͞Βʹ౔୆ͱͳΔHTTP΍ 
 γΣϧͷ஌͕ࣝ·ͬͨ͘ແ͍ঢ়ଶͩͬͨ • ֶशऀຊਓʹͱͬͯ΋ɺڭ͑Δଆʹͱͬͯ΋ɺ೴಺ʹֶश͢΂͖ࣄฑͷ 


    ϐϥϛου͕ඳ͚͍ͯΔͱɺ٧·ͬͨͱ͖ʹԿͷཧղෆ଍͕ݪҼͳͷ͔ 
 ಥ͖ࢭΊ΍͘͢ͳΔ
  10. جૅతͳຊ/จݙΛಡΜͰ΋Β͏ • Webͱϓϩάϥϛϯάͷ͖΄Μͷ͖΄Μ • MDN • Ϧʔμϒϧίʔυ • javascript.info •

    TypeScript Deep Dive
  11. ඇಉظ௨৴ͷجૅ͔Β୯ମςετ·Ͱڭ͑Δ

  12. ᷿ͷڭࡐΛѹ౗తʹ྇կ͢Δࡉ͔͍ڭࡐΛ࡞੒

  13. ʮ໋໊Λߟ͑Δձʯ

  14. ॳ৺ऀͦ͜ࡉ͔ؔ͘਺ʹ෼͚Δ΂͖

  15. ԿΛֶͿ͔Ͱ͸ͳ͘Ͳ͏ֶͿ͔Λ޻෉ͤ͞Δ

  16. ߟ࡯ / ͦͷޙ

  17. ࢼߦࡨޡ͢Δश׳ • ʮtry-catchʹ͍ͭͯཧղ͖ͯͯ͠ɻࢀߟจݙ͸͜ΕͶʯͱURLΛ౉͢ͱ 
 ͦͷ··URLઌͷهࣄΛಡΈɺϊʔτʹࣗ෼ͳΓʹ·ͱΊͯ͘Δ • ૉ௚Ͱษڧ͢Δͷ͸͍͍͜ͱ͕ͩɺͦͷঢ়ଶͰʮ͡Ό͋ྫ֎ॲཧॻ͍ͯʯ 
 ͱ͍͏ͱ1จࣈ΋ॻ͚ͣʹϑϦʔζ͢Δɺͱ͍ͬͨ͜ͱ͕ଟʑ͋ͬͨ •

    ϓϩάϥϛϯά͕޷͖ͳਓ͸ɺจݙΛಡΉͱखݩͰಈ͔͢บ͕͍͍ͭͯΔ 
 ͜ͱ͕ଟ͍ͱࢥ͏ɻͱʹ͔͘ಈ͔͢ͷ͕େࣄɻ
  18. ࢼߦࡨޡ͢Δश׳ᶄ • Πϯλʔϯੜʹೖࣾ਺೔ܦͬͯɺ 
 ʮ΋͔ͯ͠͠ɺ͜Ε·Ͱࣗ෼ͰΞϓϦ࡞͖ͬͯͨͬͯݴͬͯͨͷɺ 
 ɹશ෦αΠτ΍ຊ͔Β͖࣋ͬͯͨػೳͷίϐϖͩͬͨΓ͠ͳ͍ʁ 
 ɹࣗ෼ͷ಄ͰθϩΠνͰ͜ΕΛ࣮ݱ͍ͨ͠ʂͬͯࢥͬͨ͜ͱແ͍ʁʯ 


    ͱ㘤͍ͯΈͨͱ͜Ζɺ 
 ʮݴΘΕͯΈΔͱແ͍Ͱ͢Ͷɾɾɾʯͱฦ͖ͬͯͨɻ • ͜͜ͷࠩ͸ϓϩάϥϛϯάͰ৳ͼΔ͔Ͳ͏͔Λେ͖͘෼͚ΔͷͰ͸ʁ
  19. ࢼߦࡨޡ͢Δश׳ᶅ • ֶߍͷษڧͱ࣮຿ͰITΛֶͿͷ͸ࠜຊతʹҟͳΔͳɺͱ͍͏ͷ͕෼͔ͬͨ • ݄ฒΈ͕ͩʮࣗ෼͕࡞Γ͍ͨ΋ͷʯΛߟ͑ɺݸਓֶश͸ͦͷ։ൃʹॆͯͯ΋Β͏͜ͱʹͨ͠

  20. ୀ۶͢Δ·Ͱಉ͡ϨϕϧͷλεΫΛ͓ئ͍͢Δ • ౰ॳ͸ʲ3ϲ݄Ҏ಺ʹReact NativeΞϓϦʹ৽نը໘Λ௥Ճ͢ΔλεΫΛ ಠྗͰ׬਱Ͱ͖Δʳͱ͍͏໨ඪΛܝ͍͛ͯͨ • ౰વɺ஌͕ࣝఆண͠ͳ͔ͬͨ͠ɺࢲ(CTO)ࣗ਎΋ർฐͨ͠ • ࣾ಺Ͱ࿩͠߹͍ɺʮۓٸͰ͸ͳ͍͕ॏཁͳ͜ͱʯ͔Β࢝Ίͯ 


    ୀ۶ʹͳΔ·Ͱண࣮ʹ਎ʹண͚ͯ΋Β͏ํ਑ʹϐϘοτ͠·ͨ͠
  21. ࠽ೳΛݟൈ͘ • ೔ใͰʮςετ࢓༷ॻΛॻ͘ͷ͸޷͖ʯͱ͍͏ൃݴ • JestͰTDD(ςετۦಈ։ൃ)ͨ͠ͱ͖΋ҿΈࠐΈ͕଎͔ͬͨ͠ɺ 
 ςετ࢓༷ॻ΋2ճ໨Ҏ͔߱ͳΓஸೡͳ಺༰Ͱ࢓্͖͍͛ͯͯͨ͠ɺ 
 Storybookͷ੔උ΋౔೔ฦ্Ͱ࢓্͖͛ͯͨ •

    อकతͳ࢓ࣄ͕”޲͍͍ͯΔ”͠”޷͖”ͳՄೳੑ͕ߴ͍ʁ • ޷͖ͱ͍͏ؾ࣋ͪ͸࠽ೳͷҰछͳͷͰɺ͜͜Λ৳͹ͯ͠Έ͍ͨͳͱ΋ࢥͬͨΓɻ
  22. ·ͱΊ • ϓϩάϥϛϯάΛڭ͑Δͷ͸େม ◦ ݱ୅ͷWebɾΞϓϦ։ൃɺϓϩάϥϛϯάҎ֎ʹֶͿ͜ͱଟ͗͢ʂ • ඞཁͱͳΔֶश΁ͷελϯεࣗମ͕ҟͳΔͷͰɺඞཁʹԠ͔ͯͦ͜͡Β 
 ୟ͖ࠐΉͷ͕Αͦ͞͏ʁ •

    ड͚ೖΕଆ͸ɺࣗ෼ͨͪͷϩʔϧ΍ೳྗΛચ͍ग़ͯ͠ɺຊਓͷదੑʹԠ͡ ͯ͜͏͍͏໾ׂΛՌͨͯ͠΋Β͓͏ͱߟ͑ͯΈΔͷ΋ख
  23. ࠂ஌

  24. ΤϯδχΞ࠾༻தͰ͢ʂ • ΦϯϥΠϯڭҭΛਪਐ͢ΔͨΊͷαʔϏεʮϚφϦϯΫʯΛ։ൃ • ϕϯνϟʔͰࣗ༝౓΍Χόʔൣғ͕޿͘ɺࣄۀ΋੒௕த • ςετίʔυΧόϨοδ80ˋҎ্ˍͦͦ͜͜Ϟμϯͳٕज़બఆ • ࠓ͙͢స৬Λߟ͍͑ͯͳͯ͘΋ɺΧδϡΞϧ໘ஊΛड෇தʂ 


    ΦϯϥΠϯͰ30෼΄Ͳࡶஊ͠·͠ΐ͏ʂ ͝࿈བྷ͸ίνϥ→ ·ͨ͸ʮMeety ϚφϦϯΫʯͰݕࡧʂ