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

一休.comでの開発組織改善の取り組みとこれから /improve-ikyu-devlove-x

一休.comでの開発組織改善の取り組みとこれから /improve-ikyu-devlove-x

2019.6.22 DevLOVE Xで登壇したときの資料です。

kentana20

June 22, 2019
Tweet

More Decks by kentana20

Other Decks in Technology

Transcript

  1. About me • ాத ݈հ • 2004೥4݄~ SIer • 2006೥5݄~

    Ұٳ • ϓϩμΫτ։ൃ
 ։ൃ૊৫Ϛωδϝϯτ
  2. ൃද಺༰αϚϦ • @naoya_ito ʹٕज़ސ໰Λґཔͯ͠ɺ2014೥4݄͔Β։ൃ૊৫ͷվળ ʹऔΓ૊Έ͸͡Ίͨ • ৘ใڞ༗πʔϧΛ੔උ(Slack, Qiita:Team etc)ɺGitHubʢ౰࣌͸ GitHub

    Enterpriseʣ • ΞδϟΠϧ։ൃͷΤοηϯεʢΧϯόϯɺேձɺ;Γ͔͑ΓʣΛಋೖ • ͜Ε͔ΒϓϩμΫτ඼࣭޲্ɺϦϦʔεճ਺૿ʢεϐʔυΞοϓʣͳͲ ʹऔΓ૊ΜͰ͍͘ஈ֊
  3. 5೥ؒͰͷओͳऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ ΅͕͘΍ͬͨ͜ͱ͸Θ͔ͣͰ͢
  4. 5೥ؒͰͷओͳऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ
  5. 5೥ؒͰͷऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ • 2016/12 • ҠߦϓϩδΣΫτൃ଍ • 2017/06~08 • ΞϓϦέʔγϣϯҠߦ׬ྃ • 2018/02 • σʔλϕʔεҠߦ׬ྃ ݱࡏ͸શαʔϏε͕Ϋϥ΢υ্ͰՔಇத Ҡߦ೥ද
  6. ΦϯϓϨͰͷαʔϏεӡ༻՝୊#2 • ϏϧυɾσϓϩΠͷ՝୊ • ࣗલͷεΫϦϓτͰΦϯϓϨͷϩʔυόϥϯα(F5)΍ϑΝΠϧಉظ ιϑτΛૢ࡞͍ͯͨ͠ • มߋ͕͋ͬͨίʔυͷΈΛσϓϩΠ͍ͯͨ͠(αΠζͷ໰୊) • ϑΝΠϧಉظιϑτ͕ෆ҆ఆ

    σϓϩΠ͕·ͨίέ·ͨ͠ • αʔόೖΕସ͑ͷίετ • ఆظతͳαʔόϦϓϨʔεʹඦສ୯ҐͰۚમίε τ & ηοτΞοϓʹ΋ਓతίετ͕͔͔Δ • ॊೈʹεέʔϧΞ΢τ΋Ͱ͖ͳ͍ • ex. ΫϦεϚεͷϐʔΫʹ਺୆αʔό૿΍͢ • ϏϧυɾσϓϩΠʢ։ൃͷ଍ճΓʣʹ՝୊͕͋ͬͨ • ओ຿Ͱ͋ΔϓϩμΫτ։ൃʹ஫ྗͰ͖ͳ͍ Bad
  7. Ϋϥ΢υҠߦʹΑΓෳ਺ͷ՝୊Λղܾ • ϋʔυ΢ΣΞʢαʔόɺετϨʔδ etc ʣ΁ͷ౤ࢿΛιϑτ΢ΣΞ΁ • Terraform & AMIΛ׆༻ͨ͠Infrastructure as

    Codeͷਪਐ • ϏϧυɾσϓϩΠ͸֎෦ͷCIαʔϏεΛ׆༻ • App Veyor, Circle CI • ΞϓϦέʔγϣϯϨΠϠʔͰ΋Ϋϥ΢υͷϝϦοτΛڗडͰ͖Δܗ΁ • ΞϓϦέʔγϣϯΛ෼ׂΛͯ͠શྔσϓϩΠՄೳʹ
  8. 5೥ؒͰͷओͳऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ
  9. վળ೥ද(ൈਮ) ॓ധ Ϩετϥϯ 2016೥ Webpackಋೖ Lint, Testಋೖ ։ൃΨΠυϥΠϯ੔උ Webpackಋೖ 2017೥

    Vue.jsಋೖ Vue.jsಋೖ 2018೥ μΠφϛοΫϨϯμϦϯά (Rendertron)ಋೖ Nuxt.jsಋೖ ݕࡧϖʔδΛϦχϡʔΞϧ 2019೥ ϗςϧϖʔδΛϦχϡʔΞϧ (༧ఆ) ϨετϥϯϖʔδΛϦ χϡʔΞϧ
  10. 5೥ؒͰͷओͳऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ
  11. ΍ͬͨ͜ͱ • ࠾༻੹೚ΛΤϯδχΞ෦໳ʹҠ؅ • ૊৫Ϗδϣϯʹ߹Θͤͨ࠾༻໨ඪɺ࠾༻͍ͨ͠ਓ෺૾ɺ࠾༻ϓϩηεͷߏங • ࠾༻ͷ֓گΛݟ͑ΔԽ • Ԡื਺ɺॻྨબߟ/໘઀௨ա਺ɺϝϯόʔͷ࠾༻ෛՙ etc

    • ΤʔδΣϯτͱ৴པؔ܎Λ࠶ߏங • ݄࣍MtgɺCAͱͷίϛϡχέʔγϣϯػձɺީิऀͷϑΟʔυόοΫ • ݱ৔ͷΤϯδχΞΛר͖ࠐΜͩ࠾༻ϑϩʔʹมߋ • Ұॹʹಇ͘ϝϯόʔ͸ࣗ෼Ͱݟ͚ͭΔ
  12. ݁Ռ(࠾༻ਓ਺) 0 5 10 15 20 2015 2016 2017 2018

    ೖࣾ ΦϑΝʔ ࠾༻ڧԽελʔτ
  13. 5೥ؒͰͷओͳऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ
  14. มߋͨ͠ϙΠϯτ • ৬ೳԣஅͷνʔϜΛͭ͘ΓɺνʔϜຖͷ໾ׂ(ϛογϣϯ)Λ໌֬Խ • ॓ധ: UI/UXɺύʔτφʔΞϥΠΞϯε • Ϩετϥϯ: UI/UXɺϏδωεϑΝ΢ϯσʔγϣϯ •

    CTOࣨ: αʔϏεͷ҆ఆՔಇ • ϛογϣϯΦʔφʔͱνʔϜΛ͚ۙͮͯϏδωε੒ՌΛ໨ࢦ͠΍͍͢ ମ੍ʹҠߦ • ϛογϣϯΦʔφʔͱ։ൃνʔϜΛ͚ۙͮͨ݁ Ռɺ։ൃνʔϜ͕ϛογϣϯʹओମతʹΦʔ φʔγοϓΛ࣋ͭΑ͏ʹͳͬͨ • ϛογϣϯʹ௚݁͠ͳ͍࡞ۀ΋ݮগ͠ɺϛο γϣϯΦʔφʔ΋Ϧιʔείϯτϩʔϧ͠΍͢ ͘ͳͬͨ ໨తܕ૊৫ͷޮՌ
  15. 5೥ؒͰͷओͳऔΓ૊Έ • ٕज़໘ • ΦϯϓϨ͔ΒΫϥ΢υ΁ͷҠߦ • ϑϩϯτΤϯυ։ൃج൫ͷ੔උͱύϑΥʔϚϯεվળ • ϨετϥϯγεςϜͷ࡮৽ •

    σʔλαΠΤϯεͱ಺੡τϥοΩϯάγεςϜ • ૊৫໘ • ΤϯδχΞ࠾༻ͷڧԽ • αʔϏεͷ੒ՌΛҙࣝͨ͠໨తܕ૊৫΁ͷҠߦ • SoEέΠύϏϦςΟ΁ͷ౤ࢿ ΋ͬͱ͓࿩͍ͨ͠Ͱ͕͢ ࣍ͷςʔϚ΁ߦ͖·͢
  16. 5೥લͷൃද಺༰(࠶ܝ) • @naoya_ito ʹٕज़ސ໰Λґཔͯ͠ɺ2014೥4݄͔Β։ൃ૊৫ͷվળ ʹऔΓ૊Έ͸͡Ίͨ • ৘ใڞ༗πʔϧΛ੔උ(Slack, Qiita:Team etc)ɺGitHubʢ౰࣌͸ GitHub

    Enterpriseʣ • ΞδϟΠϧ։ൃͷΤοηϯεʢΧϯόϯɺேձɺ;Γ͔͑ΓʣΛಋೖ • ͜Ε͔ΒϓϩμΫτ඼࣭޲্ɺϦϦʔεճ਺૿ʢεϐʔυΞοϓʣͳͲ ʹऔΓ૊ΜͰ͍͘ஈ֊
  17. 5೥લͷൃද಺༰(࠶ܝ) • @naoya_ito ʹٕज़ސ໰Λґཔͯ͠ɺ2014೥4݄͔Β։ൃ૊৫ͷվળ ʹऔΓ૊Έ͸͡Ίͨ • ৘ใڞ༗πʔϧΛ੔උ(Slack, Qiita:Team etc)ɺGitHubʢ౰࣌͸ GitHub

    Enterpriseʣ • ΞδϟΠϧ։ൃͷΤοηϯεʢΧϯόϯɺேձɺ;Γ͔͑ΓʣΛಋೖ • ͜Ε͔ΒϓϩμΫτ඼࣭޲্ɺϦϦʔεճ਺૿ʢεϐʔυΞοϓʣͳͲ ʹऔΓ૊ΜͰ͍͘ஈ֊ • վળ͕ਊΛ৯͍ͬͯͳ͍ײ͕֮͋ͬͨ • Ұ൪େࣄͳ͜ͱ < ΍Γ΍͍͢͜ͱʹͳͬͯͨ 1೥͘Β͍ܦͬͯগ͠೰Μͩ
  18. 5೥લͷൃද಺༰(࠶ܝ) • @naoya_ito ʹٕज़ސ໰Λґཔͯ͠ɺ2014೥4݄͔Β։ൃ૊৫ͷվળ ʹऔΓ૊Έ͸͡Ίͨ • ৘ใڞ༗πʔϧΛ੔උ(Slack, Qiita:Team etc)ɺGitHubʢ౰࣌͸ GitHub

    Enterpriseʣ • ΞδϟΠϧ։ൃͷΤοηϯεʢΧϯόϯɺேձɺ;Γ͔͑ΓʣΛಋೖ • ͜Ε͔ΒϓϩμΫτ඼࣭޲্ɺϦϦʔεճ਺૿ʢεϐʔυΞοϓʣͳͲ ʹऔΓ૊ΜͰ͍͘ஈ֊ • ॳظ͸ΤϯδχΞ෦໳ʹดͨ͡վળ͕ଟ͔ͬͨ • Ϗδωε੒Ռʹͭͳ͕Δվળ͸গͳ͔ͬͨ → ྖҬΛ޿͍͛ͯ͘ ͜ͱʹର͢Δ֮ޛ͕଍Γͳ͔ͬͨ • ;Γ͔͑ͬͯΈΔͱAs-IsͰͷվળ͕ଟ͔ͬͨ • ʮΫϥ΢υҠߦ͠Α͏ʂʯͳͲͷେ͖ͳมߋʹ౿Έग़ͣ͞ɺطଘ ͷ࢓૊ΈͷதͰͷվળ → ͋Δ΂͖࢟(ToBe)ΛਐΊΔ͜ͱʹର͢ ΔڪΕ͕͋ͬͨ ຊ౰ͷҙຯͰͷվળ͸೉͔ͬͨ͠
  19. ͦΜͳதͰ@naoyaΛCTOͱͯ͠টᡈ • ޿͍ྖҬͰվળʹ࠶ͼਪਐྗ͕͍ͭͨ • Ϗδωε੒ՌΛݟਾٕ͑ͨज़౤ࢿ • Ϋϥ΢υҠߦɺϑϩϯτΤϯυ։ൃج൫ɺσʔλ෼ੳج൫ • ϓϩμΫτ։ൃྗΛ্͛ΔऔΓ૊Έ •

    ΤϯδχΞ࠾༻ͷڧԽɺ໨తܕ૊৫΁ͷҠߦ • ΤϯδχΞ෦໳ʹ͸ܦӦ͔ΒΈͯ΋՝୊ײ͕͋ͬͨʢਪଌʣ • ࣄۀͱͷڑ཭ײʢࣄۀ੒Ռʣ • ٕज़໘Ͱͷҙࢥܾఆʢ౤ࢿྖҬɺ࠾༻ʣ • ࣗ෼ͷ໨ઢͰ͸ͦ͜·Ͱݟ͍͑ͯͨΘ͚Ͱ͸ͳ͘ɺͨ·ͨ ·ར֐͕Ұகͨ͠ ͳͥͰ͖ͨͷ͔
  20. ࣗ෼ͷ໾ׂͷมԽʢసػʣ • 2014೥౰ॳ: ૊৫վળओ୲౰ • 2016೥: ΤϯδχΞ෦໳ͷόοΫΦϑΟεʢ࠾༻ɺ৘γεʣ • 2017೥: ॓ധϓϩμΫτ։ൃͷΤϯδχΞϦϯάϚωʔδϟʔ

    • 2019೥: ϨετϥϯϓϩμΫτ։ൃͷΤϯδχΞϦϯάϚωʔδϟʔ • 2024೥: ʁʁ ࣗ෼ͷ৺ڥʹ΋มԽ͕ • վળ౰ॳ͸ΤϯδχΞϦϯά = ϓϩμΫτվળ • खஈ > ໨త • ͍·΄ͲϏδωεɾϓϩμΫτ੒ՌΛݟਾ͑ΒΕ͍ͯͳ͔ͬͨ • ΤϯδχΞϦϯάΛڱ͘ଊ͍͑ͯͨ • վળʹऔΓ૊ΜͩޙɺվΊͯϚωʔδϟʔͱͯ͠ϓϩμΫ τ։ൃʹೖͬͯϏδωε΁ͷऔΓ૊Έํ͕มΘͬͨ • ࣄۀ੹೚ऀͱͷίϛϡχέʔγϣϯ • ϛογϣϯͷมԽ
  21. ࣗ෼ͷ໾ׂͷมԽʢసػʣ • 2014೥౰ॳ: ૊৫վળओ୲౰ • 2016೥: ΤϯδχΞ෦໳ͷόοΫΦϑΟεʢ࠾༻ɺ৘γεʣ • 2017೥: ॓ധϓϩμΫτ։ൃͷΤϯδχΞϦϯάϚωʔδϟʔ

    • 2019೥: ϨετϥϯϓϩμΫτ։ൃͷΤϯδχΞϦϯάϚωʔδϟʔ • 2024೥: ʁʁ Ϗδωεͱ։ൃΛͭͳ͙໾ׂ ͕ҙ֎ͱഽʹ߹ͬͯͨ ࣗ෼ͷ৺ڥʹ΋มԽ͕
  22. ·ͱΊ • ։ൃ૊৫ͷվળ͸ܧଓ͕େࣄ • Ұ଍ඈͼͰ΍Ζ͏ͱͯ͠΋͏·͍͔͘ͳ͍͕ɺ5೥ଓ͚͍ͯΔͱ͍ΖΜͳ͜ͱ͕ྑ ͘ͳ͍ͬͯΔ͜ͱʹؾͮ͘ • վળ͸νʔϜͰ • 1ਓͰ΍ΔͷͰ͸ͳ͘ɺࣗ෼΋ϝϯόʔ΋ಘҙͳ͜ͱͰվળΛܧଓ͢Δ͜ͱ͕େࣄ

    • ϏδωεɾϓϩμΫτͷ੒Ռʹͭͳ͛ΒΕΔ͔͕࠷΋ॏཁͳࢦඪ • ։ൃ૊৫/ٕज़తʹਖ਼ͯ͘͠΋ఏڙ͢ΔϏδωεɾϓϩμΫτʹޮ͔ͳ͚Ε͹
 ੒Ռͱͯ͠͸ෆे෼(ࣄۀձࣾͷ৔߹͸ಛʹ)