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
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
340
SOTA競争から人間を超える画像認識へ
shinya7y
0
560
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
3
810
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
190
Azure Well-Architected Framework入門
tomokusaba
1
130
OCIjp_Oracle AI World_Recap
shinpy
1
180
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
0
370
AI機能プロジェクト炎上の 3つのしくじりと学び
nakawai
0
120
OPENLOGI Company Profile for engineer
hr01
1
45k
IoTLT@ストラタシスジャパン_20251021
norioikedo
0
140
20251029_Cursor Meetup Tokyo #02_MK_「あなたのAI、私のシェル」 - プロンプトインジェクションによるエージェントのハイジャック
mk0721
PRO
0
200
AIでデータ活用を加速させる取り組み / Leveraging AI to accelerate data utilization
okiyuki99
1
580
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Being A Developer After 40
akosma
91
590k
Docker and Python
trallard
46
3.6k
Statistics for Hackers
jakevdp
799
220k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Context Engineering - Making Every Token Count
addyosmani
8
300
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Become a Pro
speakerdeck
PRO
29
5.6k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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