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

多様化するWeb業界で活躍できる エンジニアを育てた際に心がけたこと

Yuichi Nakazawa
December 15, 2022
520

多様化するWeb業界で活躍できる エンジニアを育てた際に心がけたこと

Yuichi Nakazawa

December 15, 2022
Tweet

Transcript

  1. ͓·͑ͩΕΑ • ௕໺ݝੜ·Ε௕໺ҭͪ • גࣜձࣾ೔ຊγεςϜٕݚ ॴଐ • औక໾ Web։ൃ෦໳σΟϨΫλʔ 


    Πϯϑϥ͓͡͞Μͱࣾ಺ݚम • झຯɿ֨ಆήʔϜɺےτϨ • @y_nakazawa1220 
 Yuichi Nakazawa 2
  2. גࣜձࣾ೔ຊγεςϜٕݚ • Web։ൃ͕ओྗ(SESͱडୗ) • 2014೥͔ΒPython/DjangoͰ੒௕ • ࠷ۙ͸ϑϩϯτΤϯυܥ͕ଟ͍ • PyCon JPɺDjangoCongressΛ

    
 த৺ʹεϐʔΧʔΛഉग़ • اۀ޲͚ͷPythonߨ࠲ • GEEKLAB.NAGANOͷӡӦ Japan System Laboratory 3
  3. GEEKLAB.NAGANO • 2014೥ΑΓΤϯδχΞ޲͚ͷ 
 ίϛϡχςΟεϖʔεͱͯ͠։ઃ • ΈΜͳͷPythonษڧձ # ௕໺ •

    աڈ̏౓ͷ։࠵ • τʔΫɺ΋͘΋͘ձɺεϓϦϯτ • ʢͦΖͦΖ࠶։͍ͨ͠ʣ
  4. 6

  5. ओʹฐࣾͰѻٕͬͨज़ 2014ʙ2022 • Python • Django/DRF • Flask • Pyramid

    • Ruby on Rails • PHP • Larvel/Yii 14 • HTML • CSS • JavaScript • TypeScript • jQuery • Angular • React • ReactNative • Vue.js • Java • Obj-C • Swift • Kotlin • Flutter • nginx • uWSGI • gunicorn • Apache • EC2 • RDS • S3 • Lambda • API Gateway • Dynamo • Firebase
  6. Ҋ݅ͷ܏޲ ੥ෛ։ൃͷ৔߹ • ิॿۚΛ࢖ͬͨ͜ͿΓͷҊ͕݅૿͖͍͑ͯͯΔ • ஍ݩͷ੡଄ۀ͔ΒͷҾ͖߹͍΋͍͔ͭ͘ • ݸਓࣄۀओʢඇΤϯδχΞʣͷํ΍ɺଞۀछ͔Βͷ͓੠͕͚͕૿͍͑ͯΔ • ΋΍ͬͱͨ͠࢓༷ͷ΋ͷ

    • ͳΜͱͳ͘ωΠςΟϒΞϓϦ࡞Γ͍ͨ 
 -> ΍Γ͍ͨ͜ͱ͕΅΍͚͕ͪͳͷͰɺԿΛ΍Γ͍͔ͨΛҰॹʹ੔ཧɹ • VRళฮͷΑ͏ͳ΋ͷΛ࡞Γ͍ͨ 
 -> ECαΠτ+ίʔϙϨʔταΠτͰམͪண͘ • Πχγϟϧίετ͸͋Δఔ౓ग़ͤΔ͕ɺϥϯχϯάίετ͸཈͍͑ͨ • ʢࢀߟʣʮPythonΛ࢖ͬͯސ٬͔Βײँ͞ΕΔ࢓ࣄΛ͢ΔͨΊʹ৺͕͚ͨ͜ͱʯʢhttps://bit.ly/3hcUgEZʣ 18
  7. ༷ʑͳબఆج४ • ରԠͰ͖ΔΤϯδχΞ͕ଟ͍΋ͷ • ೲ඼ޙʹ͓٬༷͕ରԠͰ͖Δ΋ͷ • طଘͷΞʔΩςΫνϟͱಉ͡΋ͷ • ࠓޙͷҊ݅ʹͭͳ͕Γͦ͏ͳ΋ͷ •

    ྲྀߦΓͷ΋ͷ • ੜ࢈ੑ͕͕͋ΔͱࢥΘΕΔ΋ͷ • ։ൃίετ͕҆Ձͳ΋ͷ • ָͦ͠͏ͳ΋ͷ • etc… 22
  8. ༷ʑͳબఆج४ • ରԠͰ͖ΔΤϯδχΞ͕ଟ͍΋ͷ • ೲ඼ޙʹ͓٬༷͕ରԠͰ͖Δ΋ͷ • طଘͷΞʔΩςΫνϟͱಉ͡΋ͷ • ࠓޙͷҊ݅ʹͭͳ͕Γͦ͏ͳ΋ͷ •

    ྲྀߦΓͷ΋ͷ • ੜ࢈ੑ͕͕͋ΔͱࢥΘΕΔ΋ͷ • ։ൃίετ͕҆Ձͳ΋ͷ • ָͦ͠͏ͳ΋ͷ • etc… 24
  9. ௚ۙͷٕज़બఆ • ϑϩϯτΤϯυ͸React&TypescriptʢҎԼTSʣ • TSΛ࢖͏Ҋ͕݅૿Ճ܏޲ͩͬͨͨΊ • Next.js͸࢖༻͠ͳ͔ͬͨ • όοΫΤϯυ͕PaaS or

    FaaSͷ৔߹͸ɺTSͰશରԠ • طଘγεςϜ͔ΒͷҠߦҊ݅ʹ͸Python/Django + EC2+RDSͷమ൘ߏ੒ • ECαΠτతͳ΋ͷ͸EC2Ͱͳ͘ɺLightsailΛఏҊͯ͠௿ίετͰ࣮ݱ 25
  10. ༷ʑͳߏஙํ๏͕͋Δ ௚ۙͷ࣮੷ • frontend(React/TS) + backend(Python/DRF+EC2/RDS) 
 • frontend(React/TS) +

    backend(TS + Lambda/AppSync/DynamoDB etc…) 
 • Native App(Flutter) + backend(Python/DRF+lightsail) 30
  11. ٕज़తͳ՝୊Ҏ֎ʹ΋ • ͦ΋ͦ΋ΤϯδχΞ͕଍Γͳ͍ɾɾ • PL/PMΛग़དྷΔΤϯδχΞͷෆ଍ • ग़དྷͳ͍ͱ͍͏ΑΓػձ͕গͳ͍ • ίετʹ͍ͭͯߟ͑Δػձ΋গͳ͍ •

    ཁ݅ఆ͔ٛΒೖΕΔΤϯδχΞͷෆ଍ • ΋΍ͬͱͨ͠ཁ݅Λܗʹ͢Δϓϩηε • গͳ͍৘ใ͔Βฉ͖ग़͢ώΞϦϯάྗ • ۀ຿ܥγεςϜத৺ͩͬͨࠒͷํ্͕ྲྀ޻ఔʹৄ͍͠ਓ͕ଟ͔ͬͨ 34
  12. ΤϯδχΞ࠾༻ͷڧԽ 39 • Ҏલ͸ɺܦݧऀͷத్࠾༻Λத৺ʹߦ͖ͬͯͨ • ͜͜࠷ۙɺଞۀछ͔ΒͷԠื͕૿͍͑ͯΔ • ܦݧ͕ແͯ͘΋ɺεΫʔϧͰֶΜͰ͍ͨΓɺҙཉ͕͋Γͦ͏ͳਓ͸࠾༻ͯ͠ 
 ҭͯΔํ޲ʹ΋ࢹ఺Λม͑ͯΈͨ

    • ࠷ॳ͸Webͷ࢓૊ΈΛཧղͯ͠΋Β͏ͨΊʹPython/Django • ֓Ͷ3ϲ݄Ͱجຊతͳ͜ͱΛ਎ʹண͚ͯ΋Β͏͜ͱΛ໨ඪ • ௚ۙͷୡ੒཰͸100% • ߹Θͤͯ3ϲ݄Ҏ಺ʹPythonΤϯδχΞೝఆͷऔಘΛ໨ࢦͯ͠΋Β͏ • ࣄલֶशʢUdemy/PyQ/࠲ֶɹϨϕϧʹԠͯ͡ʣ
  13. ·ͱΊ • Webۀք͸೔ਐ݄าͳͷͰɺͲͷٕज़Λ༏ઌ͢΂͖͔൑அ͸೉͍͠ • TypeScript͸ඞਢͷ܏޲ͳͷͰֶΜͰ͓͍ͯଛ͸ͳ͍ • WebͷجຊతͳྲྀΕΛཧղ͢ΔͨΊʹɺͳΜΒ͔ͷWebϑϨʔϜϫʔΫʹ৮Εͯ 
 ͓͘ͷ͕ۙಓɻฐࣾͷ৔߹͸ɺDjangoɻ 


    • ະܦݧऀͷํ͸Մೳੑͷմ • ग़དྷΔ࢓ࣄΛ༩͑ΔͷͰ͸ͳ͘ग़དྷΔΑ͏ʹͳΔͨΊͷ࢓ࣄΛௐ੔͢Δ • ΍Γߕ൹ͷ͋Δ࢓ࣄΛఏڙͯ͠૬ஊ͠΍͍͢؀ڥΛ࡞Δ͜ͱ͕େࣄ 46