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

すべてが gem になる - サービス密結合からの段階的脱却 #builderscon / b...

Avatar for Masayuki Izumi Masayuki Izumi
September 08, 2018

すべてが gem になる - サービス密結合からの段階的脱却 #builderscon / builderscon tokyo 2018

Avatar for Masayuki Izumi

Masayuki Izumi

September 08, 2018
Tweet

More Decks by Masayuki Izumi

Other Decks in Programming

Transcript

  1. izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide

    - Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ
  2. izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide

    - Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ
  3. izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide

    - Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ Builds "Rails" of the microservices platform
  4. izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide

    - Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ
  5. izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide

    - Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ
  6. izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide

    - Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ
  7. ©2018 Wantedly, Inc. Background History of our apps 2016.01 ~

    2016.11 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~
  8. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ Monolithic Rails app Microservices (Rails, Golang, Python) 2 Rails apps
 (Main, Accounts) Microservices (Rails, Golang, Python)
  9. ©2018 Wantedly, Inc. Background The Go gopher © Renée French,

    The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ Microservices (Rails, Golang, Python) ϝΠϯαʔό ϝΠϯͷػೳɾυϝΠϯΛ͍࣋ͬͯΔ ڞ༗σʔλ͸7JTJUʹऔΓʹߦ͘ Ϣʔβೝূαʔό શαʔϏεڞ௨Ͱར༻͢Δೝূαʔό ͍ͪͯ͘͞͸΍͍
  10. ©2018 Wantedly, Inc. Background The Go gopher © Renée French,

    The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ Microservices (Rails, Golang, Python) ‣ $IBUͳͷͰ҆ఆੑͱεϐʔυ͕ॏཁ ‣ 7JTJUຊମͱΘ͔Εɼෳ਺αʔόͰ
 ߏ੒͞Εͨ
  11. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ ϚΠΫϩαʔϏε ‣ ը૾ॲཧɾػցֶशɾฒߦॲཧͳͲɼ3VCZ͕ಘҙͰ ͳ͍λεΫ͕૿͑ͨ ‣ ,VCFSOFUFT͕ຊ൪౤ೖ͞Εɼ৽ͨͳαʔόΛؾܰʹ ࡞ΕΔΑ͏ʹͳͬͨ ‣ ίΞͷମݧΛશྗͰྑ͘͢Δ
  12. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ ϚΠΫϩαʔϏε ‣ ը૾ॲཧɾػցֶशɾฒߦॲཧͳͲɼ3VCZ͕ಘҙͰ ͳ͍λεΫ͕૿͑ͨ ‣ ,VCFSOFUFT͕ຊ൪౤ೖ͞Εɼ৽ͨͳαʔόΛؾܰʹ ࡞ΕΔΑ͏ʹͳͬͨ ‣ ίΞͷମݧΛશྗͰྑ͘͢Δ
  13. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ ϚΠΫϩαʔϏε ‣ ը૾ॲཧɾػցֶशɾฒߦॲཧͳͲɼ3VCZ͕ಘҙͰ ͳ͍λεΫ͕૿͑ͨ ‣ ,VCFSOFUFT͕ຊ൪౤ೖ͞Εɼ৽ͨͳαʔόΛؾܰʹ ࡞ΕΔΑ͏ʹͳͬͨ ‣ ίΞͷମݧΛશྗͰྑ͘͢Δ
  14. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ Ϛβʔ3BJMT ‣ ҰํͰɼίΞυϝΠϯΛѻ͏αʔό͸3BJMT ‣ "DUJWF3FDPSEͬͯศརͰ͢ΑͶ ‣ ϝʔϧૹͬͨΓͱ͍ͬͨࡶ຿΋ָʹ͜ͳͤΔ ‣ ৽ػೳϓϩτλΠϓ͸αΫοͱ͜͜ʹͭͬͯ͘ɼ
 ͋ͱ͔ΒϚΠΫϩαʔϏεΛ੾Δ͜ͱ΋ ‣ ڞ༗σʔλ΁ͷΞΫηεͳͲ΋͠΍͘͢ͳ͍ͬͯͨ ˞3BJMTͷ෦෼͸͓޷͖ͳ8"'MJCSBSZʹஔ͖׵͍͑ͯͩ͘͞
  15. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ Ϛβʔ3BJMT ‣ ҰํͰɼίΞυϝΠϯΛѻ͏αʔό͸3BJMT ‣ "DUJWF3FDPSEͬͯศརͰ͢ΑͶ ‣ ϝʔϧૹͬͨΓͱ͍ͬͨࡶ຿΋ָʹ͜ͳͤΔ ‣ ৽ػೳϓϩτλΠϓ͸αΫοͱ͜͜ʹͭͬͯ͘ɼ
 ͋ͱ͔ΒϚΠΫϩαʔϏεΛ੾Δ͜ͱ΋ ‣ ڞ༗σʔλ΁ͷΞΫηεͳͲ΋͠΍͘͢ͳ͍ͬͯͨ ˞3BJMTͷ෦෼͸͓޷͖ͳ8"'MJCSBSZʹஔ͖׵͍͑ͯͩ͘͞
  16. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ Ϣʔβσʔλ͸7JTJUͱڞ༗ ‣ DIBUͷϝΠϯαʔόʹ͸ɼ"DUJWF3FDPSEMJLFͳ"1*Ͱڞ ༗σʔλΛૢ࡞Ͱ͖Δػߏ͕͋Δʢ࣮ଶ͸)551ʣ ‣ ͭͷ3BJMTBQQTؒͰڞ༗ΩϟογϡΛ࣋ͪɼύϑΥʔϚϯ εΛՔ͍Ͱ͍Δ DIBUͷϝΠϯαʔό͸ɼ࣮͸௒ߴػೳͳαʔό
  17. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~
  18. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ $IBUͱ1FPQMF͸ಉ͡3BJMTΞϓϦέʔγϣϯʹ ίΞػೳ͕ॻ͔Ε͍ͯͨ αʔϏεີ݁߹ͱ͍͍ͬͯΔͷ͸͜Εͷ͜ͱ
  19. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~
  20. ©2018 Wantedly, Inc. Background History of our apps The Go

    gopher © Renée French, The Ruby logo © Yukihiro Matsumoto, The Rust logo © Mozilla 2016.01 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.8 ~ 2016.11 ~ $IBUͱ1FPQMF͸ಉ͡3BJMTΞϓϦέʔγϣϯʹ ίΞػೳ͕ॻ͔Ε͍ͯͨ αʔϏεີ݁߹ͱ͍͍ͬͯΔͷ͸͜Εͷ͜ͱ
  21. ©2018 Wantedly, Inc. ϝΠϯʓʓαʔόͷڞ༗ ͳʹ͕͏Ε͍͠ʁ ‣ طଘͷࢿ࢈Λଘ෼ʹ׆͔ͤΔ  ࠓճͷྫͩͱɼʮڞ༗Ϣʔβσʔλૢ࡞͕Ͱ͖Δศར"1*ʯ͕େ͖͍ 

    ΋͔ͨ͠͠Βڞ༗Ͱ͖ΔϞσϧ͕͋Δ͔΋ ‣ αʔό͕͍ͬͺ͍͋ΔͱɼͭΒ͍͜ͱ΋ଟ͍  ΤϥʔϋϯυϦϯάͱ͔ϦτϥΠͱ͔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ
  22. ©2018 Wantedly, Inc. ো֐͕ى͖ͨΒʁ ͳʹ͕΍͹͍ʁ ‣ ·ͣɼʮͲ͕ͬͪݪҼͰ໰୊͕ى͖͔ͨʯΛಛఆ͠ͳ͍ͱ͍͚ͳ͍  ӨڹൣғΛ͠Β΂Δͷʹ΋྆ํͷ஌͕͍ࣝΔ ‣

    Լख͢Δͱר͖ఴ͑৯Βͬͯ྆ํམͪΔ  ࣮ࡍʹ1FPQMFىҼͰো֐͕ى͖ͯ$IBU΋Ζͱ΋མͪͨ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ
  23. ©2018 Wantedly, Inc. Ϟσϧ͕ࠞ͟Δʁ ͳʹ͕΍͹͍ʁ ‣ ABQQNPEFMTAΛݟͯɼͺͬͱݟͰʮͲΕ͕ͲͬͪͷαʔϏεͳͷ͔ʯΘ͔Βͳ͘ͳΔ  ͪΌΜͱωʔϜεϖʔε͚ͭ·͠ΐ͏ͱ͍͏࿩΋͋Δ 

    ҰํͰɼDIBU͕ੜ·Εͨͱ͖ʹ͸DIBU͔͠ͳ͍ωʔϜεϖʔε͸͍ͭͯͳ͍ ‣ ࣮ݱ͍ͨ͜͠ͱ͕ࣅ͍ͯΔ͔Βͱ͍ͬͯϞσϧΛڞ༗͢Δͱ͞ΒʹݟۃΊࠔ೉ʹ  มߋ͢Δͱ͖ͷ͍͖͑ΐ͏͸Μ͍Λ൑அͮ͠Β͘ͳΔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ
  24. ©2018 Wantedly, Inc. Ϟσϧ͕ࠞ͟Δʁ ͳʹ͕΍͹͍ʁ ‣ ABQQNPEFMTAΛݟͯɼͺͬͱݟͰʮͲΕ͕ͲͬͪͷαʔϏεͳͷ͔ʯΘ͔Βͳ͘ͳΔ  ͪΌΜͱωʔϜεϖʔε͚ͭ·͠ΐ͏ͱ͍͏࿩΋͋Δ 

    ҰํͰɼDIBU͕ੜ·Εͨͱ͖ʹ͸DIBU͔͠ͳ͍ωʔϜεϖʔε͸͍ͭͯͳ͍ ‣ ࣮ݱ͍ͨ͜͠ͱ͕ࣅ͍ͯΔ͔Βͱ͍ͬͯϞσϧΛڞ༗͢Δͱ͞ΒʹݟۃΊࠔ೉ʹ  มߋ͢Δͱ͖ͷ͍͖͑ΐ͏͸Μ͍Λ൑அͮ͠Β͘ͳΔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ
  25. ©2018 Wantedly, Inc. #΍Δલʹ৺͕ંΕͨύλʔϯ ͱΓ͋͑ͣؔ࿈ΤϯυϙΠϯτΛશ෦ڍ͛ΔେձΛ΍ͬͨ ‣ αʔό$IBU3BJMTͷASPVUFTSCAΛશ෦ݟΔ  ωʔϜεϖʔε੾ͬͯ͋Δ͔Β͙͢Θ͔Δ ‣

    ΞϓϦ"OESPJEΞϓϦͷ3FUSPpUʢ"1*ΫϥΠΞϯτʣͷJOUFSGBDFΛݟΔ ഊ๺ͷྺ࢙ αʔϏεີ݁߹ʹཱͪ޲͔͏ @GET("/api/account") Observable<User> getAccount(@Query("fields") String fields); @GET("/api/users/{userId}") Observable<User> getUser(@Path("userId") long userId, @Query("fields") String fields);
  26. ©2018 Wantedly, Inc. #΍Δલʹ৺͕ંΕͨύλʔϯ ͱΓ͋͑ͣؔ࿈ΤϯυϙΠϯτΛશ෦ڍ͛ΔେձΛ΍ͬͨ ‣ αʔό$IBU3BJMTͷASPVUFTSCAΛશ෦ݟΔ  ωʔϜεϖʔε੾ͬͯ͋Δ͔Β͙͢Θ͔Δ ‣

    ΞϓϦ"OESPJEΞϓϦͷ3FUSPpUʢ"1*ΫϥΠΞϯτʣͷJOUFSGBDFΛݟΔ ‣  ݁Ռʘ ?P? ʗ ഊ๺ͷྺ࢙ αʔϏεີ݁߹ʹཱͪ޲͔͏
  27. ©2018 Wantedly, Inc. #΍Δલʹ৺͕ંΕͨύλʔϯ Կ͕ഊҼͩͬͨͷ͔ ‣ ʮͦ΋ͦ΋Կ͕DIBUʹґଘ͍ͯ͠Δ͔Λચ͍ग़͢ʯ͕໨తͩͬͨ  ͕ɼ࣮͸ͦΕ͸"1*ʢJOUFSGBDFʣΛݟ͚ͨͩͰ͸Θ͔Βͳ͍ 

    ಺෦࣮૷ϨϕϧͰґଘ͕ଘࡏ
 ʢFHϢʔβ৘ใऔಘɼ+40/γϦΞϥΠβɼͦ΋ͦ΋ςʔϒϧ͕ڞ༗ɼFUDʣ ഊ๺ͷྺ࢙ αʔϏεີ݁߹ʹཱͪ޲͔͏
  28. ©2018 Wantedly, Inc. #΍Δલʹ৺͕ંΕͨύλʔϯ Կ͕ഊҼͩͬͨͷ͔ ‣ ʮͦ΋ͦ΋Կ͕DIBUʹґଘ͍ͯ͠Δ͔Λચ͍ग़͢ʯ͕໨తͩͬͨ  ͕ɼ࣮͸ͦΕ͸"1*ʢJOUFSGBDFʣΛݟ͚ͨͩͰ͸Θ͔Βͳ͍ 

    ಺෦࣮૷ϨϕϧͰґଘ͕ଘࡏ
 ʢFHϢʔβ৘ใऔಘɼ+40/γϦΞϥΠβɼͦ΋ͦ΋ςʔϒϧ͕ڞ༗ɼFUDʣ ‣ ʮϞσϧΛ໌Β͔ʹ͢ΔʯʮͲͷϞσϧ͕ͲΜͳٕज़ʹґଘ͍ͯ͠Δͷ͔Λ໌Β͔ʹ͢Δʯ͕ઌܾͩͬͨ ഊ๺ͷྺ࢙ αʔϏεີ݁߹ʹཱͪ޲͔͏
  29. ©2018 Wantedly, Inc. $υϝΠϯఆٛҠߦઌαʔόͮ͘Γ ͳͥ͜ͷλΠϛϯάͰ΍͔ͬͨ ‣ νʔϜߏ੒͕มΘͬͨ  ໌֬ʹʮج൫ "1*ʯʮਫ਼౓্͛ʯͰνʔϜ͕෼͔Εͨ

    ‣ ͪΐ͏Ͳʮͭͳ͕ΓʯʹϑΥʔΧε࢝͠ΊͨλΠϛϯά  ͔͜͜ΒͲΜͲΜػೳ௥Ճ͕͞ΕΔ  ͜ΕҎ্$IBU3BJMTʹ1FPQMFͷؔ৺ΛೖΕͨ͘ͳ͔ͬͨ ൓ܸͷ࿛Ԏ αʔϏεີ݁߹ʹཱͪ޲͔͏
  30. ©2018 Wantedly, Inc. $υϝΠϯఆٛҠߦઌαʔόͮ͘Γ ͳʹ͕มΘ͔ͬͨ ‣ ৽ػೳ௥ՃΛࡑѱײͳ͓͘͜ͳ͑ΔΑ͏ʹͳͬͨ  $IBU%#ʹςʔϒϧ௥Ճ͢Δͷ͸΍͸Γؾ͕Ҿ͚Δ͕ɼͦΕΛ͠ͳͯ͘ྑ͘ͳͬͨ ‣

    ҰํͰɼίΞͷϞσϧ͕$IBU3BJMTʹ࢒͞ΕͨͨΊ৽αʔόͰͰ͖Δ͜ͱ͸ݶΒΕΔ  ͨͱ͑͹ɼʮͭͳ͕Γʢ࿈བྷઌʣͷ௥Ճʯʮͭͳ͕ͬͨ૬खͷϓϩϑΟʔϧऔಘʯ͸
 $IBU3BJMTͷ"1*Λୟ͘ඞཁ͕͋ͬͨ  %#Λڞ༗͢Ε͹σʔλΞΫηε͸Մೳ͕ͩɼͦΕͰ͸Ϟσϧ͕ਖ਼͘͠൓ө͞Εͳ͍ ൓ܸͷ࿛Ԏ αʔϏεີ݁߹ʹཱͪ޲͔͏
  31. ©2018 Wantedly, Inc. %ίΞϞσϧΛ৽αʔό͔Β৮ΕΔΑ͏ʹ ΨϯΨϯ͍͜͏ͥ ‣ ʮͱΓ͋͑ͣҠߦઌͷ3BJMTαʔόΛ࡞ͬͨʯ͚ͲɼͰ͖Δ͜ͱ͕গͳ͍  ʮͭͳ͕Γʢ࿈བྷઌʣʯΛಡΈॻ͖͢Δͷ͸Ͳ͏ͯ͠΋ݩͷαʔόΛܦ༝ͯ͠͠·͏ 

    ͭΒ͍ ‣ ʮϞσϧΛڞ༗͍ͨ͠Ͷʯͱ͍͏ͷ͸ͣͬͱݴͬͯͨ  ҰํͰɼ։ൃ͸͔ͳΓ׆ൃෳ਺ͷνʔϜ͕ͲͪΒ΋͞ΘΔͷͰɼத్൒୺ͳঢ়ଶʹͳΔͱࠔΔ  ʮ3VCZͳΒɼ͏·͘HFNʹ͢Ε͹ੜ࢈ੑΛԼ͛ͣϞσϧΛڞ༗Ͱ͖ΔΜ͡Όͳ͍͔ʁʯ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  32. ©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ  ͱΓ͋͑ͣ%#Λڞ༗͢Δ  ੾Γग़͠ର৅ΛܾΊΔ 

    ੾Γग़͠ํʢHFNԽͷ΍ΓํʣΛܾΊΔ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  33. ©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ  ͱΓ͋͑ͣ%#Λڞ༗͢Δ  ੾Γग़͠ର৅ΛܾΊΔ 

    ੾Γग़͠ํʢHFNԽͷ΍ΓํʣΛܾΊΔ  ΍Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  34. ©2018 Wantedly, Inc. ͱΓ͋͑ͣ%#Λڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ $IBUBQQ %BUBCBTF $IBU3BJMT 1FPQMFBQQ

    1FPQMF3BJMT %BUBCBTF .JDSPTFSWJDFTͷจ຺Ͱ͸ɼͭͷ%#Λෳ਺αʔϏε͕ ࢀর͢Δͷ͸BOUJQBUUFSO<ཁग़య> ࠓճ͸ʮϞσϧ͕ڞ༗͞ΕΔʯʮ"DUJWF3FDPSEܦ༝ͰͷΈ ΞΫηε͞ΕΔʯલఏͷ΋ͱͰ%#΋ڞ༗ͨ͠
  35. ©2018 Wantedly, Inc. ੾Γग़͠ର৅ίʔυΛܾΊΔ ͳʹΛHFNʹͯ͠ɼͳʹΛ࢒͢ʁ ‣ ੾Γग़͠ର৅ͷத৺ʹͳΔϞσϧΛܾΊΔ ‣ ΊͬͪΌίʔυΛಡΜͰɼؔ࿈͢ΔϞσϧ΍αʔϏεΛΫϥεਤͱ͔ॻ͘ 

    ͍͢͝ྔʹͳΓ͕ͪͳͷͰɼ੾Γग़͠ͷ୯Ґ͸ࡉ͔Ίʹ͢Δ ‣ ྔ͕ଟ͍ͳΒɼ͍͍ײ͡ʹϩάΛऩू͢Δ͔ίʔυΛ੩తղੳ͢Δͱྑ͍ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  36. ©2018 Wantedly, Inc. ੾Γग़͠ର৅ίʔυΛܾΊΔ TIBSFEHFN͸͋͘·Ͱʮ1FPQMFͷυϝΠϯʯΛѻ͏΋ͷ ‣ 1FPQMFͷυϝΠϯʹؔ͢Δ΋ͷ͸HFNʹҠ͢ ‣ 1FPQMFɾ$IBU྆ํͷυϝΠϯʹ·͕ͨΔ৔߹΋HFNʹҠ͢ ‣

    $IBUͷυϝΠϯʹͷΈؔ࿈͢Δ΋ͷ͸ݩ3BJMTʹ࢒͢  HFNʹ੾Γग़͞Εͨڞ༗ϞσϧΛܧঝ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  37. ©2018 Wantedly, Inc. ੾Γग़͠ର৅ίʔυΛܾΊΔ TIBSFEHFN͸͋͘·Ͱʮ1FPQMFͷυϝΠϯʯΛѻ͏΋ͷ ‣ 1FPQMFͷυϝΠϯʹؔ͢Δ΋ͷ͸HFNʹҠ͢ ‣ 1FPQMFɾ$IBU྆ํͷυϝΠϯʹ·͕ͨΔ৔߹΋HFNʹҠ͢ ‣

    $IBUͷυϝΠϯʹͷΈؔ࿈͢Δ΋ͷ͸ݩ3BJMTʹ࢒͢  HFNʹ੾Γग़͞Εͨڞ༗ϞσϧΛܧঝ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ class Contact < ChatShared::Contact # ...
  38. ©2018 Wantedly, Inc. ੾Γग़͠ର৅ίʔυΛܾΊΔ ෭࡞༻Λ൐͏ϥΠϑαΠΫϧίʔϧόοΫΛͲ͏͢Δ͔ ‣ ओʹ"DUJWF3FDPSEͷDBMMCBDL  FHBGUFS@TBWFͰผͷςʔϒϧΛߋ৽͢Δ ‣

    ߋ৽ઌ͕ݩΞϓϦͷυϝΠϯͩͱ஍ࠈ  $IBUͷؔ৺·ͰTIBSFEHFNʹฆΕࠐΜͰ͠·͏ͱຊ຤స౗ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  39. ©2018 Wantedly, Inc. ੾Γग़͠ର৅ίʔυΛܾΊΔ ෭࡞༻Λ൐͏ϥΠϑαΠΫϧίʔϧόοΫΛͲ͏͢Δ͔ ‣ ओʹ"DUJWF3FDPSEͷDBMMCBDL  FHBGUFS@TBWFͰผͷςʔϒϧΛߋ৽͢Δ ‣

    ߋ৽ઌ͕ݩΞϓϦͷυϝΠϯͩͱ஍ࠈ  $IBUͷؔ৺·ͰTIBSFEHFNʹฆΕࠐΜͰ͠·͏ͱຊ຤స౗ ‣ TJEFLJRతͳඇಉظδϣϒ΋೉͍͠  HFNʹҠͯ͠͠·͏ͱɼͭͷKPC࣮૷͕͍ΖΜͳͱ͜ΖͰಈ͘ϋϝʹ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  40. ©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR

    1FPQMF"XFTPNF+PC $IBU3BJMT͔ΒHFNʹҠͨ͠ &͕͢͞ʹ΍͹͍ ಉ͡KPC͕ՕॴҎ্Ͱಈ͍ͯ͠·͏ͱɼ
 ໰୊ͷ͋ΔKPC͕ग़͖ͯͨͱ͖ͷΩϟϯηϧ౳͕ ࠔ೉ʹͳΔ
  41. ©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR

    1FPQMF"XFTPNF+PC 4IBSFEHFN͕ੜ੒ͨ͠+PC ͋Β͔͡Ίڞ༗͢ΔKPCͷϦετΛ࡞͓͍ͬͯͯɼ֘ ౰KPC͕ଘࡏ͠ͳ͚Ε͹
 ʮଞํͷαʔόʹϦΫΤετ͢ΔKPCʯͷ࣮૷Λੜ੒
  42. ©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ jobs = [ #

    Contact callbacks new('yashima/card_index_job', [:contact_id]), new('yashima/index_to_finder_job', [:user_id]), # ... ]
  43. ©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ jobs = [ #

    Contact callbacks new('yashima/card_index_job', [:contact_id]), new('yashima/index_to_finder_job', [:user_id]), # ... ] job_class_name = job_name.camelize.safe_constantize job_class = job_class_name.safe_constantize if job_class.nil? c = Class.new c.class_eval do def perform_later(*params) # ... end end Object.const_set(job_class_name, c) end
  44. ©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏ jobs = [ #

    Contact callbacks new('yashima/card_index_job', [:contact_id]), new('yashima/index_to_finder_job', [:user_id]), # ... ] job_class_name = job_name.camelize.safe_constantize job_class = job_class_name.safe_constantize if job_class.nil? c = Class.new c.class_eval do def perform_later(*params) # ... end end Object.const_set(job_class_name, c) end ຊདྷ͜Μͳ͜ͱͨ͠Βμϝͳؾ͕͢Δ ͕ɼ͍ۙকདྷʹҠߦ͕׬ྃͨ͠Βফ͢ʂͱ͍͏ڧ͍ҙࢤͰ࣮૷
  45. ©2018 Wantedly, Inc. HFNͷ੾Γग़͠ํ Ͳ͏͍͏഑ஔʹ͢Δͷ͔ " ڞ༗෦෼Λ৽͍͠ϦϙδτϦʹ੾Γग़͢  چ3BJMTʹ͋ΔΫϥεΛผ3FQPTJUPSZʹҠ͢࡞ۀ͕ͦ΋ͦ΋໘౗ #

    طଘ3BJMTΛͦͷ··HFNʹʢADIBU@SBJMTDIBU@SBJMTHFNTQFDAΛͭ͘Δʣ  ͘͢ͳ͘ͱ΋DIBUଆ͸΄΅ࠓ·ͰͲ͓Γར༻Ͱ͖Δʁ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  46. ©2018 Wantedly, Inc. HFNͷ੾Γग़͠ํ ݩ3BJMTΞϓϦʹͱͬͯ͸HFNͰ͸ͳ͍ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏  USFFTZOD@TIBSFE TZOD@TIBSFE

    ᵓᴷᴷMJC ᴹᵓᴷᴷTZOD@TIBSFE ᴹᴹᵓᴷᴷKPCT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQKPCTTZOD@TIBSFE ᴹᴹᵓᴷᴷNPEFMT ᴹᴹᴹᵓᴷᴷDPODFSO ᴹᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTDPODFSOTTZ ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTTZOD@TIBSFE ᴹᴹᵓᴷᴷSBJMUJFSC ᴹᴹᵓᴷᴷTFSWJDFT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQTFSWJDFTTZOD@TIBSFE ᴹᴹᵋᴷᴷWFSTJPOSC ᴹᵋᴷᴷTZOD@TIBSFESC ᵋᴷᴷTZOD@TIBSFEHFNTQFD EJSFDUPSJFT pMFT
  47. ©2018 Wantedly, Inc. HFNͷ੾Γग़͠ํ ݩ3BJMTΞϓϦʹͱͬͯ͸HFNͰ͸ͳ͍ ‣ HFNͷத਎Λ͢΂ͯTZNMJOLʹͯ͠͠·͏  ࣮ଶ͸ݩ3BJMTͷBQQҎԼʹ͓͍͓ͯ͘ Ϟσϧͷڞ༗

    αʔϏεີ݁߹ʹཱͪ޲͔͏  USFFTZOD@TIBSFE TZOD@TIBSFE ᵓᴷᴷMJC ᴹᵓᴷᴷTZOD@TIBSFE ᴹᴹᵓᴷᴷKPCT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQKPCTTZOD@TIBSFE ᴹᴹᵓᴷᴷNPEFMT ᴹᴹᴹᵓᴷᴷDPODFSO ᴹᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTDPODFSOTTZ ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTTZOD@TIBSFE ᴹᴹᵓᴷᴷSBJMUJFSC ᴹᴹᵓᴷᴷTFSWJDFT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQTFSWJDFTTZOD@TIBSFE ᴹᴹᵋᴷᴷWFSTJPOSC ᴹᵋᴷᴷTZOD@TIBSFESC ᵋᴷᴷTZOD@TIBSFEHFNTQFD EJSFDUPSJFT pMFT
  48. ©2018 Wantedly, Inc. HFNͷ੾Γग़͠ํ ݩ3BJMTΞϓϦʹͱͬͯ͸HFNͰ͸ͳ͍ ‣ HFNͷத਎Λ͢΂ͯTZNMJOLʹͯ͠͠·͏  ࣮ଶ͸ݩ3BJMTͷBQQҎԼʹ͓͍͓ͯ͘ ‣

    ͜ΕͩͱͲ͏ݟͯ΋ΞϓϦέʔγϣϯίʔυͳͷͰɼ
 USBDF΋͍͍ײ͡ʹ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏  USFFTZOD@TIBSFE TZOD@TIBSFE ᵓᴷᴷMJC ᴹᵓᴷᴷTZOD@TIBSFE ᴹᴹᵓᴷᴷKPCT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQKPCTTZOD@TIBSFE ᴹᴹᵓᴷᴷNPEFMT ᴹᴹᴹᵓᴷᴷDPODFSO ᴹᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTDPODFSOTTZ ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTTZOD@TIBSFE ᴹᴹᵓᴷᴷSBJMUJFSC ᴹᴹᵓᴷᴷTFSWJDFT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQTFSWJDFTTZOD@TIBSFE ᴹᴹᵋᴷᴷWFSTJPOSC ᴹᵋᴷᴷTZOD@TIBSFESC ᵋᴷᴷTZOD@TIBSFEHFNTQFD EJSFDUPSJFT pMFT
  49. ©2018 Wantedly, Inc. HFNͷ੾Γग़͠ํ ݩ3BJMTΞϓϦʹͱͬͯ͸HFNͰ͸ͳ͍ ‣ HFNͷத਎Λ͢΂ͯTZNMJOLʹͯ͠͠·͏  ࣮ଶ͸ݩ3BJMTͷBQQҎԼʹ͓͍͓ͯ͘ ‣

    ͜ΕͩͱͲ͏ݟͯ΋ΞϓϦέʔγϣϯίʔυͳͷͰɼ
 USBDF΋͍͍ײ͡ʹ ‣ ৽3BJMTଆͰ͸;ͭ͏ʹHFNͱͯ͠ಡΈࠐΊΔ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏  USFFTZOD@TIBSFE TZOD@TIBSFE ᵓᴷᴷMJC ᴹᵓᴷᴷTZOD@TIBSFE ᴹᴹᵓᴷᴷKPCT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQKPCTTZOD@TIBSFE ᴹᴹᵓᴷᴷNPEFMT ᴹᴹᴹᵓᴷᴷDPODFSO ᴹᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTDPODFSOTTZ ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQNPEFMTTZOD@TIBSFE ᴹᴹᵓᴷᴷSBJMUJFSC ᴹᴹᵓᴷᴷTFSWJDFT ᴹᴹᴹᵋᴷᴷTZOD@TIBSFEBQQTFSWJDFTTZOD@TIBSFE ᴹᴹᵋᴷᴷWFSTJPOSC ᴹᵋᴷᴷTZOD@TIBSFESC ᵋᴷᴷTZOD@TIBSFEHFNTQFD EJSFDUPSJFT pMFT
  50. ©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ  ͱΓ͋͑ͣ%#Λڞ༗͢Δ  ੾Γग़͠ର৅ΛܾΊΔ 

    ੾Γग़͠ํʢHFNԽͷ΍ΓํʣΛܾΊΔ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  51. ©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ  ͱΓ͋͑ͣ%#Λڞ༗͢Δ  ੾Γग़͠ର৅ΛܾΊΔ 

    ੾Γग़͠ํʢHFNԽͷ΍ΓํʣΛܾΊΔ  ΍Δ  ਓͰिؒͪΐͬͱ͔͔ͬͨ  ʮͭͳ͕Γʢ࿈བྷઌʣ௥ՃʯΛ൐͏৽ػೳ࣮૷ͷλΠϛϯάͰŜƄŕͱ΍ͬͨ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  52. ©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ  ͱΓ͋͑ͣ%#Λڞ༗͢Δ  ੾Γग़͠ର৅ΛܾΊΔ 

    ੾Γग़͠ํʢHFNԽͷ΍ΓํʣΛܾΊΔ  ΍Δ  ਓͰिؒͪΐͬͱ͔͔ͬͨ  ʮͭͳ͕Γʢ࿈བྷઌʣ௥ՃʯΛ൐͏৽ػೳ࣮૷ͷλΠϛϯάͰŜƄŕͱ΍ͬͨ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  53. ©2018 Wantedly, Inc. ͜ͷ͋ͱͲ͏͢Δʁ ৽3BJMT͔ΒϞσϧ͕ಡΈॻ͖Ͱ͖ΔΑ͏ʹͳ͕ͬͨɼ͜ΕͰऴΘΓͰ͸ͳ͍ ‣ ࠷ऴΰʔϧʢເʣ͸ʮ1FPQMFؔ࿈࣮૷͕͢΂ͯ$IBU3BJMT͔Βফ͑Δʯ ‣ TIBSFEHFN΋ෆཁʹͳΔ ‣

    $IBU%#ʹ͋Δςʔϒϧͷ͏ͪɼ1FPQMFͰ͔͠࢖ͬͯͳ͍΋ͷ͸1FPQMF%#ʹҠ͢ ‣ Զͨͪͷઓ͍͸͜Ε͔Βͩʂʂ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱͪ޲͔͏
  54. ©2018 Wantedly, Inc. ࠷௿ݶͷ৺͕͚ ͜Ε΍ͬͱ͚͹Α͔ͬͨγϦʔζ ‣ ಉ͡ςʔϒϧΛαʔϏεؒͰڞ༗͢Δͷ͸Α͘ͳ͔ͬͨʁ ‣ ࠷ॳ͔Β%#Θ͚Ε͹Α͔ͬͨʁ ‣

    ίΞͷՁ஋Λఏڙ͢Δ෦෼͸͔ͬ͠ΓςετΛॻ͘΂͖ͩͬͨ  .JDSPTFSWJDFͷςετ೉͍͠໰୊ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ
  55. ©2018 Wantedly, Inc. ࠷௿ݶͷ৺͕͚ ͜Ε΍ͬͱ͚͹Α͔ͬͨγϦʔζ ‣ ಉ͡ςʔϒϧΛαʔϏεؒͰڞ༗͢Δͷ͸Α͘ͳ͔ͬͨʁ ‣ ࠷ॳ͔Β%#Θ͚Ε͹Α͔ͬͨʁ ‣

    ίΞͷՁ஋Λఏڙ͢Δ෦෼͸͔ͬ͠ΓςετΛॻ͘΂͖ͩͬͨ  .JDSPTFSWJDFͷςετ೉͍͠໰୊ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ࣄ৘Λߟ͑Δͱɼ͜͜͸Ұ֓ʹ͸ݴ͑ͳ͍ ‣ ϦϦʔεલɾ௚ޙͷ։ൃ·ͩՁ஋ΛੜΈग़͍ͤͯͳ͍ঢ়ଶ  ܧଓతʹՁ஋ΛੜΈग़ͤΔ͔͢Βະ֬ఆ ‣ ૣ͗͢Δ࠷దԽʹͳΓ͗͢ͳ͍  ҰํͰɼ࠷௿ݶ͸΍ͬͱ͔ͳ͍ͱ͋ͱͰ͔ͳΓޙչ͢Δ  ͍͍ײ͡ͷམͱ͠ॴΛݟ͚ͭ·͠ΐ͏
  56. ©2018 Wantedly, Inc. ෼ׂΛ͢Δͱ͖͸ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ‣ ͪΌΜͱͦͷαʔόͷυϝΠϯɾ࣮૷ΛݟۃΊΑ͏  ͦΕ͸༻ޠఆ͚͔ٛͩ΋͠Εͳ͍͠ɼίʔυΛͬ͟ͱಡΜͰґଘચ͍ग़͕͠ඞཁ͔΋͠Εͳ͍
 ϩάΛूΊͳ͍ͱ͍͚ͳ͍͔΋͠Εͳ͍

     *OUFSGBDFΛோΊΔ͚ͩͰ͸ෆे෼  ෼ׂΛ͸͡ΊΔʹͯ͠΋ͳΔ΂͘খ͍͞୯ҐͰ͢͢ΊΔ ‣ 3VCZPO3BJMTͳΒɼʮ࠷௿ݶʯΛक͍ͬͯΕ͹͍͍ͩͨͳΜͱ͔ͳΔ  ΄͔ͷʮੜ࢈ੑʹدͤͯΔܥݴޠɾ8"'ʯͰ΋͍͍ͩͨͳΜͱ͔ͳΔ͔΋
  57. ©2018 Wantedly, Inc. ͍ͭ෼ׂΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ໰୊͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹ͸ɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͹͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମ͸ผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ෼͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ͸ ͳ͘ɺͦͷதͰ΋υϝΠϯΛݟग़ͯ͠Ұͭͷ࢓ࣄΛߦ͏TFSWJDFʹ෼ׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ

    ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱ͸ͳ͘ɺ৔߹ʹ Αͬͯ͸൑அΛ஗Ԇͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰ੾Γग़͢ํ͕ྑ͍৔߹΋͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕࢖ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͸͜ΕͰ໌Β͔ʹ໰୊ͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ
  58. ©2018 Wantedly, Inc. ͍ͭ෼ׂΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ໰୊͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹ͸ɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͹͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମ͸ผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ෼͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ͸ ͳ͘ɺͦͷதͰ΋υϝΠϯΛݟग़ͯ͠Ұͭͷ࢓ࣄΛߦ͏TFSWJDFʹ෼ׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ

    ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱ͸ͳ͘ɺ৔߹ʹ Αͬͯ͸൑அΛ஗Ԇͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰ੾Γग़͢ํ͕ྑ͍৔߹΋͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕࢖ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͸͜ΕͰ໌Β͔ʹ໰୊ͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ
  59. ©2018 Wantedly, Inc. ͍ͭ෼ׂΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ໰୊͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹ͸ɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͹͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମ͸ผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ෼͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ͸ ͳ͘ɺͦͷதͰ΋υϝΠϯΛݟग़ͯ͠Ұͭͷ࢓ࣄΛߦ͏TFSWJDFʹ෼ׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ

    ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱ͸ͳ͘ɺ৔߹ʹ Αͬͯ͸൑அΛ஗Ԇͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰ੾Γग़͢ํ͕ྑ͍৔߹΋͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕࢖ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͸͜ΕͰ໌Β͔ʹ໰୊ͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ
  60. ©2018 Wantedly, Inc. ͍ͭ෼ׂΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ໰୊͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹ͸ɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͹͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମ͸ผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ෼͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ͸ ͳ͘ɺͦͷதͰ΋υϝΠϯΛݟग़ͯ͠Ұͭͷ࢓ࣄΛߦ͏TFSWJDFʹ෼ׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ

    ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱ͸ͳ͘ɺ৔߹ʹ Αͬͯ͸൑அΛ஗Ԇͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰ੾Γग़͢ํ͕ྑ͍৔߹΋͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕࢖ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͸͜ΕͰ໌Β͔ʹ໰୊ͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ
  61. ©2018 Wantedly, Inc. ͍ͭ෼ׂΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ໰୊͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹ͸ɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͹͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମ͸ผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ෼͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ͸ ͳ͘ɺͦͷதͰ΋υϝΠϯΛݟग़ͯ͠Ұͭͷ࢓ࣄΛߦ͏TFSWJDFʹ෼ׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ

    ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱ͸ͳ͘ɺ৔߹ʹ Αͬͯ͸൑அΛ஗Ԇͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰ੾Γग़͢ํ͕ྑ͍৔߹΋͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕࢖ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͸͜ΕͰ໌Β͔ʹ໰୊ͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ ͜ͷʮ·ͩ҆ఆͯ͠ͳ͍υϝΠϯʯΛҭΉͨΊʹɼͳΜͰ΋΍Δαʔό͸ඞཁ ‣ ʮͳΜͰ΋΍Δαʔόʯˠʮઐ໳ϚΠΫϩαʔϏεʯ  υϝΠϯ͕҆ఆ͢Δ·Ͱ଴ͯ͹͍͍ ‣ ʮͳΜͰ΋΍Δαʔόʢ૬৐ΓʣʯˠʮͳΜͰ΋΍Δαʔόʢઐ༻ʣʯ  Ҡߦ͢Δ·Ͱߦ͔ͳͯ͘΋ૣΊʹ࡞Γ͍ͨ  ෆ҆ఆͳυϝΠϯ͕ΑͦͷΞϓϦͱࠞ͟Δͱ๨ΕΒΕ͔Ͷͳ͍
  62. ॻ͘લʹʜ ‣ αʔόʹෳ਺ΞϓϦ͕૬৐Γ͢Δͷ͸ඞͣ͠΋ѱͰ͸ͳ͍  ͦͷͱ͖ڐ͞ΕΔϦιʔεͱ૬ஊ͠ɼૣ͗͢Δ࠷దԽ͸ආ͚Δ ‣ ૬৐ΓΛڐ༰͢Δ৔߹ɼ࠷௿ݶͷࢥ͍΍ΓΛ࣋ͬͯॻ͘  ωʔϜεϖʔε͸ͪΌΜͱ੾Δ ςʔϒϧ͸ͳΔ΂͘ڞ༗͠ͳ͍

    ςετΛ͔ͬ͠Γॻ͘ FUD ઓ͏λΠϛϯάͰ͸ʜ ‣ ࠷ॳʹఢΛ஌Δ  ͳʹ͕ີ݁߹͍ͯ͠Δ͔Λ೺Ѳ͢ΔʢίʔυಡΉɼϩάΛऔΔɼղੳ͢ΔɼFUDʣ ‣ Ұؾʹશͯ΍Ζ͏ͱͤͣɼݱ࣮తͳͱ͜Ζ͔ΒקΊ͍ͯ͘  ·ͣ%#ͭͬͯ͘ɼٕज़ελοΫʹ߹ͬͨʮੜ࢈ੑ͕Լ͕Βͳ͍ख๏ʯΛݟ͚ͭΔ