Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What are the requirements for CTO
Search
Shinji Tanaka
December 03, 2014
Technology
29
4k
What are the requirements for CTO
IVS CTO Night and Day
2014/12/03
Shinji Tanaka
December 03, 2014
Tweet
Share
More Decks by Shinji Tanaka
See All by Shinji Tanaka
Mackerel loves Machine Learnings
stanaka
0
3k
How to Contribute Go
stanaka
4
18k
Introduction to Mackerel
stanaka
0
1k
Upcoming features in 2016, Mackerel
stanaka
0
3.4k
Mackerel's first year and onward
stanaka
0
2.9k
Mackerel's first year and onward (in English)
stanaka
0
390
Blue-Green Deployment with ECS and monitoring
stanaka
0
600
Mackerel Meetup #4 (in Eng)
stanaka
0
500
Mackerel Meetup #4
stanaka
0
3.2k
Other Decks in Technology
See All in Technology
Windows の新しい管理者保護モード
murachiakira
0
200
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
120
OSS構成管理ツールCMDBuildを使ったAWSリソース管理の自動化
satorufunai
0
570
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
7
560
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
130
Pwned Labsのすゝめ
ken5scal
1
310
OPENLOGI Company Profile for engineer
hr01
1
20k
手を動かしてレベルアップしよう!
maruto
0
170
Goで作って学ぶWebSocket
ryuichi1208
3
2.6k
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
160
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
190
プロダクトエンジニア 360°フィードバックを実施した話
hacomono
PRO
0
140
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Optimizing for Happiness
mojombo
376
70k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building Adaptive Systems
keathley
40
2.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Visualization
eitanlees
146
15k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Building an army of robots
kneath
303
45k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
The Language of Interfaces
destraynor
156
24k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Transcript
CTOʹٻΊΒΕΔͷ IVS CTO Night and Day Hatena Co., Ltd. @stanaka
! 2014/12/03
Shinji Tanaka / ాத৻࢘ @stanaka / id:stanaka גࣜձࣾͯͳ ࣥߦһCTO ࠷ۙɺ౦ژʹӽ͖ͯ͠·ͨ͠
2
͖ͳٕज़ • ݴޠɿ Go • ΤσΟλɿ Emacs • AWSɿ S3
• ࣮ߦڥɿ Docker • σʔλετΞɿ MySQL
[PR] Mackerel https://mackerel.io/
CTOͱ? • Chief Technology Officer • VP Engineering $50ʹ
ࣅͨϙδγϣϯ
CTOͷׂ • Ұ൪ίʔυΛॻ͘ਓ • γεςϜΞʔΩςΫτ • Ϛωδϝϯτ͢Δਓ 71 &OHJOFFSJOH
from CTO of Stripe IUUQCMPHHSFHCSPDLNBODPNpHVSJOHPVUUIFDUPSPMFBUTUSJQF
CTOͷఆٛ • ͔ͬ͠Γͱͨ͠ఆٛࠔ • ձࣾͷنɾϑΣʔζͷґଘ • ࣄۀ༰ʹґΔ
நతͳ͜ͱΑΓ ʮࣗͷܦݧʯ͔Β
1 ͜Ε·Ͱͷ͋Β͢͡
in the case of @stanaka • 2000/4 NTTݚڀॴೖࣾ • 2006/4
ͯͳೖࣾ • 2010/9 CTOഈ໋ • 2014/12 ΠϚίί
2006ʙ2010 • ΞϓϦέʔγϣϯΤϯδχΞ • ΠϯϑϥΤϯδχΞ → Ϛωʔδϟ • ӡ༻ޮԽ(puppetಋೖ) •
ԾԽ(Xen)ɾSSDಋೖ • Hatena Inc.։ઃ & ຊࣾژҠస
ࣄ݅ CTOҎલ • 2007,2008 DCϒϨʔΧʔஅ • 2007? શһୀձࣄ݅ • 2008/4
SubversionϦϙδτϦഁଛ → gitҠߦ
2010ʙ2014 • CTOަ • Πϯϑϥ͔Β࠶ͼαʔϏε։ൃ • GitHub Enterpriseಋೖ • Scala,
Goಋೖ • ౦ژΦϑΟεʹΤϯδχΞ࠾༻࠶։ • ϦϞʔτϫʔΫ(ઓத)
ࣄ݅ CTOҎޙ • 2012/1 SSDͷϑΝʔϜόά౿Έ DB࿈ଓμϯ • 2012/3 ͯͳϒοΫϚʔΫϘλϯԌ্ •
2014/11 υϝΠϯWHOISใͷվ᜵
SSDͷϑΝʔϜόά౿Έ ಉ྅ͷ ݁ࠗࣜೋ࣍ձத ʹϝϯς࣮ࢪ
2 CTOͱͯ͠ ҙ͖ࣝͯͨ͜͠ͱ
CTOͱͯ͠Ռ͖ͨͯͨ͜͠ͱ • ΠϯϑϥपΓΞʔΩςΫνϟ • ΞϓϦɾΠϯϑϥٕज़બఆ • ΤϯδχΞϦϯάνʔϜཆ • ࠾༻ɾҭ
CTOͱͯ͠ҙ͖ࣝͯͨ͜͠ͱ ʮٕज़໘ʯ ͱ ʮਓࡐ໘ʯ
2.a ٕज़໘ͷ͜ͱ
ٕज़໘ • ߈Ί • ٕज़తڝ૪༏Ґͷ ཱ֬ • कΓ • ίετཧ
• εέʔϥϏϦςΟ Մ༻ੑ֬อ • ηΩϡϦςΟ୲อ
߈Ί: ٕज़తڝ૪༏Ґͷཱ֬ • “Technology Company”Λ ඪᒗ͢ΔͷͰ͋Εɺ ੋඇࢦ͍ͨ͠ߴΈ ΤϯδχΞͷ ϩϚϯ
ͦ͏؆୯Ͱͳ͍ • ʮ࣌ػΛݟۃΊΔͷઐՈͰ ͍͠ɻ͔͠͠উෛΛ͠ͳ͍ͱʹ ্͕Δ͜ͱ͢ΒͰ͖ͳ͍ɻʯ- ٕज़ͱ ࣌ػ IUUQSFTFBSDIQSFGFSSFEKQUJNJOH
ٕज़ΛҰखஈͱଊ͑Δ • ७ਮͳٕज़తཁૉͰϏδωε༏ҐΛ ࡞ΔͷۃΊͯࠔ ˠ ੍Λٕज़తʹಥഁ/ճආͭͭ͠ɺ Ϗδωε্ͷ༏ҐΛங͘
Ϗδωεͷٕज़తߩݙ • Ϗδωε্ͷڝ૪༏ҐΛཱ֬͢Δͨ Ίʹٕज़తʹߩݙ͢Δ • εϐʔυײͷ͋Δ։ൃ • ίϞσΟςΟԽ͍ͯ͠ͳ͍ٕज़ͷ ࠾༻
कΓ: ίετཧ • ٕज़తෛ࠴ΛฦࡁՄೳͳϨϕϧʹ IUUQNBSUJOGPXMFSDPNCMJLJ5FDIOJDBM%FCUIUNM
ٕज़తͳஅ • WAFબఆ • ։ൃݴޠબఆ • ϛυϧΣΞબఆ • ࣮ߦڥબఆ •
ΞʔΩςΫνϟબఆ
։ൃݴޠબఆ • Β͘Perl͕ओ࣠ • RubyपลπʔϧͰར༻ • ScalaɾGoͷ࠾༻ (2013)
Scala, GoͷGood ɾ No good • Good • ܕ͚ݴޠʹΑΔݎ࿚ͳ։ൃ •
ΤϯδχΞϞνϕʔγϣϯ্ • ࠾༻্ͷޮՌ • No good • ৽͍͠ݴޠΛษڧ͢Δ࣌ؒ(ίετ)͕ඞཁ
৽͍ٕ͠ज़ͷ࠾༻ • جຊϘτϜΞοϓ͕ྑ͍ • ܧଓతʹϝϯς͢Δ͜ͱ೦಄ʹ ٕज़తෛ࠴ʹ ͳΓ͔Ͷͳ͍ ͰएखΛ εϙΠϧ͠ͳ͍Α͏ʹ
࣮ߦڥબఆ • HDD → SSD • 2008Ն Intel X25-MϦϦʔεલ •
ΦϯϓϨϛε → Ϋϥυ(AWS) • TokyoϦʔδϣϯ։ઃ࣌
ΞʔΩςΫνϟબఆ • Microservices or Monolithic IUUQNBSUJOGPXMFSDPNBSUJDMFTNJDSPTFSWJDFTIUNM
ٕज़બఆFacebookͰؒҧ͏ HTML5 vs Native IUUQTXXXGBDFCPPLDPNOPUFTGBDFCPPLFOHJOFFSJOHVOEFSUIF IPPESFCVJMEJOHGBDFCPPLGPSJPT
ٕज़બఆͷํ • ͋Δఔอकతʹ • ॏཁͳͱ͜ΖͰΞάϨογϒʹ • அϛε࣌ͷఫୀ࿏೦಄ʹஔ͘
कΓ: εέʔϥϏϦςΟଞ • εέʔϥϏϦςΟɾՄ༻ੑ • ηΩϡϦςΟ ॗʑͱ खൈ͖ͤͣʹ
2.b ਓࡐ໘ͷ͜ͱ
ਓࡐ໘ • ΤϯδχΞͱϚωδϝϯτ
ΤϯδχΞͱϚωδϝϯτ IUUQUFOTIPLVNZOBWJKQJUFOHJOFFSLOPXIPXOBPZB@TVTIJ
Ϛωδϝϯτͷલʹ.. • ΤϯδχΞͷΩϟϦΞύε • ઐ৬(εϖγϟϦετ) • Ϛωʔδϟʔ • ݚڀ৬?
ઐ৬ = ϑϧελοΫΤϯδχΞ?? • ଟ༷Խ͢ΔϨΠϠʔ • ϑϩϯτʙόοΫΤϯυʙΠϯϑϥ • εϚʔτϑΥϯ •
3DάϥϑΟοΫΤϯδϯ • ػցֶशɾσʔλղੳ
ϋʔυΣΞΤϯδχΞ
શͯΛཏ͢Δͷඇݱ࣮త ͘͢ͳ͘ͱ ଟ͘ͷਓʹ
εΩϧηοτͷϙʔτϑΥϦΦ • όοΫΤϯυ + ػցֶश • όοΫΤϯυ + εϚʔτϑΥϯ •
ʮಘҙͳྖҬ + αʯΛૂ͏
ඞཁेͳεΩϧηοτͷదԠ • Ϗδωε֎෦ڥͷมԽ ˠ ඞཁͳεΩϧηοτมԽ • ֤ΤϯδχΞͷੜ͖Γͱ ઌߦࢿͷόϥϯε εϚϑΥͷ
ීٴɾ"84ͷ ོ
Ϛωʔδϟʔ • ϓϩμΫτ։ൃΛਪਐ͢Δ • ΤϯδχΞΛϞνϕʔτ͢Δ • ։ൃϓϩηεΛ͑Δ
ΤϯδχΞͷϞνϕʔγϣϯ • ։ൃνʔϜͷੜ࢈ੑʹ݁ • ίϛϡχέʔγϣϯͷॏཁੑ
ΤϯδχΞͷίϛϡχέʔγϣϯ • Ͱ͖Δ͚ͩଟ͘ͷ͜ͱΛใڞ༗ • ΤϯδχΞϦϯάͷཧղ
ʮਆࡉ෦ʹ॓Δʯ • ݱ͔ΒΕΔͱࡉ෦Λܰࢹ͕ͪ͠ • ͳΜͱͳ͔ͬͨ͘ؾʹͳΒͳ͍ • ؆୯ʹݟ͑Δ͜ͱͰ؆୯ʹͰ͖ ΔͱݶΒͳ͍ • ܦݧ͕͋ΔΤϯδχΞͰؕΓ͕ͪ
։ൃϓϩηεΛ͑Δ • εΫϥϜ • πʔϧಋೖ(GitHub, Slack) • ಇ͖ํͷଟ༷ੑ(ϦϞʔτϫʔΫ)
εΫϥϜ
πʔϧಋೖ
ϦϞʔτϫʔΫ ౦ژຊళ ژຊࣾ Ѫ ग़ுઌ
ϦϞʔτϫʔΫͷӡ༻ • ίϛϡχέʔγϣϯΛΑΓॏࢹ͢Δ • ҰਓͰ·ΔͷΛආ͚Δ • ϊϋ͕ڞ༗͞Εͳ͍ͷΛආ͚Δ • ಓ۩ɾπʔϧʹͩ͜ΘΔ
ϦϞʔτͰϛʔςΟϯά
ϦϞʔτϫʔΫࢀߟຊ
3 CTOʹ ٻΊΒΕΔͷ
CTOͱͯ͠ҙ͖ࣝͯͨ͜͠ͱ(࠶ܝ) ٕज़໘ ͱ ਓࡐ໘
ৼΓସ͑ͬͯΈΔͱ… • ࣦഊڪΕΔ͖Ͱͳ͍ • ͨͩ͠ୀ࿏֬อ͢Δ • ϘτϜΞοϓͰ࣮ߦ͢Δ • ࣦഊͯ͠ܦݧΔ
CTOʹٻΊΒΕΔͷ ٕज़ͱਓͷʹରͯ͠ ͑Λग़࣮ͯ͠ߦͰ͖Δ
Q&A