Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[CCC2016Fall]Be a great engineer! #jjug_ccc #cc...
Search
Shin Tanimoto
December 03, 2016
Technology
5
6.6k
[CCC2016Fall]Be a great engineer! #jjug_ccc #ccc_a1
JJUG CCC 2016 Fall 基調講演
Be a great engineer!
〜フォローすべきトレンド
スルーすべきトレンドを
どう見抜くのか
Shin Tanimoto
December 03, 2016
Tweet
Share
More Decks by Shin Tanimoto
See All by Shin Tanimoto
Spring Bootで実装とインフラをこれでもかと分離するための試み
shintanimoto
7
1.4k
クラウドネイティブ時代のコンテナ環境におけるJavaアプリケーションのメトリクス・ログ・トレースモニタリング
shintanimoto
5
2.4k
26 Java Years
shintanimoto
0
100
Let’s Have Fun with Reactive Programming, Using Reactor and WebFlux
shintanimoto
0
310
Monitoring and Visualizing Your (Micro)services
shintanimoto
1
390
現代に求められるJavaコミュニティとは / What should be the Java Community of Today?
shintanimoto
0
980
人生がときめく「学び」の魔法 / The Life-Changing Magic of Studying
shintanimoto
6
1.8k
業務で使いたいWebFluxによるReactiveプログラミング / Introduction to Reactive Programming using Spring WebFlux
shintanimoto
9
9.7k
from old Java to modern Java (2017) #jjug
shintanimoto
4
1.8k
Other Decks in Technology
See All in Technology
モバイルゲーム開発におけるエージェント技術活用への試行錯誤 ~開発効率化へのアプローチの紹介と未来に向けた展望~
qualiarts
0
280
useEffectってなんで非推奨みたいなこと言われてるの?
maguroalternative
9
6.2k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
37k
ページの可視領域を算出する方法について整理する
yamatai1212
0
160
21st ACRi Webinar - AMD Presentation Slide (Nao Sumikawa)
nao_sumikawa
0
200
eBPFとwaruiBPF
sat
PRO
1
670
タグ付きユニオン型を便利に使うテクニックとその注意点
uhyo
2
610
32のキーワードで学ぶ はじめての耐量子暗号(PQC) / Getting Started with Post-Quantum Cryptography in 32 keywords
quiver
0
190
Playwrightのソースコードに見る、自動テストを自動で書く技術
yusukeiwaki
1
370
TROCCO 2025年の進化をデモで振り返る
__allllllllez__
0
340
2025 DORA Reportから読み解く!AIが映し出す、成果を出し続ける組織の共通点 #開発生産性_findy
takabow
3
1.1k
MCP・A2A概要 〜Google Cloudで構築するなら〜
shukob
0
160
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Code Review Best Practice
trishagee
73
19k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
380
Building Applications with DynamoDB
mza
96
6.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Designing Experiences People Love
moore
142
24k
RailsConf 2023
tenderlove
30
1.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
690
Designing for Performance
lara
610
69k
4 Signs Your Business is Dying
shpigford
186
22k
Transcript
#&"(3&"5&/(*/&&3 ʙϑΥϩʔ͖͢τϨϯυ εϧʔ͖͢τϨϯυΛ Ͳ͏ݟൈ͘ͷ͔ ຊ+BWBϢʔβάϧʔϓ "DSPRVFTU5FDIOPMPHZ$P -5% ୩ຊ৺ !DFSP@U
ࣗݾհ w ୩ຊ৺ 4IJO5BOJNPUP w ຊ+BWBϢʔβʔάϧʔϓװࣄ w "DSPRVFTU5FDIOPMPHZגࣜձࣾ w
ΞʔΩςΫτ w +BWB0OF4QSJOH0OFεϐʔΧʔ w ϚΠΫϩαʔϏε w τϥϒϧγϡʔςΟϯά w 5XJUUFS!DFSP@U w 'BDFCPPLTIJOUBOJNPUP
ϑΥϩʔ͖͢τϨϯυͱ εϧʔ͖͢τϨϯυΛ Ͳ͏ݟൈ͘ͷ͔
–Rashid Khan ( kibana developer ) ϩάσʔλՄࢹԽπʔϧʰKibanaʱʹࠓྲྀΕΔ Pay it
forwardͷOSSతਫ਼ਆ http://type.jp/et/log/article/kibana “ࠓɺۀքͰى͍ͬͯ͜Δ͜ͱΛຊʹཧղ͍ͯ͠Δ͔” “ͲͷτϨϯυΛϑΥϩʔ͠ɺ ٯʹͲͷτϨϯυΛεϧʔ͖͔͢ɻ”
ࢲͷܦྺॻ
ࢲͷܦྺॻ w ৽ਓ࣌ʹ4USVUT )JCFSOBUF w ͔Β4FBTBS 4+4' 4%BP w ʹ4+4'ίϛολ
w 4+4'ͷࣗಈੜπʔϧͷ։ൃͱɺ ͦΕΛ༻͍ͨ։ൃϓϩηεͷࡦఆ w ͦͷπʔϧͱϓϩηεΛར༻ͨ͠େن։ൃ
େԌ্
ͦͷޙɺ༏ΕͨΤϯδχΞͱͷ ։ൃ߹॓ͰɺԹઘʹਁ͔Γͳ͕Β
ͤΖʮ+4'͠ΜͲ͍ʯ ʁʁʮͦΜͳͷ࠷ॳ͔Β ͔͔ͬͯͨΒεϧʔͨ͠Αʯ ʁʁʮ͋Εɺͳ͔ͬͨͶ͐ʯ
ͷ੨य़Λ ฦͤʂ
ͳ͓ଞʹٕͨ͠ज़ͨͪ
9%PDMFU +4' 4USJQFT 'MFY (VJDF .JSBHF (85 985
9'PSNT 4JMWFSMJHIU %5SBDF #5SBDF
͋ʔͬɺɺɺ͍ͬͯ͏
ԿΛݟಀ͍ͯͨ͠ͷ͔ɺ Ͳ͏ߟ͑Εྑ͔ͬͨͷ͔ɺ ͦΕΛࣗͳΓʹৼΓฦΔ
#&"(3&"5&/(*/&&3 ʙϑΥϩʔ͖͢τϨϯυ εϧʔ͖͢τϨϯυΛ Ͳ͏ݟൈ͘ͷ͔ ຊ+BWBϢʔβάϧʔϓ "DSPRVFTU5FDIOPMPHZ$P -5% ୩ຊ৺ !DFSP@U
5"#-&0'$0/5&/54 ৹ඒ؟Λຏͨ͘Ίʹඞཁͳ͜ͱ ϑΥϩʔ͖͢τϨϯυͷݟ͚ͭํ ͷτϨϯυ
৹ඒ؟Λຏͨ͘Ίʹ ඞཁͳ͜ͱ
ࣗͰߟ͑Δ͜ͱ
͍͍ͩͨʹ͓͍ͯ ͜ΜͳηογϣϯΛ ฉ͖ʹདྷͯΔ࣌Ͱμϝʂ
ٕज़Λݟͨ࣌ʹɺ ͦͷຊ࣭Կ͔Λߟ͑Δ͜ͱ
ٕज़Λݟͨ࣌ʹɺ ͦͷຊ࣭Կ͔Λߟ͑Δ͜ͱ ˺ ٕज़ΛϝλͰଊ͑Δ͜ͱ
ͨͱ͑ɺ3%#.4ͬͯ ཁ͢ΔʹԿͳͷʁ
σʔλͷஔ͖ॴʁ ϑΝΠϧͱͷҧ͍ʁ ,74/P42-ͱͷҧ͍ʁ -JTU)BTI.BQͱͷҧ͍ʁ
σʔλ͕ӬଓԽ͞ΕΔ Ұ؏ੑɺ߹ੑͷ֬อ͕ಘҙ εέʔϧΞτۤख ˣ τϥϯβΫγϣϯ͕ ॏཁͱͳΔॴͰ͏͖ σʔλετΞ
ͰτϥϯβΫγϣϯ͕ ॏཁͰͳͯ͘ΘΕ͍ͯΔɻ ʮͩͬͯੲ͔ΒΘΕͯΔ͠ʯ ͱ͍͏ࢥߟఀࢭɻ
ߴʹΩʔʹର͢Δ͕ཉ͚͠Ε ,74 ෳ߲Λݕࡧ݅ʹ͚ͨ͠Ε %PDVNFOUσʔλετΞ ߲Θͣݕࡧͨ͠Γ୯ޠݕࡧ͚ͨ͠Ε શจݕࡧΤϯδϯ
σʔλετΞͻͱͭͱͬͯ దࡐదॴͰ͍͚ΒΕΔͣ
ͦΕ͕ԿͰ͋Δ͔ɺͱ͍͏ ຊ࣭ΛѲ͍ͯ͠Ε χʔζʹैͬͯબ͕Ͱ͖Δ
ຊ࣭ͷѲ χʔζͷѲ
ຊ࣭ͷѲ χʔζͷѲ
͍͖ͳΓຊ࣭͔Βͳ͍
–ߐୡ @ DEADMAN “ఱͷཧɾɾɾ ͷ͝ͱͷਅཧΛखʹ͍ͯ͠Δ શͯΛखʹ͢Δ” “ཧʢਅཧʣ ৺ʢਓ৺ʣ ʢใʣ
ʢ࣭ʣ ମʢମʣ”
ମମత༏Ґऀ͕উͭ ˣ ྔͰউΔ͕উͭ ˣ ใΛۦ͢Δऀ͕উͭ ˣ ৺ਓʑͷ৺Λࢧͨ͠ऀ͕উͭ ˣ ཧશͯͷਅཧΛखʹͨ͠ऀ͕উͭ
ମۀͷ࣌ ˣ ۀͷ࣌ ˣ ͷ࣌ ˣ ৺ܳͷ࣌ ˣ ཧֶͷ࣌
֨ಆήʔϜͰͨͱ͑Δͱ ମɿૢ࡞Λ֮͑ͨऀ͕উͭ ɿ࿈ଓٕ࿈ܞύλʔϯΛ֮͑ͨऀ͕উͭ ਂ͍ࣝΛ࣋ͭऀ͕উͭ ৺ϝϯλϧͰ্ճͬͨऀ͕উͭ ཧήʔϜͷຊ࣭Λཧղͨ͠ऀ͕উͭ
ϑϨʔϜϫʔΫͱ͔Ͱݴ͏ͱ ମɿϑϨʔϜϫʔΫΛͬͯίʔυΛॻ͘ ɿςΫχοΫΛशಘ͢Δ ਂ͍ࣝΛֶͿ ৺ར༻͢Δਓͷؾ࣋ͪΛଊ͑Δ ཧ͜ͷٕज़ཁ͢ΔʹԿͳͷ͔Λཧղ͢Δ
ຊ࣭ɺखΛಈ͔͠ɺֶͼɺ ߟ͑ൈ্͍ͨʹ͋Δ
ਓ͔Βฉ͍ͨʮཧʯ͔ΓΛ ޠΔͷۭڏ
शಘͷํ ମɿνϡʔτϦΞϧೖॻ ɿॻ੶ϒϩά ϒϩάίϛϡχςΟ ৺ίϛϡχςΟͰͷର ཧࣗͰߟ͑Δ
–TJO ( @TJO_datasci )
–TJO ( @TJO_datasci )
ϚαΧϦʹछྨ͋Δ
ಉ͡ஈ֊ͷઌߦऀ͔ΒདྷΔ ʮਫฏํʹͳ͗͢ʯϚαΧϦ ্ͷஈ֊ͷઌߦऀ͔ΒདྷΔ ʮਨํʹৼΓԼΖ͢ʯϚαΧϦ
͍͑ɺͲͬͪ௧͍Ͱ͚͢ͲͶʂ
Λͯ͠
शಘͷํ ମɿνϡʔτϦΞϧೖॻ ɿॻ੶ϒϩά ϒϩάίϛϡχςΟͰͷʮൃ৴ʯ ৺ίϛϡχςΟͰͷʮൃ৴ʯͱʮରʯ ཧࣗͰߟ͑Δ
कഁͱͷରൺ
कഁ कࢣʹ͍ͭͯकΔஈ֊ʢମɺʣ ഁࣗͰߟ͑Δஈ֊ʢɺ৺ʣ ಠࣗͷηΦϦʔΛ͢Δஈ֊ʢཧʣ
͍͖ͳΓഁΔͳ ͍͖ͳΓΕΔͳ
कഁ कࢣʹ͍ͭͯकΔஈ֊ʢମɺʣ ഁࣗͰߟ͑Δஈ֊ʢɺ৺ʣ ಠࣗͷηΦϦʔΛ͢Δஈ֊ʢཧʣ ຊͧΕΔͳڭΘͬͨجຊΛΕΔͳ
˓˓એݴͱ͔ ˓˓.BOJGFTUPʹ ཧ͕٧·͍ͬͯΔ͜ͱ͕ଟ͍
͔͠͠ɺ͍͖ͳΓཧ͔Β ೖۭͬͯڏͳཧղʹͳΔɻ ੵΈ্͛ͨ͏͑Ͱɺ ཧΛߟ͖͑͢ɻ
ຊ࣭ͷѲ χʔζͷѲ
ٕज़ऀͬͯɺγʔζ͕͖͡ΌΜʁ
ΧφρνΛ࣋ͬͨΒ ͯ͢ఝʹݟ͑ΔλΠϓ͡ΌΜʁ
ΪʔΫͱεʔπ ٕज़αΠυͱϏδωεαΠυ
ΪʔΫγʔζͰಈ͖ εʔπχʔζͰಈ͘
ͱ͍͏ͷେؒҧ͍
ٕज़ʹඞͣ χʔζ͕͏
͜ΕΛୡ͍ͨ͠ ͜ͷ՝Λղܾ͍ͨ͠
ٕज़ΛධՁ͢Δ؍ɺ υΩϡϝϯτͷॆ࣮ ϝϯςφϯεɺαϙʔτɺ ίϛϡχςΟͷ׆ੑɺΤίγεςϜɺ ໘നָ͞͠͞ɺ৽͞ ͳͲͳͲ͋Δɻ
ͰχʔζͦͷϦετͷ τοϓʹ͋Δ͖
৽͍͠ɺ໘നͦ͏ʮ͚ͩʯͰ τϨϯυʹͳΒͳ͍
ݾͷχʔζʹ ߹க͍ͯ͠Δͷ͔ʁ ੈͷதͷχʔζʹ ߹க͍ͯ͠Δͷ͔ʁ
ੈͷχʔζʹ߹க͢Δͷ͕ τϨϯυΛ੮ר͢Δ ɾɾɾ͔ʁ
ഁյతΠϊϕʔγϣϯ ௨ৗɺੈͷχʔζ͕ͳ͍ॴʹݱΕΔ
͔ͦ͠͠ͷٕज़ ʮݾʯͷχʔζʹ߹க͢Δ͔Β ར༻͢Δ͜ͱͱͳͬͨ
ݾͷχʔζʹ߹க͍ͯ͠Ε ੈͷτϨϯυʹৼΓճ͞Εͣʹ ͦͷٕज़Λ͑ྑ͍
ͭ·Γٕज़ͷ৹ඒ؟ͱ
ٕज़ͷ৹ඒ؟ͱ ͦΕͧΕͷٕज़ͷຊ࣭Λཧղ͠ ݾͷχʔζʹ߹கͨ͠ͷΛ બ͢Δ͜ͱͰຏ͔ΕΔ
͋Δٕज़ͷதͰ ຊʹͦΕ͕࠷దͳͷ͔Λ ݟൈ͘ඞཁ͕͋Δ
ϙʔλϧαΠτΛ࡞Γ͍ͨ ˣ ίϯϙʔωϯτϕʔεͰ ηογϣϯΛඞਢͱͨ͠ +4'߹க͠ͳ͍ .7$ϕʔεͷํ͕ద
৹ඒ؟ʹࣗ৴͕ͳ͍ʁ
ඞͣ͠ΞʔϦʔΞμϓλʔʹ ͳΔඞཁͳ͍
ΩϟζϜΛӽ͑ͨޙʹ ΞʔϦʔϚδϣϦςΟͱͯ͠ ࢀՃͯ͠ߏΘͳ͍
ͨͱٕ͑ज़తʹ༏Ε͍ͯͯ ͦΕ͕উར͢ΔͱݶΒͳ͍ ʢ7)4WTϕʔλઓ૪ʣ
͜ͷষͷ·ͱΊ
ମ৺ཧͷஈ֊Λܦͯ ͦΕͧΕͷٕज़ͷຊ࣭Λଊ͑Δ͜ͱ ݾͷχʔζΛѲͯ͠ ࠷దͳٕज़Λಋೖ͢Δ͜ͱ ͦΕͰੈͷτϨϯυ ྫྷ͍ͨ͜ͱ͕͋Δ
ϑΥϩʔ͖͢τϨϯυͷ ݟ͚ͭํ
Πϊϕʔγϣϯ͕ τϨϯυΛੜΈग़͢
ΠϊϕʔγϣϯΛ ͏গ͠LXTL
ഁյతΠϊϕʔγϣϯ ࣋ଓతΠϊϕʔγϣϯ
ഁյతΠϊϕʔγϣϯ ήʔϜνΣϯδϟʔʹͳΔ ʮ࣭ʯͷมԽ ϑΥϩʔ͖͔͢ εϧʔ͖͔͢ࢹ͖͢
࣋ଓతΠϊϕʔγϣϯ ήʔϜνΣϯδϟʔʹͳΓʹ͍͘ ʮྔͷมԽʯ ͨͩ͠ࡶͳഁյతΠϊϕʔγϣϯΛ ࣋ଓతΠϊϕʔγϣϯ͕վળͯ͠ ہ໘͕มΘΓ͏Δ ʮྔ͕࣭ʹసԽ͢Δʯ
ഁյతΠϊϕʔγϣϯ͕ ʮલʹݟͨ͜ͱ͋Δʯͷ গͳ͘ͳ͍ DG ػցֶशɺ73
ʮલʹࣦഊͨ͠ΑͶɺ͜Εʯͱ ݴͬͯεϧʔ͢Δͷ͕ վΊͯൃද͞Εͨࡍʹ ͖͢͠
ίϯϐϡʔςΟϯάͷਐԽʹΑΓ طଘͷٕज़͕վΊͯ͞Ε ഁյతΠϊϕʔγϣϯΛى͜͢
Ͳ͜ͰΠϊϕʔγϣϯͷใΛ खʹೖΕΒΕΔͷʁ
ٕज़ΧϯϑΝϨϯε
೦ͳ͕Βɺ+BWB0OFͰ ͜͜Πϊϕʔγϣϯͳ͍ 4QSJOH0OFʢʹͱͬͯʣ ৽͍͠ݟʹᷓΕ͍ͯͨ 3FBDUJWF .JDSPTFSWJDFT ࢄετϦʔϛϯάॲཧʜ
(PPHMFɺ/FUqJYɺ"NB[PO ڊਓ͕ͨͪߦ͏ΧϯϑΝϨϯε ͖͢ SF*OWFOU͍
5IPVHIUXPSLT 5FDIOJDBM3BEBS ʢΩϟζϜతͳҙຯͰʣ ͦͷٕज़͕ Ͳͷஈ֊ʹ͍Δ͔͕͔Δ
ΨʔτφʔࣾͷΠϕϯτ τϨϯυΛ౿·͑ͯ ࣍ͷ͔ΒઌͷΛ ༧ݟͨ͠ൃදΛߦ͏
ͷτϨϯυ
ػցֶश *P5 "3ɺ73 ϒϩοΫνΣʔϯɺϝογϡΞϓϦ
ͦΕΒΛࢧ͑Δͷ͕ ϚΠΫϩαʔϏεΞʔΩςΫνϟ αʔόϨεΞʔΩςΫνϟ ࢄετϦʔϛϯάॲཧ
ɾɾɾͱݴ͑
໌͔Βɺ͑Δͷʁ
పఈతͳݱओٛ ͙͢ʹݱͰ͑ͳ͍ٕज़ ϑΥϩʔ͠ͳ͍
ͨͱ͑ϚΠΫϩαʔϏε
ຊ࣭తʹ ΞδϦςΟͱεέʔϥϏϦςΟΛ ࣮ݱ͢ΔͨΊͷٕज़
ຊʹͦͷχʔζ͋Δ͔ʁ ಋೖͷͨΊͷίετΛ͑Δ͔ʁ ৫ʹಋೖͷ͕͋Δ͔ʁ ΞδϟΠϧͰεέʔϥϒϧͳ৫͔ʁ ʢίϯΣΠͷ๏ଇʣ
ͦ͏ߟ͑Ε ͙͢ʹಋೖͰ͖ΔΘ͚Ͱͳ͍
Ͱɺͯ͢ͷߏཁૉΛ ͏ඞཁͳ͍
ࣗʹͱͬͯχʔζ͕͋Δ ߏཁૉ͚ͩར༻͢Εྑ͍
͍ͣΕΠϊϕʔγϣϯ ίϞσΟςΟԽ͢Δ
4DBMBͷӨڹΛड͚ͯ +BWB4&ʹ-BNCEB͕ೖΓ 4USVUTɺ)JCFSOBUFɺ4QSJOHͷ ӨڹΛड͚ͯ+BWB&&͕վળ͞Ε ϚΠΫϩαʔϏεʹ͔͏
ػցֶश"84͕ ίϞσΟςΟԽ͢Δ
ίϞσΟςΟԽ͢Ε ಋೖোนେ͖͘Լ͕ΔͷͰ ͦͷ࣌ʹར༻͢Εྑ͍
͋͘·Ͱࣗͷχʔζʹ ߹͏ٕज़Λબ͢Δ ͦͷͨΊʹτϨϯυΛѲͯ͠ దͳٕज़Λݟ͚ͭ·͠ΐʂ
ͥͻࠓͷ$$$Ͱ ྑ͍ٕज़Λݟ͚͍ͭͯͩ͘͞ʂ
&OKPZ++6($$$