Share
Embed
すべてが gem になる - サービス密結合からの段階的脱却 #builderscon / builderscon tokyo 2018
builderscon tokyo 2018 https://builderscon.io/tokyo/2018/session/14c60fad-20fb-4fa1-af7c-f788b5fb8588
izumin5210
September 08, 2018
Transcript
146 slides
-
izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide
- Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ -
izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide
- Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ -
izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide
- Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ Builds "Rails" of the microservices platform -
izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide
- Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ -
izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide
- Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ -
izumin5210 Engineer at Wantedly, Inc. ‣ Wantedly People - ServerSide
- Golang, Ruby, etc. - Web Frontend ‣ Leads Golang engineering ʢ˞ࣗশʣ ‣ ΞϓϦଆͷʮϚΠΫϩαʔϏεͷͭΒ͞ʯΛߟ͑Δਓ -
©2018 Wantedly, Inc. Background History of our apps 2012 ~
2016.01 ~ 2016.11 ~ released -
©2018 Wantedly, Inc. Background History of our apps 2016.01 ~
2016.11 ~ released 2015.04 ~ developed 2011 ~ 2012 ~ 2016.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) -
©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ʹऔΓʹߦ͘ Ϣʔβೝূαʔό શαʔϏεڞ௨Ͱར༻͢Δೝূαʔό ͍͍ͪͯ͘͞ -
©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ຊମͱΘ͔ΕɼෳαʔόͰ ߏ͞Εͨ -
©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͕ຊ൪ೖ͞Εɼ৽ͨͳαʔόΛؾܰʹ ࡞ΕΔΑ͏ʹͳͬͨ ‣ ίΞͷମݧΛશྗͰྑ͘͢Δ -
©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͕ຊ൪ೖ͞Εɼ৽ͨͳαʔόΛؾܰʹ ࡞ΕΔΑ͏ʹͳͬͨ ‣ ίΞͷମݧΛશྗͰྑ͘͢Δ -
©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͕ຊ൪ೖ͞Εɼ৽ͨͳαʔόΛؾܰʹ ࡞ΕΔΑ͏ʹͳͬͨ ‣ ίΞͷମݧΛશྗͰྑ͘͢Δ -
©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ʹஔ͖͍͑ͯͩ͘͞ -
©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ʹஔ͖͍͑ͯͩ͘͞ -
©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ͷϝΠϯαʔόɼ࣮ߴػೳͳαʔό -
©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 ~ -
©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ΞϓϦέʔγϣϯʹ ίΞػೳ͕ॻ͔Ε͍ͯͨ αʔϏεີ݁߹ͱ͍͍ͬͯΔͷ͜Εͷ͜ͱ -
©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 ~ -
©2018 Wantedly, Inc. ̏ͭͷαʔϏεJO8BOUFEMZ "QQMJDBUJPO "QQMJDBUJPO %BUBCBTF ˞3BJMTͷ෦͓͖ͳ8"'MJCSBSZʹஔ͖͍͑ͯͩ͘͞ 4FSWFS "QQMJDBUJPO
4FSWFS %BUBCBTF ͨ͘͞Μͷ4FSWFSɾ%BUBCBTF ? -
©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ΞϓϦέʔγϣϯʹ ίΞػೳ͕ॻ͔Ε͍ͯͨ αʔϏεີ݁߹ͱ͍͍ͬͯΔͷ͜Εͷ͜ͱ -
©2018 Wantedly, Inc. ϝΠϯʓʓαʔόͷڞ༗ ͳʹ͕͏Ε͍͠ʁ ‣ طଘͷࢿ࢈Λଘʹ׆͔ͤΔ ࠓճͷྫͩͱɼʮڞ༗Ϣʔβσʔλૢ࡞͕Ͱ͖Δศར"1*ʯ͕େ͖͍
͔ͨ͠͠Βڞ༗Ͱ͖ΔϞσϧ͕͋Δ͔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. ϝΠϯʓʓαʔόͷڞ༗ ͳʹ͕͏Ε͍͠ʁ ‣ طଘͷࢿ࢈Λଘʹ׆͔ͤΔ ࠓճͷྫͩͱɼʮڞ༗Ϣʔβσʔλૢ࡞͕Ͱ͖Δศར"1*ʯ͕େ͖͍
͔ͨ͠͠Βڞ༗Ͱ͖ΔϞσϧ͕͋Δ͔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. ϝΠϯʓʓαʔόͷڞ༗ ͳʹ͕͏Ε͍͠ʁ ‣ طଘͷࢿ࢈Λଘʹ׆͔ͤΔ ࠓճͷྫͩͱɼʮڞ༗Ϣʔβσʔλૢ࡞͕Ͱ͖Δศར"1*ʯ͕େ͖͍
͔ͨ͠͠Βڞ༗Ͱ͖ΔϞσϧ͕͋Δ͔ ‣ αʔό͕͍ͬͺ͍͋ΔͱɼͭΒ͍͜ͱଟ͍ ΤϥʔϋϯυϦϯάͱ͔ϦτϥΠͱ͔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. ো͕ى͖ͨΒʁ ͳʹ͕͍ʁ ‣ ·ͣɼʮͲ͕ͬͪݪҼͰ͕ى͖͔ͨʯΛಛఆ͠ͳ͍ͱ͍͚ͳ͍ ӨڹൣғΛ͠ΒΔͷʹ྆ํͷ͕͍ࣝΔ ‣
Լख͢Δͱר͖ఴ͑৯Βͬͯ྆ํམͪΔ ࣮ࡍʹ1FPQMFىҼͰো͕ى͖ͯ$IBUΖͱམͪͨ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. Ϟσϧ͕ࠞ͟Δʁ ͳʹ͕͍ʁ ‣ ABQQNPEFMTAΛݟͯɼͺͬͱݟͰʮͲΕ͕ͲͬͪͷαʔϏεͳͷ͔ʯΘ͔Βͳ͘ͳΔ ͪΌΜͱωʔϜεϖʔε͚ͭ·͠ΐ͏ͱ͍͏͋Δ
ҰํͰɼDIBU͕ੜ·Εͨͱ͖ʹDIBU͔͠ͳ͍ωʔϜεϖʔε͍ͭͯͳ͍ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. Ϟσϧ͕ࠞ͟Δʁ ͳʹ͕͍ʁ ‣ ABQQNPEFMTAΛݟͯɼͺͬͱݟͰʮͲΕ͕ͲͬͪͷαʔϏεͳͷ͔ʯΘ͔Βͳ͘ͳΔ ͪΌΜͱωʔϜεϖʔε͚ͭ·͠ΐ͏ͱ͍͏͋Δ
ҰํͰɼDIBU͕ੜ·Εͨͱ͖ʹDIBU͔͠ͳ͍ωʔϜεϖʔε͍ͭͯͳ͍ ‣ ࣮ݱ͍ͨ͜͠ͱ͕ࣅ͍ͯΔ͔Βͱ͍ͬͯϞσϧΛڞ༗͢Δͱ͞ΒʹݟۃΊࠔʹ มߋ͢Δͱ͖ͷ͍͖͑ΐ͏Μ͍Λஅͮ͠Β͘ͳΔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. Ϟσϧ͕ࠞ͟Δʁ ͳʹ͕͍ʁ ‣ ABQQNPEFMTAΛݟͯɼͺͬͱݟͰʮͲΕ͕ͲͬͪͷαʔϏεͳͷ͔ʯΘ͔Βͳ͘ͳΔ ͪΌΜͱωʔϜεϖʔε͚ͭ·͠ΐ͏ͱ͍͏͋Δ
ҰํͰɼDIBU͕ੜ·Εͨͱ͖ʹDIBU͔͠ͳ͍ωʔϜεϖʔε͍ͭͯͳ͍ ‣ ࣮ݱ͍ͨ͜͠ͱ͕ࣅ͍ͯΔ͔Βͱ͍ͬͯϞσϧΛڞ༗͢Δͱ͞ΒʹݟۃΊࠔʹ มߋ͢Δͱ͖ͷ͍͖͑ΐ͏Μ͍Λஅͮ͠Β͘ͳΔ αʔϏεີ݁߹ ͳʹ͕Α͘ͳ͍ʁ -
©2018 Wantedly, Inc. #Δલʹ৺͕ંΕͨύλʔϯ ͱΓ͋͑ͣؔ࿈ΤϯυϙΠϯτΛશ෦ڍ͛ΔେձΛͬͨ ‣ αʔό$IBU3BJMTͷASPVUFTSCAΛશ෦ݟΔ ωʔϜεϖʔεͬͯ͋Δ͔Β͙͢Θ͔Δ ‣
ΞϓϦ"OESPJEΞϓϦͷ3FUSPpUʢ"1*ΫϥΠΞϯτʣͷJOUFSGBDFΛݟΔ ഊͷྺ࢙ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©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); -
©2018 Wantedly, Inc. #Δલʹ৺͕ંΕͨύλʔϯ ͱΓ͋͑ͣؔ࿈ΤϯυϙΠϯτΛશ෦ڍ͛ΔେձΛͬͨ ‣ αʔό$IBU3BJMTͷASPVUFTSCAΛશ෦ݟΔ ωʔϜεϖʔεͬͯ͋Δ͔Β͙͢Θ͔Δ ‣
ΞϓϦ"OESPJEΞϓϦͷ3FUSPpUʢ"1*ΫϥΠΞϯτʣͷJOUFSGBDFΛݟΔ ‣ ݁Ռʘ ?P? ʗ ഊͷྺ࢙ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. #Δલʹ৺͕ંΕͨύλʔϯ Կ͕ഊҼͩͬͨͷ͔ ‣ ʮͦͦԿ͕DIBUʹґଘ͍ͯ͠Δ͔Λચ͍ग़͢ʯ͕తͩͬͨ ͕ɼ࣮ͦΕ"1*ʢJOUFSGBDFʣΛݟ͚ͨͩͰΘ͔Βͳ͍
෦࣮ϨϕϧͰґଘ͕ଘࡏ ʢFHϢʔβใऔಘɼ+40/γϦΞϥΠβɼͦͦςʔϒϧ͕ڞ༗ɼFUDʣ ഊͷྺ࢙ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. #Δલʹ৺͕ંΕͨύλʔϯ Կ͕ഊҼͩͬͨͷ͔ ‣ ʮͦͦԿ͕DIBUʹґଘ͍ͯ͠Δ͔Λચ͍ग़͢ʯ͕తͩͬͨ ͕ɼ࣮ͦΕ"1*ʢJOUFSGBDFʣΛݟ͚ͨͩͰΘ͔Βͳ͍
෦࣮ϨϕϧͰґଘ͕ଘࡏ ʢFHϢʔβใऔಘɼ+40/γϦΞϥΠβɼͦͦςʔϒϧ͕ڞ༗ɼFUDʣ ‣ ʮϞσϧΛ໌Β͔ʹ͢ΔʯʮͲͷϞσϧ͕ͲΜͳٕज़ʹґଘ͍ͯ͠Δͷ͔Λ໌Β͔ʹ͢Δʯ͕ઌܾͩͬͨ ഊͷྺ࢙ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. $υϝΠϯఆٛҠߦઌαʔόͮ͘Γ ͍ͪ͞ͳ͜ͱ͔Β͡ΊΔ ‣ ͦͦυϝΠϯϞσϧΛѲͰ͖ͯͳ͔ͬͨ ͬͱॏཁͰ͋Δʮ࿈བྷઌʯ·ΘΓͷϞσϧΛͪΌΜͱߟ͑ͨ ‣
ͱΓ͋͑ͣҠߦઌͷ3BJMTαʔόΛ࡞Δ ৽ػೳͳͲͳΔͬͪ͘͜ʹ ܸͷԎ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. $υϝΠϯఆٛҠߦઌαʔόͮ͘Γ ͳͥ͜ͷλΠϛϯάͰ͔ͬͨ ‣ νʔϜߏ͕มΘͬͨ ໌֬ʹʮج൫ "1*ʯʮਫ਼্͛ʯͰνʔϜ͕͔Εͨ
‣ ͪΐ͏Ͳʮͭͳ͕ΓʯʹϑΥʔΧε࢝͠ΊͨλΠϛϯά ͔͜͜ΒͲΜͲΜػೳՃ͕͞ΕΔ ͜ΕҎ্$IBU3BJMTʹ1FPQMFͷؔ৺ΛೖΕͨ͘ͳ͔ͬͨ ܸͷԎ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. $υϝΠϯఆٛҠߦઌαʔόͮ͘Γ ͳʹ͕มΘ͔ͬͨ ‣ ৽ػೳՃΛࡑѱײͳ͓͘͜ͳ͑ΔΑ͏ʹͳͬͨ $IBU%#ʹςʔϒϧՃ͢ΔͷΓؾ͕Ҿ͚Δ͕ɼͦΕΛ͠ͳͯ͘ྑ͘ͳͬͨ ‣
ҰํͰɼίΞͷϞσϧ͕$IBU3BJMTʹ͞ΕͨͨΊ৽αʔόͰͰ͖Δ͜ͱݶΒΕΔ ͨͱ͑ɼʮͭͳ͕Γʢ࿈བྷઌʣͷՃʯʮͭͳ͕ͬͨ૬खͷϓϩϑΟʔϧऔಘʯ $IBU3BJMTͷ"1*Λୟ͘ඞཁ͕͋ͬͨ %#Λڞ༗͢ΕσʔλΞΫηεՄೳ͕ͩɼͦΕͰϞσϧ͕ਖ਼͘͠ө͞Εͳ͍ ܸͷԎ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. %ίΞϞσϧΛ৽αʔό͔Β৮ΕΔΑ͏ʹ ΨϯΨϯ͍͜͏ͥ ‣ ʮͱΓ͋͑ͣҠߦઌͷ3BJMTαʔόΛ࡞ͬͨʯ͚ͲɼͰ͖Δ͜ͱ͕গͳ͍ ʮͭͳ͕Γʢ࿈བྷઌʣʯΛಡΈॻ͖͢ΔͷͲ͏ͯ͠ݩͷαʔόΛܦ༝ͯ͠͠·͏
ͭΒ͍ ‣ ʮϞσϧΛڞ༗͍ͨ͠Ͷʯͱ͍͏ͷͣͬͱݴͬͯͨ ҰํͰɼ։ൃ͔ͳΓ׆ൃෳͷνʔϜ͕ͲͪΒ͞ΘΔͷͰɼத్ͳঢ়ଶʹͳΔͱࠔΔ ʮ3VCZͳΒɼ͏·͘HFNʹ͢Εੜ࢈ੑΛԼ͛ͣϞσϧΛڞ༗Ͱ͖ΔΜ͡Όͳ͍͔ʁʯ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ ͱΓ͋͑ͣ%#Λڞ༗͢Δ Γग़͠ରΛܾΊΔ
Γग़͠ํʢHFNԽͷΓํʣΛܾΊΔ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ ͱΓ͋͑ͣ%#Λڞ༗͢Δ Γग़͠ରΛܾΊΔ
Γग़͠ํʢHFNԽͷΓํʣΛܾΊΔ Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ͱΓ͋͑ͣ%#Λڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ $IBUBQQ %BUBCBTF $IBU3BJMT 1FPQMFBQQ
1FPQMF3BJMT %BUBCBTF .JDSPTFSWJDFTͷจ຺Ͱɼͭͷ%#ΛෳαʔϏε͕ ࢀর͢ΔͷBOUJQBUUFSO<ཁग़య> ࠓճʮϞσϧ͕ڞ༗͞ΕΔʯʮ"DUJWF3FDPSEܦ༝ͰͷΈ ΞΫηε͞ΕΔʯલఏͷͱͰ%#ڞ༗ͨ͠ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ ͳʹΛHFNʹͯ͠ɼͳʹΛ͢ʁ ‣ Γग़͠ରͷத৺ʹͳΔϞσϧΛܾΊΔ ‣ ΊͬͪΌίʔυΛಡΜͰɼؔ࿈͢ΔϞσϧαʔϏεΛΫϥεਤͱ͔ॻ͘
͍͢͝ྔʹͳΓ͕ͪͳͷͰɼΓग़͠ͷ୯Ґࡉ͔Ίʹ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ ͳʹΛHFNʹͯ͠ɼͳʹΛ͢ʁ ‣ Γग़͠ରͷத৺ʹͳΔϞσϧΛܾΊΔ ‣ ΊͬͪΌίʔυΛಡΜͰɼؔ࿈͢ΔϞσϧαʔϏεΛΫϥεਤͱ͔ॻ͘
͍͢͝ྔʹͳΓ͕ͪͳͷͰɼΓग़͠ͷ୯Ґࡉ͔Ίʹ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ ͳʹΛHFNʹͯ͠ɼͳʹΛ͢ʁ ‣ Γग़͠ରͷத৺ʹͳΔϞσϧΛܾΊΔ ‣ ΊͬͪΌίʔυΛಡΜͰɼؔ࿈͢ΔϞσϧαʔϏεΛΫϥεਤͱ͔ॻ͘
͍͢͝ྔʹͳΓ͕ͪͳͷͰɼΓग़͠ͷ୯Ґࡉ͔Ίʹ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ ͳʹΛHFNʹͯ͠ɼͳʹΛ͢ʁ ‣ Γग़͠ରͷத৺ʹͳΔϞσϧΛܾΊΔ ‣ ΊͬͪΌίʔυΛಡΜͰɼؔ࿈͢ΔϞσϧαʔϏεΛΫϥεਤͱ͔ॻ͘
͍͢͝ྔʹͳΓ͕ͪͳͷͰɼΓग़͠ͷ୯Ґࡉ͔Ίʹ͢Δ ‣ ྔ͕ଟ͍ͳΒɼ͍͍ײ͡ʹϩάΛऩू͢Δ͔ίʔυΛ੩తղੳ͢Δͱྑ͍ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ TIBSFEHFN͋͘·Ͱʮ1FPQMFͷυϝΠϯʯΛѻ͏ͷ ‣ 1FPQMFͷυϝΠϯʹؔ͢ΔͷHFNʹҠ͢ ‣ 1FPQMFɾ$IBU྆ํͷυϝΠϯʹ·͕ͨΔ߹HFNʹҠ͢ ‣
$IBUͷυϝΠϯʹͷΈؔ࿈͢Δͷݩ3BJMTʹ͢ HFNʹΓग़͞Εͨڞ༗ϞσϧΛܧঝ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ TIBSFEHFN͋͘·Ͱʮ1FPQMFͷυϝΠϯʯΛѻ͏ͷ ‣ 1FPQMFͷυϝΠϯʹؔ͢ΔͷHFNʹҠ͢ ‣ 1FPQMFɾ$IBU྆ํͷυϝΠϯʹ·͕ͨΔ߹HFNʹҠ͢ ‣
$IBUͷυϝΠϯʹͷΈؔ࿈͢Δͷݩ3BJMTʹ͢ HFNʹΓग़͞Εͨڞ༗ϞσϧΛܧঝ͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ class Contact < ChatShared::Contact # ... -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ ෭࡞༻Λ͏ϥΠϑαΠΫϧίʔϧόοΫΛͲ͏͢Δ͔ ‣ ओʹ"DUJWF3FDPSEͷDBMMCBDL FHBGUFS@TBWFͰผͷςʔϒϧΛߋ৽͢Δ ‣
ߋ৽ઌ͕ݩΞϓϦͷυϝΠϯͩͱࠈ $IBUͷؔ৺·ͰTIBSFEHFNʹฆΕࠐΜͰ͠·͏ͱຊస Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. Γग़͠ରίʔυΛܾΊΔ ෭࡞༻Λ͏ϥΠϑαΠΫϧίʔϧόοΫΛͲ͏͢Δ͔ ‣ ओʹ"DUJWF3FDPSEͷDBMMCBDL FHBGUFS@TBWFͰผͷςʔϒϧΛߋ৽͢Δ ‣
ߋ৽ઌ͕ݩΞϓϦͷυϝΠϯͩͱࠈ $IBUͷؔ৺·ͰTIBSFEHFNʹฆΕࠐΜͰ͠·͏ͱຊస ‣ TJEFLJRతͳඇಉظδϣϒ͍͠ HFNʹҠͯ͠͠·͏ͱɼͭͷKPC࣮͕͍ΖΜͳͱ͜ΖͰಈ͘ϋϝʹ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR
1FPQMF"XFTPNF+PC $IBU3BJMTʹ࣮͞Εͨ+PC -
©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR
1FPQMF"XFTPNF+PC $IBU3BJMT͔ΒHFNʹҠͨ͠ -
©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR
1FPQMF"XFTPNF+PC $IBU3BJMT͔ΒHFNʹҠͨ͠ &͕͢͞ʹ͍ ಉ͡KPC͕ՕॴҎ্Ͱಈ͍ͯ͠·͏ͱɼ ͷ͋ΔKPC͕ग़͖ͯͨͱ͖ͷΩϟϯηϧ͕ ࠔʹͳΔ -
©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR
1FPQMF"XFTPNF+PC 4IBSFEHFN͕ੜͨ͠+PC -
©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ $IBU3BJMT 1FPQMF3BJMT $IBU4JEFLJR 1FPQMF4JEFLJR
1FPQMF"XFTPNF+PC 4IBSFEHFN͕ੜͨ͠+PC ͋Β͔͡Ίڞ༗͢ΔKPCͷϦετΛ࡞͓͍ͬͯͯɼ֘ KPC͕ଘࡏ͠ͳ͚Ε ʮଞํͷαʔόʹϦΫΤετ͢ΔKPCʯͷ࣮Λੜ -
©2018 Wantedly, Inc. ඇಉظδϣϒΛڞ༗͢Δ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ jobs = [ #
Contact callbacks new('yashima/card_index_job', [:contact_id]), new('yashima/index_to_finder_job', [:user_id]), # ... ] -
©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 -
©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 ຊདྷ͜Μͳ͜ͱͨ͠Βμϝͳؾ͕͢Δ ͕ɼ͍ۙকདྷʹҠߦ͕ྃͨ͠Βফ͢ʂͱ͍͏ڧ͍ҙࢤͰ࣮ -
©2018 Wantedly, Inc. HFNͷΓग़͠ํ Ͳ͏͍͏ஔʹ͢Δͷ͔ " ڞ༗෦Λ৽͍͠ϦϙδτϦʹΓग़͢ چ3BJMTʹ͋ΔΫϥεΛผ3FQPTJUPSZʹҠ͢࡞ۀ͕ͦͦ໘ #
طଘ3BJMTΛͦͷ··HFNʹʢADIBU@SBJMTDIBU@SBJMTHFNTQFDAΛͭ͘Δʣ ͘͢ͳ͘ͱDIBUଆ΄΅ࠓ·ͰͲ͓Γར༻Ͱ͖Δʁ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. HFNͷΓग़͠ํ ͦͷ··HFNʹ͢Δͱʜ ‣ 3BJMTHFN༝དྷͷUSBDFΛʮ'SBNFXPSL5SBDFʯʹ ·ͱΊͯ͠·͏ σόοά࣌େྔͷ3BJMTͷτϨʔεͷͳ͔͔Βͯͷ
ͷΛ୳͞ͳ͍ͱ͍͚ͳ͍ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. HFNͷΓग़͠ํ ͦͷ··HFNʹ͢Δͱʜ ‣ 3BJMTHFN༝དྷͷUSBDFΛʮ'SBNFXPSL5SBDFʯʹ ·ͱΊͯ͠·͏ σόοά࣌େྔͷ3BJMTͷτϨʔεͷͳ͔͔Βͯͷ
ͷΛ୳͞ͳ͍ͱ͍͚ͳ͍ ‣ σόοά࣌ʹ͜Εݫ͍͠ʜ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©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 -
©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 -
©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 -
©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 -
©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ ͱΓ͋͑ͣ%#Λڞ༗͢Δ Γग़͠ରΛܾΊΔ
Γग़͠ํʢHFNԽͷΓํʣΛܾΊΔ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ ͱΓ͋͑ͣ%#Λڞ༗͢Δ Γग़͠ରΛܾΊΔ
Γग़͠ํʢHFNԽͷΓํʣΛܾΊΔ Δ ਓͰिؒͪΐͬͱ͔͔ͬͨ ʮͭͳ͕Γʢ࿈བྷઌʣՃʯΛ͏৽ػೳ࣮ͷλΠϛϯάͰŜƄŕͱͬͨ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ϞσϧͷTIBSFEHFNԽ ؆୯εςοϓ ͱΓ͋͑ͣ%#Λڞ༗͢Δ Γग़͠ରΛܾΊΔ
Γग़͠ํʢHFNԽͷΓํʣΛܾΊΔ Δ ਓͰिؒͪΐͬͱ͔͔ͬͨ ʮͭͳ͕Γʢ࿈བྷઌʣՃʯΛ͏৽ػೳ࣮ͷλΠϛϯάͰŜƄŕͱͬͨ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ͜ͷ͋ͱͲ͏͢Δʁ ৽3BJMT͔ΒϞσϧ͕ಡΈॻ͖Ͱ͖ΔΑ͏ʹͳ͕ͬͨɼ͜ΕͰऴΘΓͰͳ͍ ‣ ࠷ऴΰʔϧʢເʣʮ1FPQMFؔ࿈࣮͕ͯ͢$IBU3BJMT͔Βফ͑Δʯ ‣ TIBSFEHFNෆཁʹͳΔ ‣
$IBU%#ʹ͋Δςʔϒϧͷ͏ͪɼ1FPQMFͰ͔ͬͯ͠ͳ͍ͷ1FPQMF%#ʹҠ͢ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ͜ͷ͋ͱͲ͏͢Δʁ ৽3BJMT͔ΒϞσϧ͕ಡΈॻ͖Ͱ͖ΔΑ͏ʹͳ͕ͬͨɼ͜ΕͰऴΘΓͰͳ͍ ‣ ࠷ऴΰʔϧʢເʣʮ1FPQMFؔ࿈࣮͕ͯ͢$IBU3BJMT͔Βফ͑Δʯ ‣ TIBSFEHFNෆཁʹͳΔ ‣
$IBU%#ʹ͋Δςʔϒϧͷ͏ͪɼ1FPQMFͰ͔ͬͯ͠ͳ͍ͷ1FPQMF%#ʹҠ͢ ‣ Զͨͪͷઓ͍͜Ε͔Βͩʂʂ Ϟσϧͷڞ༗ αʔϏεີ݁߹ʹཱ͔ͪ͏ -
©2018 Wantedly, Inc. ࠷ݶͷ৺͕͚ ͜Ε͕ͳ͔ͬͨΒࢮΜͰ͍ͨγϦʔζ ‣ ͋ͱ͔Β࡞ͬͨαʔϏεʹؔ࿈͢ΔίʔυɼͪΌΜͱωʔϜεϖʔεΛ͚Α͏ $POUSPMMFS4FSWJDF 63-ʹͪΌΜͱ͍͍ͭͯͨ
͜Ε͕ͳ͔ͬͨΒαʔϏε͚ΔͷෆՄೳͩͬͨ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ -
©2018 Wantedly, Inc. ࠷ݶͷ৺͕͚ ͜Εͬͱ͚Α͔ͬͨγϦʔζ ‣ ಉ͡ςʔϒϧΛαʔϏεؒͰڞ༗͢ΔͷΑ͘ͳ͔ͬͨʁ ‣ ࠷ॳ͔Β%#Θ͚ΕΑ͔ͬͨʁ ‣
ίΞͷՁΛఏڙ͢Δ෦͔ͬ͠ΓςετΛॻ͖ͩͬͨ͘ .JDSPTFSWJDFͷςετ͍͠ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ -
©2018 Wantedly, Inc. ࠷ݶͷ৺͕͚ ͜Εͬͱ͚Α͔ͬͨγϦʔζ ‣ ಉ͡ςʔϒϧΛαʔϏεؒͰڞ༗͢ΔͷΑ͘ͳ͔ͬͨʁ ‣ ࠷ॳ͔Β%#Θ͚ΕΑ͔ͬͨʁ ‣
ίΞͷՁΛఏڙ͢Δ෦͔ͬ͠ΓςετΛॻ͖ͩͬͨ͘ .JDSPTFSWJDFͷςετ͍͠ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ࣄΛߟ͑Δͱɼ͜͜Ұ֓ʹݴ͑ͳ͍ ‣ ϦϦʔεલɾޙͷ։ൃ·ͩՁΛੜΈग़͍ͤͯͳ͍ঢ়ଶ ܧଓతʹՁΛੜΈग़ͤΔ͔͢Βະ֬ఆ ‣ ૣ͗͢Δ࠷దԽʹͳΓ͗͢ͳ͍ ҰํͰɼ࠷ݶͬͱ͔ͳ͍ͱ͋ͱͰ͔ͳΓޙչ͢Δ ͍͍ײ͡ͷམͱ͠ॴΛݟ͚ͭ·͠ΐ͏ -
©2018 Wantedly, Inc. ׂΛ͢Δͱ͖ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ‣ ͪΌΜͱͦͷαʔόͷυϝΠϯɾ࣮ΛݟۃΊΑ͏ ͦΕ༻ޠఆ͚͔ٛͩ͠Εͳ͍͠ɼίʔυΛͬ͟ͱಡΜͰґଘચ͍ग़͕͠ඞཁ͔͠Εͳ͍ ϩάΛूΊͳ͍ͱ͍͚ͳ͍͔͠Εͳ͍
*OUFSGBDFΛோΊΔ͚ͩͰෆे ׂΛ͡ΊΔʹͯ͠ͳΔ͘খ͍͞୯ҐͰ͢͢ΊΔ -
©2018 Wantedly, Inc. ׂΛ͢Δͱ͖ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ‣ ͪΌΜͱͦͷαʔόͷυϝΠϯɾ࣮ΛݟۃΊΑ͏ ͦΕ༻ޠఆ͚͔ٛͩ͠Εͳ͍͠ɼίʔυΛͬ͟ͱಡΜͰґଘચ͍ग़͕͠ඞཁ͔͠Εͳ͍ ϩάΛूΊͳ͍ͱ͍͚ͳ͍͔͠Εͳ͍
*OUFSGBDFΛோΊΔ͚ͩͰෆे ׂΛ͡ΊΔʹͯ͠ͳΔ͘খ͍͞୯ҐͰ͢͢ΊΔ ‣ 3VCZPO3BJMTͳΒɼʮ࠷ݶʯΛक͍ͬͯΕ͍͍ͩͨͳΜͱ͔ͳΔ ΄͔ͷʮੜ࢈ੑʹدͤͯΔܥݴޠɾ8"'ʯͰ͍͍ͩͨͳΜͱ͔ͳΔ͔ -
©2018 Wantedly, Inc. ׂ͍ͭΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ ͳ͘ɺͦͷதͰυϝΠϯΛݟग़ͯ͠ҰͭͷࣄΛߦ͏TFSWJDFʹׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ
ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱͳ͘ɺ߹ʹ ΑͬͯஅΛԆͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰΓग़͢ํ͕ྑ͍߹͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͜ΕͰ໌Β͔ʹͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ -
©2018 Wantedly, Inc. ׂ͍ͭΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ ͳ͘ɺͦͷதͰυϝΠϯΛݟग़ͯ͠ҰͭͷࣄΛߦ͏TFSWJDFʹׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ
ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱͳ͘ɺ߹ʹ ΑͬͯஅΛԆͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰΓग़͢ํ͕ྑ͍߹͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͜ΕͰ໌Β͔ʹͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ -
©2018 Wantedly, Inc. ׂ͍ͭΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ ͳ͘ɺͦͷதͰυϝΠϯΛݟग़ͯ͠ҰͭͷࣄΛߦ͏TFSWJDFʹׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ
ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱͳ͘ɺ߹ʹ ΑͬͯஅΛԆͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰΓग़͢ํ͕ྑ͍߹͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͜ΕͰ໌Β͔ʹͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ -
©2018 Wantedly, Inc. ׂ͍ͭΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ ͳ͘ɺͦͷதͰυϝΠϯΛݟग़ͯ͠ҰͭͷࣄΛߦ͏TFSWJDFʹׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ
ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱͳ͘ɺ߹ʹ ΑͬͯஅΛԆͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰΓग़͢ํ͕ྑ͍߹͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͜ΕͰ໌Β͔ʹͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ -
©2018 Wantedly, Inc. ׂ͍ͭΛߟ͑࢝ΊΔ͔ αʔϏεີ݁߹Ͱޙչ͠ͳ͍ͨΊʹ ؆୯ʹݴ͏ͱTZODNFTTFOHFSSBJMTʹશ෦ࡌͤͳ͍ͨΊɻ ͨͩ͠ɺ͕࠶ൃ͠ͳ͍Α͏ʹ͢ΔͨΊʹɺ݁ہͳͥͦ͏ͳͬͨͷ͔Λߟ͑ͳ͚Ε͍͚ͳ͍ɻ NJDSPTFSWJDFࣗମผʹ7JTJU 1FPQMFͷΑ͏ͳαʔϏε͝ͱʹαʔόʔΛ͚Δͱ͍͏͜ͱΛ୯७ʹද͢Θ͚Ͱ ͳ͘ɺͦͷதͰυϝΠϯΛݟग़ͯ͠ҰͭͷࣄΛߦ͏TFSWJDFʹׂ͢Δͱ͜Ζ·ͰΛؚΉߟ͑ํɻ࣮ࡍɺ
ZBTIJNBDBUFHPSZQZUIPO pOEFSHPͳͲػೳ͝ͱʹTFSWJDF͕͋Δɻ ࣮ͨͩࡍͷ։ൃΛ࣌ܥྻͰଊ͑ͨͱ͖ɺͦ͏͍ͬͨυϝΠϯΛৗʹ࠷ॳ͔Β໌֬ʹݟ͍ͩͤΔΘ͚Ͱͳ͘ɺ߹ʹ ΑͬͯஅΛԆͤͯ͞υϝΠϯ͕҆ఆͨ͠ޙͰΓग़͢ํ͕ྑ͍߹͋ΔɻͦͷͨΊʹTZODNFTTFOHFSSBJMT ͕ΘΕ͍ͯΔͷ͕ͩɺ͜Ε͜ΕͰ໌Β͔ʹͳͷͰZBTIJNBSBJMTͱ͍͏ผͷத֩TFSWJDFΛ࡞ͬͨɻ ͜ͷʮ·ͩ҆ఆͯ͠ͳ͍υϝΠϯʯΛҭΉͨΊʹɼͳΜͰΔαʔόඞཁ ‣ ʮͳΜͰΔαʔόʯˠʮઐϚΠΫϩαʔϏεʯ υϝΠϯ͕҆ఆ͢Δ·Ͱ͍͍ͯ ‣ ʮͳΜͰΔαʔόʢ૬ΓʣʯˠʮͳΜͰΔαʔόʢઐ༻ʣʯ Ҡߦ͢Δ·Ͱߦ͔ͳͯ͘ૣΊʹ࡞Γ͍ͨ ෆ҆ఆͳυϝΠϯ͕ΑͦͷΞϓϦͱࠞ͟ΔͱΕΒΕ͔Ͷͳ͍ -
ॻ͘લʹʜ ‣ αʔόʹෳΞϓϦ͕૬Γ͢Δͷඞͣ͠ѱͰͳ͍ ͦͷͱ͖ڐ͞ΕΔϦιʔεͱ૬ஊ͠ɼૣ͗͢Δ࠷దԽආ͚Δ ‣ ૬ΓΛڐ༰͢Δ߹ɼ࠷ݶͷࢥ͍ΓΛ࣋ͬͯॻ͘ ωʔϜεϖʔεͪΌΜͱΔ ςʔϒϧͳΔ͘ڞ༗͠ͳ͍
ςετΛ͔ͬ͠Γॻ͘ FUD ઓ͏λΠϛϯάͰʜ ‣ ࠷ॳʹఢΛΔ ͳʹ͕ີ݁߹͍ͯ͠Δ͔ΛѲ͢ΔʢίʔυಡΉɼϩάΛऔΔɼղੳ͢ΔɼFUDʣ -
ॻ͘લʹʜ ‣ αʔόʹෳΞϓϦ͕૬Γ͢Δͷඞͣ͠ѱͰͳ͍ ͦͷͱ͖ڐ͞ΕΔϦιʔεͱ૬ஊ͠ɼૣ͗͢Δ࠷దԽආ͚Δ ‣ ૬ΓΛڐ༰͢Δ߹ɼ࠷ݶͷࢥ͍ΓΛ࣋ͬͯॻ͘ ωʔϜεϖʔεͪΌΜͱΔ ςʔϒϧͳΔ͘ڞ༗͠ͳ͍
ςετΛ͔ͬ͠Γॻ͘ FUD ઓ͏λΠϛϯάͰʜ ‣ ࠷ॳʹఢΛΔ ͳʹ͕ີ݁߹͍ͯ͠Δ͔ΛѲ͢ΔʢίʔυಡΉɼϩάΛऔΔɼղੳ͢ΔɼFUDʣ ‣ ҰؾʹશͯΖ͏ͱͤͣɼݱ࣮తͳͱ͜Ζ͔ΒקΊ͍ͯ͘ ·ͣ%#ͭͬͯ͘ɼٕज़ελοΫʹ߹ͬͨʮੜ࢈ੑ͕Լ͕Βͳ͍ख๏ʯΛݟ͚ͭΔ