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
4.1k
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
3.1k
How to Contribute Go
stanaka
4
18k
Introduction to Mackerel
stanaka
0
1.1k
Upcoming features in 2016, Mackerel
stanaka
0
3.5k
Mackerel's first year and onward
stanaka
0
3k
Mackerel's first year and onward (in English)
stanaka
0
410
Blue-Green Deployment with ECS and monitoring
stanaka
0
620
Mackerel Meetup #4 (in Eng)
stanaka
0
550
Mackerel Meetup #4
stanaka
0
3.3k
Other Decks in Technology
See All in Technology
AI時代の開発を加速する組織づくり - ブログでは書けなかったリアル
hiro8ma
1
260
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
120
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
450
SCONE - 動画配信の帯域を最適化する新プロトコル
kazuho
1
320
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
140
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
710
ハノーファーメッセ2025で見た生成AI活用ユースケース.pdf
hamadakoji
0
400
難しいセキュリティ用語をわかりやすくしてみた
yuta3110
0
370
AIエージェント入門 〜基礎からMCP・A2Aまで〜
shukob
1
160
SQLAlchemy の select(User).where(User.id =="123") を理解してみる/sqlalchemy deep dive
3l4l5
3
260
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Designing for Performance
lara
610
69k
How to Think Like a Performance Engineer
csswizardry
27
2.1k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
It's Worth the Effort
3n
187
28k
How GitHub (no longer) Works
holman
315
140k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Become a Pro
speakerdeck
PRO
29
5.6k
Docker and Python
trallard
46
3.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
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