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
[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
93
Let’s Have Fun with Reactive Programming, Using Reactor and WebFlux
shintanimoto
0
300
Monitoring and Visualizing Your (Micro)services
shintanimoto
1
390
現代に求められるJavaコミュニティとは / What should be the Java Community of Today?
shintanimoto
0
960
人生がときめく「学び」の魔法 / The Life-Changing Magic of Studying
shintanimoto
6
1.7k
業務で使いたいWebFluxによるReactiveプログラミング / Introduction to Reactive Programming using Spring WebFlux
shintanimoto
9
9.6k
from old Java to modern Java (2017) #jjug
shintanimoto
4
1.7k
Other Decks in Technology
See All in Technology
新規プロダクトでプロトタイプから正式リリースまでNext.jsで開発したリアル
kawanoriku0
1
200
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
170
いま注目のAIエージェントを作ってみよう
supermarimobros
0
350
開発者を支える Internal Developer Portal のイマとコレカラ / To-day and To-morrow of Internal Developer Portals: Supporting Developers
aoto
PRO
1
480
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
280
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
190
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
450
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
260
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.8k
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
340
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
400
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Making Projects Easy
brettharned
117
6.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Code Reviewing Like a Champion
maltzj
525
40k
Designing for humans not robots
tammielis
253
25k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Why Our Code Smells
bkeepers
PRO
339
57k
Embracing the Ebb and Flow
colly
87
4.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
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($$$