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

SmartHR の開発現場最新事情 〜マイクロサービス始めました〜

SmartHR の開発現場最新事情 〜マイクロサービス始めました〜

Rails Developers Meetup 2018 Day 3 Extreme での登壇資料です

Masato SERIZAWA

July 14, 2018
Tweet

More Decks by Masato SERIZAWA

Other Decks in Technology

Transcript

  1. 3BJMT%FWFMPQFST.FFUVQ%BZ&YUSFNF

    4NBSU)3ͷ։ൃݱ৔࠷৽ࣄ৘
    ʙϚΠΫϩαʔϏε࢝Ί·ͨ͠ʙ
    4BU
    ۔ᖒխਓ
    4NBSU)371P&

    View Slide

  2. ۔ᖒ խਓ
    @masato_serizawa
    • גࣜձࣾ SmartHR ͰɺSmartHR ͱ͍͏αʔϏεΛ։ൃத
    • ৽ଔͰࣾձਓʹͳͬͯҎདྷɺWeb ΤϯδχΞͱͯ͠ͷΩϟϦΞΛาΉ
    • TechCrunch ओ࠵ͷϋοΧιϯͰೖ৆ͨ͜͠ͱΛ͖͔͚ͬʹ SmartHR
    ʹδϣΠϯ
    • ͍ͪΤϯδχΞͱͯ͠։ൃۀ຿ʹܞΘΔ͔ͨΘΒɺVPoE ͱͯ͠։ൃ
    νʔϜͷϚωδϝϯτ΋ߦ͏

    View Slide

  3. 4NBSU)3ͷ͝঺հ
    Χϯλϯͳ

    View Slide

  4. 4NBSU)3͸
    ਓࣄɾ࿑຿ͷखଓ͖ΛΧϯλϯʹ͢Δ
    Ϋϥ΢υܕιϑτ΢ΣΞͰ͢ɻ
    4NBSU)3ͱ͸
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔˔˔˔˔
    WWW

    View Slide

  5. ࣾอɾޏอॻྨΛ
    ࣗಈ࡞੒
    ैۀһ৘ใΛ
    σʔλϕʔεԽ
    ࡞੒ͨ͠ॻྨΛ
    8FC͔Βਃ੥
    ਓࣄ৘ใΛ
    Χϯλϯʹऩू
    4NBSU)3ͱ͸
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔

    View Slide

  6. ͱ͜ΖͰ

    View Slide

  7. View Slide

  8. ʮ4NBSU)3࢖͍෺ʹͳΒͳ͍໰୊ʯ

    ࠶ൃ͍ͯ͠·͢ʂ

    View Slide

  9. ઌ೔ɺશࣾձٞʹͯʜ

    View Slide

  10. View Slide

  11. View Slide

  12. ࣾอɾޏอॻྨΛ
    ࣗಈ࡞੒
    ैۀһ৘ใΛ
    σʔλϕʔεԽ
    ࡞੒ͨ͠ॻྨΛ
    8FC͔Βਃ੥
    ਓࣄ৘ใΛ
    Χϯλϯʹऩू
    4NBSU)3ͱ͸
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔

    View Slide

  13. ैۀһ%#ͱͯ͠ͷػೳཁ๬͕૿Ճ
    w ैۀһ৘ใͷऩूʙ؅ཧʹؔ͢Δػೳʹ
    ཁ๬͕ूத
    w ΋ͱ΋ͱॻྨΛ࡞ΔͨΊͷʮ෭࣍తʯͳ
    ΋ͷͩͬͨͨΊɺ͜ͷลΓΛΩνϯͱ΍
    Δʹ͸ઃܭࢥ૝ͷࠜຊݟ௚͕͠ඞཁ
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔
    ˔˔˔˔
    ˔˔˔˔˔˔˔˔

    View Slide

  14. ͞Βʹɾɾɾ

    View Slide

  15. ࿑຿खଓ͖Ҏ֎ͷػೳཁ๬͕ଟ༷Խ
    w ैۀһ৘ใ͕ॆ࣮ͯ͘͠ΔͱɺͦΕΛ׆
    ༻͍ͯ͠Ζ͍Ζͳ͜ͱ͕΍Γͨ͘ͳΔ
    w ػೳཁ๬͸େ͔Βখ·Ͱ࣮ʹ༷ʑ
    w Ͳͷཁ๬΋ͳ͍͕͠Ζʹ͸ͨ͘͠ͳ͍

    View Slide

  16. ΤϯδχΞαΠυ͔Β͢Δͱʜ

    View Slide

  17. ൈຊతݟ௚͠ ཁ๬ͷଟ༷Խ
    w ෲΛͬͯ͘͘΍Δ͍ͧʜ
    w ͨͩɺ΍ΔͳΒଞͷվम΍ػ
    ೳ௥Ճ͸ͳΔ΂͘ετοϓ͠
    ͍ͨͳʙ
    w Ͱ͖Δ͚ͩ΍͍ͬͯ͋͛ͨ
    w Ͱ΋ɺશ࣮ͯ૷͍ͯͨ͠Βίʔ
    υϕʔε͕ͱΜͰ΋ͳ͍͜ͱ
    ʹͳΔʜ
    w 4NBSU)3͸4BB4ͳͷͰɺ
    ݸผΧελϚΠζ΋جຊతʹ
    ͸ड͚෇͚ΒΕͳ͍ʜ

    View Slide

  18. ൈຊతݟ௚͠ ཁ๬ͷଟ༷Խ
    w ෲΛͬͯ͘͘΍Δ͍ͧʜ
    w ͨͩɺ΍ΔͳΒଞͷվम΍ػ
    ೳ௥Ճ͸ͳΔ΂͘ετοϓ͠
    ͍ͨͳʙ
    w Ͱ͖Δ͚ͩ΍͍ͬͯ͋͛ͨ
    w Ͱ΋ɺશ࣮ͯ૷͍ͯͨ͠Βίʔ
    υϕʔε͕ͱΜͰ΋ͳ͍͜ͱ
    ʹͳΔʜ
    w 4NBSU)3͸4BB4ͳͷͰɺ
    ݸผΧελϚΠζ΋جຊతʹ
    ͸ड͚෇͚ΒΕͳ͍ʜ
    ͲͪΒ͔Λ΍Ζ͏ͱ͢ΔͱͲͪΒ͔͕ࢭ·Δ
    ΍͍͚ͬͯ͋͛ͨͲ΍Εͳ͍δϨϯϚ

    View Slide

  19. ϏδωεαΠυ͔Β͢Δͱʜ

    View Slide

  20. ൈຊతݟ௚͠ ཁ๬ͷଟ༷Խ
    w ੾࣮ʹ΍ͬͯ΄͍͠ʂ w ੾࣮ʹ΍ͬͯ΄͍͠ʂʂ
    ʊਓਓਓਓਓਓਓਓਓʊ
    ʼɹ΍ͬͯ΄͍͠ʂɹʻ
    ʉ:?:?:?:?:?:?:?:ʉ
    ˞4NBSU)3ͷΤϯδχΞͱϏδωεαΠυ͸ͱͯ΋ྑ޷ͳؔ܎Ͱ͢

    View Slide

  21. ΑΖ͍͠ʜ
    Ͳͬͪ΋΍ͬͯ΍Γ·͠ΐ͏ʂʂ

    View Slide

  22. ϚΠΫϩαʔϏεʹΑΔղܾ

    View Slide

  23. 4NBSU)3ʹ͓͚ΔϚΠΫϩαʔϏε
    w 4NBSU)3ຊମ͸ʮैۀһ৘ใ؅ཧ࿑
    ຿खଓ͖ʯ·ͰͷػೳʹࢭΊ͓͖ͯɺൈ
    ຊతͳݟ௚͠ΛਐΊΔ
    w ্هҎ֎ͷػೳ͸ɺػೳຖʹผΞϓϦΛ
    ࡞ͬͯఏڙ͢Δ

    View Slide

  24. ϞϊϦγοΫͳ
    4NBSU)3
    ϚΠΫϩαʔϏεͳ

    4NBSU)3
    w 4NBSU)3
    ؅ཧ෺
    w 4NBSU)3
    w ೝূαʔϏε
    w ՝ۚαʔϏε
    w 6*$PNQPOFOU
    w ৽ػೳT
    w FUD
    ؅ཧ෺

    View Slide

  25. ؅ཧ͢Δ΋ͷ͕ͨ͘͞Μʜ
    ͻͱͭͣͭݟ͍͖ͯ·͠ΐ͏

    View Slide

  26. ೝূαʔϏε
    w 0QFO*%$POOFDUʹΑΔೝূɾೝՄػ
    ೳΛఏڙ͢Δʮ"VUIMFUFʯΛಋೖ
    w 4BB4ͳͷͰϝϯςίετΛ͔͚ͣʹ࠷
    ৽ͷ࢓༷Ͱ0QFO*%$POOFDU͕࢖͑Δ
    w ͜ΕΛ"1*ͷલஈʹڬΉ͜ͱͰɺ֤
    αʔϏεؒͰͷεϜʔζͳ৘ใͷ΍Γऔ
    ΓΛ࣮ݱ

    View Slide

  27. ՝ۚαʔϏε
    w αϒεΫϦϓγϣϯϏδωεʹಛԽͨ͠
    ੥ٻ؅ཧαʔϏεʮ[VPSBʯΛಋೖ
    w [VPSBͷྉۚϓϥϯΛૢ࡞͢ΔϚΠΫϩ
    αʔϏεΛ։ൃ
    w ՝ۚपΓͷ*'͕౷Ұ͞ΕɺΞοϓηϧ
    ϓϩμΫτͷ։ൃ΋༰қʹ

    View Slide

  28. 6*$PNQPOFOU
    3FBDUΛಋೖͯ͠
    $PNQPOFOUΛ੔උ
    ֤ϓϩμΫτؒʹ͓͚Δϑ
    ϩϯτΤϯυͷ඼࣭౷Ұͱ
    ։ൃޮ཰޲্Λૂ͏

    View Slide

  29. ৽ػೳT
    w 3BJMTΛ࢖ͬͯΨγΨγͱ։ൃ
    w ΞϓϦͷσϓϩΠɾ؅ཧ͸IFSPLVʹ͓
    ೚ͤ
    w ϑϧϚωʔδυͳͷͰ਺͕૿͑ͯ΋ӡ༻
    ίετ͸͞΄ͲมԽφγ

    View Slide

  30. ΍ͬͯΈͯײͨ͜͡ͱ

    Θ͔͖ͬͯͨ͜ͱ

    View Slide

  31. ΠΠω
    w ҰͭҰͭͷΞϓϦͷίʔυϕʔε͕খ͞
    ͘อͯΔ
    w ߹ΘͤͯɺνʔϜͷαΠζ΋খ͘͞อ
    ͯΔ
    w αʔϏε͝ͱʹ͍Ζ͍Ζͳٕज़ΛࢼͤΔ
    w 3BJMTҎ֎ͷٕज़બ୒΋͋ΓಘΔ
    w 6*$PNQPOFOUʹ͸ເΛײ͡Δ

    View Slide

  32. ͳΜͱ͔͍ͨ͠Ͷ
    w 8FC"1*Λ௨ͨ͠ݖݶߟྀ͕೉͍͠
    w ࿈ܞॲཧ͸GBJMTBGFΛҙࣝ͠ͳ͍ͱɺͲ
    ͔͕͜ࢮΜͩ࣌ʹಓ࿈ΕʹͳΔ
    w ڞ௨ॲཧ͸ૣظʹHFNԽΛݕ౼͠ͳ͍ͱ
    ॏෳίʔυͩΒ͚ʹͳΔ
    w ؂ࢹ΍ςετͳͲɺख๏Λ౷Ұ͓͔ͯ͠ͳ
    ͍ͱӡ༻͕ΧΦεʹͳΔ

    View Slide

  33. ͜Μͳײ͡Ͱࢼߦࡨޡͭͭ͠
    ϚΠΫϩαʔϏεԽΛਐΊ͍ͯ·͢

    View Slide

  34. গ͠Ͱ΋ڵຯΛ͍͚࣋ͬͯͨͩ·ͨ͠Βʜ

    View Slide

  35. 8FBSF)JSJOH
    3VCZPO3BJMTͰ։ൃ͍ͨ͠
    #޲͚4BB4Λ࡞Γ͍ͨ
    ݹͯ͘ڊେͳ੍౓Λ)BDL͍ͨ͠
    ૊৫Λεέʔϧ͍ͤͨ͞

    View Slide

  36. ΋͘͠͸ʜ

    View Slide

  37. 3BJMTͰ4NBSU)3Λॿ͚ͯ
    ɹɹ

    View Slide

  38. גࣜձࣾSmartHR VPoE

    ۔ᖒ խਓ
    @masato_serizawa
    ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ

    View Slide