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
540
Mackerel Meetup #4
stanaka
0
3.3k
Other Decks in Technology
See All in Technology
浸透しなさいRFC 5322&7208
hinono
0
120
Claude Code x Androidアプリ 開発
kgmyshin
1
570
広島発!スタートアップ開発の裏側
tsankyo
0
240
mruby(PicoRuby)で ファミコン音楽を奏でる
kishima
1
220
実践アプリケーション設計 ②トランザクションスクリプトへの対応
recruitengineers
PRO
2
130
Yahoo!ニュースにおけるソフトウェア開発
lycorptech_jp
PRO
0
330
AIとTDDによるNext.js「隙間ツール」開発の実践
makotot
5
650
OpenAPIから画面生成に挑戦した話
koinunopochi
0
150
見てわかるテスト駆動開発
recruitengineers
PRO
4
270
キャリアを支え組織力を高める「多層型ふりかえり」 / 20250821 Kazuki Mori
shift_evolve
PRO
2
300
GitHub Copilot coding agent を推したい / AIDD Nagoya #1
tnir
2
4.5k
Understanding Go GC #coefl_go_jp
bengo4com
0
1.1k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Building Applications with DynamoDB
mza
96
6.6k
Into the Great Unknown - MozCon
thekraken
40
2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Git: the NoSQL Database
bkeepers
PRO
431
65k
How GitHub (no longer) Works
holman
315
140k
A Tale of Four Properties
chriscoyier
160
23k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
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