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
2.9k
How to Contribute Go
stanaka
4
18k
Introduction to Mackerel
stanaka
0
1k
Upcoming features in 2016, Mackerel
stanaka
0
3.3k
Mackerel's first year and onward
stanaka
0
2.9k
Mackerel's first year and onward (in English)
stanaka
0
370
Blue-Green Deployment with ECS and monitoring
stanaka
0
580
Mackerel Meetup #4 (in Eng)
stanaka
0
480
Mackerel Meetup #4
stanaka
0
3.1k
Other Decks in Technology
See All in Technology
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
190
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
470
Can We Measure Developer Productivity?
ewolff
1
150
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
120
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
370
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
290
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
How to train your dragon (web standard)
notwaldorf
88
5.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Rails Girls Zürich Keynote
gr2m
94
13k
Six Lessons from altMBA
skipperchong
27
3.5k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
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