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

What are the requirements for CTO

Shinji Tanaka
December 03, 2014

What are the requirements for CTO

IVS CTO Night and Day
2014/12/03

Shinji Tanaka

December 03, 2014
Tweet

More Decks by Shinji Tanaka

Other Decks in Technology

Transcript

  1. CTOʹٻΊΒΕΔ΋ͷ
    IVS CTO Night and Day
    Hatena Co., Ltd.
    @stanaka
    !
    2014/12/03

    View Slide

  2. Shinji Tanaka / ాத৻࢘
    @stanaka / id:stanaka
    גࣜձࣾ͸ͯͳ ࣥߦ໾һCTO
    ࠷ۙɺ౦ژʹӽ͖ͯ͠·ͨ͠
    2

    View Slide


  3. View Slide

  4. ޷͖ͳٕज़
    • ݴޠɿ Go
    • ΤσΟλɿ Emacs
    • AWSɿ S3
    • ࣮ߦ؀ڥɿ Docker
    • σʔλετΞɿ MySQL

    View Slide

  5. [PR] Mackerel
    https://mackerel.io/

    View Slide

  6. CTOͱ͸?
    • Chief Technology Officer
    • VP Engineering

    $50ʹ

    ࣅͨϙδγϣϯ

    View Slide

  7. CTOͷ໾ׂ
    • Ұ൪ίʔυΛॻ͘ਓ
    • γεςϜΞʔΩςΫτ
    • Ϛωδϝϯτ͢Δਓ

    71
    &OHJOFFSJOH

    View Slide

  8. from CTO of Stripe

    IUUQCMPHHSFHCSPDLNBODPNpHVSJOHPVUUIFDUPSPMFBUTUSJQF

    View Slide

  9. CTOͷఆٛ
    • ͔ͬ͠Γͱͨ͠ఆٛ͸ࠔ೉
    • ձࣾͷن໛ɾϑΣʔζ΁ͷґଘ
    • ࣄۀ಺༰ʹ΋ґΔ

    View Slide

  10. ந৅తͳ͜ͱΑΓ

    ʮࣗ෼ͷܦݧʯ͔Β

    View Slide

  11. 1
    ͜Ε·Ͱͷ͋Β͢͡

    View Slide

  12. in the case of @stanaka
    • 2000/4 NTTݚڀॴೖࣾ
    • 2006/4 ͸ͯͳೖࣾ
    • 2010/9 CTOഈ໋
    • 2014/12

    ΠϚίί

    View Slide

  13. 2006ʙ2010
    • ΞϓϦέʔγϣϯΤϯδχΞ
    • ΠϯϑϥΤϯδχΞ → Ϛωʔδϟ
    • ӡ༻ޮ཰Խ(puppetಋೖ)
    • Ծ૝Խ(Xen)ɾSSDಋೖ
    • Hatena Inc.։ઃ & ຊࣾژ౎Ҡస

    View Slide

  14. ࣄ݅฽ CTOҎલ
    • 2007,2008 DCϒϨʔΧʔஅ
    • 2007? શһୀձࣄ݅
    • 2008/4 SubversionϦϙδτϦഁଛ

    → git΁Ҡߦ

    View Slide

  15. 2010ʙ2014
    • CTOަ୅
    • Πϯϑϥ͔Β࠶ͼαʔϏε։ൃ΁
    • GitHub Enterpriseಋೖ
    • Scala, Goಋೖ
    • ౦ژΦϑΟεʹΤϯδχΞ࠾༻࠶։
    • ϦϞʔτϫʔΫ(௅ઓத)

    View Slide

  16. ࣄ݅฽ CTOҎޙ
    • 2012/1 SSDͷϑΝʔϜόά౿Έ

    DB࿈ଓμ΢ϯ
    • 2012/3 ͸ͯͳϒοΫϚʔΫϘλϯԌ্
    • 2014/11 υϝΠϯWHOIS৘ใͷվ᜵

    View Slide

  17. SSDͷϑΝʔϜόά౿Έ

    ಉ྅ͷ
    ݁ࠗࣜೋ࣍ձத
    ʹϝϯς࣮ࢪ

    View Slide

  18. 2
    CTOͱͯ͠

    ҙ͖ࣝͯͨ͜͠ͱ

    View Slide

  19. CTOͱͯ͠Ռ͖ͨͯͨ͜͠ͱ
    • ΠϯϑϥपΓΞʔΩςΫνϟ
    • ΞϓϦɾΠϯϑϥٕज़બఆ
    • ΤϯδχΞϦϯάνʔϜཆ੒
    • ࠾༻ɾҭ੒

    View Slide

  20. CTOͱͯ͠ҙ͖ࣝͯͨ͜͠ͱ
    ʮٕज़໘ʯ

    ͱ

    ʮਓࡐ໘ʯ

    View Slide

  21. 2.a
    ٕज़໘ͷ͜ͱ

    View Slide

  22. ٕज़໘
    • ߈Ί
    • ٕज़తڝ૪༏Ґͷ

    ཱ֬
    • कΓ
    • ίετ؅ཧ
    • εέʔϥϏϦςΟ
    Մ༻ੑ֬อ
    • ηΩϡϦςΟ୲อ

    View Slide

  23. ߈Ί: ٕज़తڝ૪༏Ґͷཱ֬
    • “Technology Company”Λ

    ඪᒗ͢ΔͷͰ͋Ε͹ɺ

    ੋඇ໨ࢦ͍ͨ͠ߴΈ

    ΤϯδχΞͷ
    ϩϚϯ

    View Slide

  24. ͦ͏؆୯Ͱ͸ͳ͍
    • ʮ࣌ػΛݟۃΊΔͷ͸ઐ໳ՈͰ΋೉
    ͍͠ɻ͔͠͠উෛΛ͠ͳ͍ͱ෣୆ʹ
    ্͕Δ͜ͱ͢ΒͰ͖ͳ͍ɻʯ- ٕज़ͱ
    ࣌ػ
    IUUQSFTFBSDIQSFGFSSFEKQUJNJOH

    View Slide

  25. ٕज़ΛҰखஈͱଊ͑Δ
    • ७ਮͳٕज़తཁૉͰϏδωε༏ҐΛ
    ࡞Δͷ͸ۃΊͯࠔ೉

    ˠ ੍໿Λٕज़తʹಥഁ/ճආͭͭ͠ɺ
    Ϗδωε্ͷ༏ҐΛங͘

    View Slide

  26. Ϗδωε΁ͷٕज़తߩݙ
    • Ϗδωε্ͷڝ૪༏ҐΛཱ֬͢Δͨ
    Ίʹٕज़తʹߩݙ͢Δ
    • εϐʔυײͷ͋Δ։ൃ
    • ίϞσΟςΟԽ͍ͯ͠ͳ͍ٕज़ͷ
    ࠾༻

    View Slide

  27. कΓ: ίετ؅ཧ
    • ٕज़తෛ࠴ΛฦࡁՄೳͳϨϕϧʹ

    IUUQNBSUJOGPXMFSDPNCMJLJ5FDIOJDBM%FCUIUNM

    View Slide

  28. ٕज़తͳ൑அ
    • WAFબఆ
    • ։ൃݴޠબఆ
    • ϛυϧ΢ΣΞબఆ
    • ࣮ߦ؀ڥબఆ
    • ΞʔΩςΫνϟબఆ

    View Slide

  29. ։ൃݴޠબఆ
    • ௕Β͘Perl͕ओ࣠
    • Ruby͸पลπʔϧͰར༻
    • ScalaɾGoͷ࠾༻ (2013຤)

    View Slide

  30. Scala, GoͷGood ɾ No good
    • Good
    • ܕ෇͚ݴޠʹΑΔݎ࿚ͳ։ൃ
    • ΤϯδχΞϞνϕʔγϣϯ޲্
    • ࠾༻্ͷޮՌ
    • No good
    • ৽͍͠ݴޠΛษڧ͢Δ࣌ؒ(ίετ)͕ඞཁ

    View Slide

  31. ৽͍ٕ͠ज़ͷ࠾༻
    • جຊ͸ϘτϜΞοϓ͕ྑ͍
    • ܧଓతʹϝϯς͢Δ͜ͱ͸೦಄ʹ

    ٕज़తෛ࠴ʹ
    ͳΓ͔Ͷͳ͍
    Ͱ΋एखΛ
    εϙΠϧ͠ͳ͍Α͏ʹ

    View Slide

  32. ࣮ߦ؀ڥબఆ
    • HDD → SSD
    • 2008Ն Intel X25-MϦϦʔεલ
    • ΦϯϓϨϛε → Ϋϥ΢υ(AWS)
    • TokyoϦʔδϣϯ։ઃ࣌

    View Slide

  33. ΞʔΩςΫνϟબఆ
    • Microservices or Monolithic

    IUUQNBSUJOGPXMFSDPNBSUJDMFTNJDSPTFSWJDFTIUNM

    View Slide

  34. ٕज़બఆ͸FacebookͰ΋ؒҧ͏
    HTML5 vs Native

    IUUQTXXXGBDFCPPLDPNOPUFTGBDFCPPLFOHJOFFSJOHVOEFSUIF
    IPPESFCVJMEJOHGBDFCPPLGPSJPT

    View Slide

  35. ٕज़બఆͷํ਑
    • ͋Δఔ౓อकతʹ
    • ॏཁͳͱ͜ΖͰ͸ΞάϨογϒʹ
    • ൑அϛε࣌ͷఫୀ࿏͸೦಄ʹஔ͘

    View Slide

  36. कΓ: εέʔϥϏϦςΟଞ
    • εέʔϥϏϦςΟɾՄ༻ੑ
    • ηΩϡϦςΟ

    ॗʑͱ

    खൈ͖ͤͣʹ

    View Slide

  37. 2.b
    ਓࡐ໘ͷ͜ͱ

    View Slide

  38. ਓࡐ໘
    • ΤϯδχΞͱϚωδϝϯτ

    View Slide

  39. ΤϯδχΞͱϚωδϝϯτ
    [email protected]

    View Slide

  40. Ϛωδϝϯτͷલʹ..
    • ΤϯδχΞͷΩϟϦΞύε
    • ઐ໳৬(εϖγϟϦετ)
    • Ϛωʔδϟʔ
    • ݚڀ৬?

    View Slide

  41. ઐ໳৬ = ϑϧελοΫΤϯδχΞ??
    • ଟ༷Խ͢ΔϨΠϠʔ
    • ϑϩϯτʙόοΫΤϯυʙΠϯϑϥ
    • εϚʔτϑΥϯ
    • 3DάϥϑΟοΫΤϯδϯ
    • ػցֶशɾσʔλղੳ

    View Slide

  42. ϋʔυ΢ΣΞΤϯδχΞ

    View Slide

  43. શͯΛ໢ཏ͢Δͷ͸ඇݱ࣮త

    ͘͢ͳ͘ͱ΋
    ଟ͘ͷਓʹ͸

    View Slide

  44. εΩϧηοτͷϙʔτϑΥϦΦ
    • όοΫΤϯυ + ػցֶश
    • όοΫΤϯυ + εϚʔτϑΥϯ
    • ʮಘҙͳྖҬ + αʯΛૂ͏

    View Slide

  45. ඞཁे෼ͳεΩϧηοτ΁ͷదԠ
    • Ϗδωε΍֎෦؀ڥͷมԽ

    ˠ ඞཁͳεΩϧηοτ΋มԽ
    • ֤ΤϯδχΞͷੜ͖࢒Γͱ

    ઌߦ౤ࢿͷόϥϯε

    εϚϑΥͷ
    ීٴɾ"84ͷ
    ོ੝

    View Slide

  46. Ϛωʔδϟʔ
    • ϓϩμΫτ։ൃΛਪਐ͢Δ
    • ΤϯδχΞΛϞνϕʔτ͢Δ
    • ։ൃϓϩηεΛ੔͑Δ

    View Slide

  47. ΤϯδχΞͷϞνϕʔγϣϯ
    • ։ൃνʔϜͷੜ࢈ੑʹ௚݁
    • ίϛϡχέʔγϣϯͷॏཁੑ

    View Slide

  48. ΤϯδχΞͷίϛϡχέʔγϣϯ
    • Ͱ͖Δ͚ͩଟ͘ͷ͜ͱΛ৘ใڞ༗
    • ΤϯδχΞϦϯά΁ͷཧղ

    View Slide

  49. ʮਆ͸ࡉ෦ʹ॓Δʯ
    • ݱ৔͔Β཭ΕΔͱࡉ෦Λܰࢹ͕ͪ͠
    • ͳΜͱͳ͘෼͔ͬͨؾʹͳΒͳ͍
    • ؆୯ʹݟ͑Δ͜ͱͰ΋؆୯ʹͰ͖
    Δͱ͸ݶΒͳ͍
    • ܦݧ͕͋ΔΤϯδχΞͰ΋ؕΓ͕ͪ

    View Slide

  50. ։ൃϓϩηεΛ੔͑Δ
    • εΫϥϜ
    • πʔϧಋೖ(GitHub, Slack)
    • ಇ͖ํͷଟ༷ੑ(ϦϞʔτϫʔΫ)

    View Slide

  51. εΫϥϜ

    View Slide

  52. πʔϧಋೖ

    View Slide

  53. ϦϞʔτϫʔΫ

    ౦ژຊళ
    ژ౎ຊࣾ
    Ѫ஌
    ग़ுઌ

    View Slide

  54. ϦϞʔτϫʔΫͷӡ༻
    • ίϛϡχέʔγϣϯΛΑΓॏࢹ͢Δ
    • ҰਓͰ͸·ΔͷΛආ͚Δ
    • ϊ΢ϋ΢͕ڞ༗͞Εͳ͍ͷΛආ͚Δ
    • ಓ۩ɾπʔϧʹͩ͜ΘΔ

    View Slide

  55. ϦϞʔτͰϛʔςΟϯά

    View Slide

  56. ϦϞʔτϫʔΫࢀߟຊ

    View Slide

  57. 3
    CTOʹ

    ٻΊΒΕΔ΋ͷ

    View Slide

  58. CTOͱͯ͠ҙ͖ࣝͯͨ͜͠ͱ(࠶ܝ)
    ٕज़໘

    ͱ

    ਓࡐ໘

    View Slide

  59. ৼΓସ͑ͬͯΈΔͱ…
    • ࣦഊ͸ڪΕΔ΂͖Ͱ͸ͳ͍
    • ͨͩ͠ୀ࿏͸֬อ͢Δ
    • ϘτϜΞοϓͰ࣮ߦ͢Δ
    • ࣦഊͯ͠΋ܦݧ஋͸࢒Δ

    View Slide

  60. CTOʹٻΊΒΕΔ΋ͷ
    ٕज़ͱਓͷ໰୊ʹରͯ͠

    ౴͑Λग़࣮ͯ͠ߦͰ͖Δ

    View Slide

  61. Q&A

    View Slide