Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Product Management Tips for In-house tools
Search
LINE Developers
January 07, 2021
Technology
8.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Product Management Tips for In-house tools
LINE Developers
January 07, 2021
More Decks by LINE Developers
See All by LINE Developers
LINEスタンプのSREing事例集:大きなスパイクアクセスを捌くためのSREing
line_developers
3
2.6k
Java 21 Overview
line_developers
6
1.4k
Code Review Challenge: An example of a solution
line_developers
1
1.7k
KARTEのAPIサーバ化
line_developers
1
650
著作権とは何か?〜初歩的概念から権利利用法、侵害要件まで
line_developers
5
2.4k
生成AIと著作権 〜生成AIによって生じる著作権関連の課題と対処
line_developers
3
2.5k
マイクロサービスにおけるBFFアーキテクチャでのモジュラモノリスの導入
line_developers
9
4.1k
A/B Testing at LINE NEWS
line_developers
3
1.2k
LINEのサポートバージョンの考え方
line_developers
2
1.6k
Other Decks in Technology
See All in Technology
DEFCON_CHV_CTF_Write-up.pdf
bata_24
0
140
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
170
安心して変更できるWebフロントエンドの作り方
pirosikick
4
1.9k
消えない 動かない 効かない
yama3133
1
120
クロスボーダーM&AのValue Upを支えるプロダクト開発。日米チームのハブになったプロダクトエンジニアの実践 / Product Engineering Conference 2026
genda
0
120
OpenTelemetryのメトリクスをCloudWatchに送ってPromQLで見てみた
ota1022
0
140
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
1
1.5k
Sigmaユーザーのための有用リソース一挙公開 & Sigmaで使えるMCP #sigma_ucj /useful-resources-for-sigma-computing-users-and-mcps-with-sigma
shinyaa31
0
200
2026-09-09 【sigma_ucj#1】Sigma を IaC 管理したい! / IaC for Sigma
civitaspo
0
120
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
5
25k
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
260
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
330
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
780
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Into the Great Unknown - MozCon
thekraken
41
2.7k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
370
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
530
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
980
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
A Soul's Torment
seathinner
7
3.6k
Transcript
ҏ౻ -*/&גࣜձࣾ ࣾπʔϧʹ͓͚Δ ϓϩμΫτ Ϛωδϝϯτͷצॴ
ηογϣϯͰ͓͍ͨ͜͠ͱ ։ൃऀ͕։ൃऀ͚ʹ πʔϧɾαʔϏεɾ ϓϥοτϑΥʔϜΛ ఏڙ͢Δ͜ͱͰ ؕΓ͕ͪͳ՝ͱղܾࡦ
ηογϣϯͰ͓͍ͨ͜͠ͱ ։ൃऀ͕։ൃऀ͚ʹ πʔϧɾαʔϏεɾ ϓϥοτϑΥʔϜΛ ఏڙ͢Δ͜ͱͰ ؕΓ͕ͪͳ՝ͱղܾࡦ ϓϩμΫτϚωδϝϯτͷ ؍͔Β զʑͷݱͰͷ
ܦݧɾࣦഊஊΛͱʹ
ࢲͨͪͷνʔϜͱϓϩμΫτ -*/&ͷ4&5ͱͯ͠ ࣾ։ൃऀ͚ʹ πʔϧΛఏҊɾ։ൃɾӡ༻
4FCBT ϚΠΫϩαʔϏεͷোݪҼಛఆπʔϧ &&ςετΛ࣮ߦ͠ɺ ͕͋ΔՕॴΛ ;JQLJOͰݟ͑ΔԽ
ύϑΥʔϚϯεςετ༻ϓϥοτϑΥʔϜ "ZBQFSG @Test public void xxx() { final
long startTime = System.currentTimeMillis(); try { get("http://localhost:8080/index.html") .then() .statusCode(200); Report.recordSuccess( System.currentTimeMillis() - startTime, 1); } catch (Exception e) { Report.recordFailure( System.currentTimeMillis() - startTime,"error"); } } (SBGBOBͳͲͰ ݁ՌΛදࣔ
5FTUBCMF*OGSB ΦϯσϚϯυͰ ςετڥΛෳͰ͖ΔαʔϏε
ࢲͷׂɾ Ϧʔμʔͱͯ͠ҎԼΛܾఆ • ୭ͷԿΛղܾ͢Δ͔ • Ͳͷॱ൪Ͱ͍ͭ·Ͱʹ࣮ݱ͢Δ͔ • ͦͷ݁Ռͱͯ͠ શࣾతʹͲͷΑ͏ͳՁΛఏڙ͢Δ͔
ˠ1E.࣮࣭݉
ͳͥࣾπʔϧͷ1E.ʁ ʰ5FDIOPMPHZ3BEBSʱ • ϓϩμΫτϚωδϝϯτͷ ݟɾํ๏Λࣾπʔϧ܈ʹ ద༻͢ΔτϨϯυ͕ੈքతʹ֦େ • ҰํͰɺࣾπʔϧ܈ͳΒͰͷ ݟɾํ๏·ͩ·ͩෆ
5IPVHIU8PSLTࣾͷ ͓͖ͷ ۀքτϨϯυϨϙʔτ
ݟΛཧ͠ ൃ৴͢Δ άϩʔόϧͳ νϟϯεͰʂʁ
ه ʮϢʔβʯͱʮεςʔΫϗϧμʔʯ ԼهͷΑ͏ʹ۠ผͯ͠ѻ͍·͢ Ϣʔβ ։ൃऀͳͲ ϓϩμΫτΛ ࣮ࡍʹͬͯ͘ΕΔਓ εςʔΫϗϧμʔ һ্ͳͲ
ϓϩμΫτ։ൃΛ ࢧԉͯ͘͠ΕΔਓ
ΞδΣϯμ ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ <՝ઃఆ> ࢲ͕ͨͪ ࣮ࡍʹؕͬͨ՝ͱ ؍ଌͨ͠ʮෆ٢ͳ͍ʯ
ࣾπʔϧͷલఏ • ։ൃऀͷΈͰνʔϜฤ • ϓϩμΫτϚωʔδϟʔ ʮ·ͣʯ͍ͳ͍ • ϓϩμΫτϚωδϝϯτ Λ͍ͬͯΔਓগͳ͍
։ൃʂ։ൃʂ։ൃʂ ؾ͕ͭ͘ͱ։ൃʹूத • Ϣʔβχʔζ͕໌֬Ͱͳ͍ͷʹ ։ൃλεΫͰຒ·ΔλεΫϘʔυ • ϦϦʔεΑΓϦϑΝΫλϦϯά •
ंྠͷ࠶ൃ໌ΛΓ͕ͪ
։ൃʂ։ൃʂ։ൃʂ ։ൃʹڧ͍ؔ৺ͷ͋Δϝϯόʔ͚ͩͰ ϓϩμΫτ։ൃΛ͢Δͱʜ 7BMVBCMF 6TBCMF 'FBTJCMF ࣗͨͪͷٕज़తʹ ࣗͨͪʹͱͬͯ
ࣗͨͪͷٕज़తʹ
͕ࣗͨͪϢʔβʂ Ϣʔβχʔζશͯط ͱ͍͏ࢥ͍ࠐΈ • ʮࣗͨͪʹϢʔβʯͱ͍͏ʮޡೝʯ • ϢʔβχʔζͷݕূΛ͠ͳ͍ •
৽ػೳͳͲͷσϞ͠ͳ͍
͕ࣗͨͪϢʔβʂ ຊɾຊདྷͷϢʔβ͕ ·ͳ͍ɾΘͳ͍ͷΛ࡞Γ͕ͪ 7BMVBCMF 6TBCMF 'FBTJCMF ࣗͨͪʹͱͬͯ ࣗͨͪʹͱͬͯ
ࣗͨͪʹͱͬͯ
ʮ'JYʯͷޡṩ ҙࢥܾఆɾ߹ҙ ෴Βͳ͍ͱ͍͏ࢥ͍ࠐΈ • ࠷ॳʹ߹ҙͰ͖ͨͷͷ ʮ࡞ΓࠐΈʯʹूத͢Δ • σϞใࠂΛޙճ͠ʹ͕ͪ͠
• εςʔΫϗϧμʔมΘΒͣ ࢧԉ͠ଓ͚ͯ͘ΕΔͱࢥ͍ࠐΉ
ͭΒ͍Ͱ͢ɻ
ϙΠϯτ ٕज़తʹ༏Ε͍ͯΔ㱠ϢʔβՁ ϢʔβͱεςʔΫϗϧμʔʹ ΞϯςφΛுΔ͜ͱඞਢ ϓϩμΫτϚωδϝϯτͷߟ͑ํ ඞཁ͔ͭ༗ޮ
思い込みから 一歩離れてみよう
ղܾํ ։ൃʂ։ൃʂ։ൃʂ ͕ࣗͨͪϢʔβʂ ʮ'JYʯͷޡṩ ࣾπʔϧͰ Ϣʔβத৺ εςʔΫϗϧμʔΛ ૄ͔ʹ͠ͳ͍ ϓϩϞʔγϣϯ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ • ຊͷϢʔβΛΔ • Ϣʔβχʔζͱ͖߹͏ • ͦΕͰ͕ࣗࢼ͍ͨ͠ ͜ͱ͕͋Δ߹ͷৼ͍
ຊͷϢʔβΛΔ ࣗͨͪ ϢʔβදͰͳ͍ • ͕ࣗͨͪΓ͍ͨ͜ͱΛΰϦԡ͢ ཧ༝ʹ͍͚ͯ͠ͳ͍ʢռΊʣ • ໘͕ΒͣɺϢʔβʹΛฉ͘ •
͜ΕΒΛҙࣝ͢Δ͚ͩͰ݁ߏมΘΔ
Ϣʔβχʔζͱ͖߹͏ Λ͢Δͷ͕Ұ൪ • ΠϯλϏϡʔɾςετɾσϞΛ ఆظԽɾԽ͢Δ • ৽ػೳͷσϞͰϢʔβͷؔ৺ΛߴΊΔ • ݴΘΕͨͷ͚ͩΛ࡞Δଶආ͚Δ
8IZT ͳͥ࡞Γ͍ͨͷ͔ʁ • Ϣʔβͷ՝Λղܾ͍ͨ͠ͷ͔ʁ • ͕ࣗࢼͯ͠Έ͍ͨ͜ͱ͕͋Δͷ͔ʁ • ྆ऀΛͭͳ͛ΒΕͳ͍͔ʁ ˠ8JOXJOʹͰ͖ΔͳΒͭͳ͛Α͏
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏ 4&5νʔϜͰɺ 4MBDLͰͷ௨͕ Ұൠత
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏ Ϣʔβ͔Β͋Δɺ (JU)VCͷ13ը໘Ͱ ௨ͯ͠ͱཁ͕
ʢࣄྫʣϏϧυ݁Ռͷ௨ํ๏ ҰՕॴͰશ෦ݟ͍ͨ τϨϯυ͕ શࣾతʹग़͖͍ͯͯͨ
·ͱΊ • ਅ伨ʹϢʔβϑΝʔετ • ݴ͍ͳΓආ͚Δ • ͕ࣗΓ͍ͨ͜ͱͱ Ϣʔβͷ՝ղܾͱΛ ϦϯΫͤ͞Δ͜ͱΞϦ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ εςʔΫϗϧμʔͷ ࢧ࣋ɾڠྗͷऔΓ͚ͷ ඞཁੑͱͦͷํ๏
ڵຯɾؔ৺ࣦΘΕಘΔ ཁ༷݅ෆมͰ͔͢ʁ • Ұͷ߹ҙͰຬͯ͠ʢΞΧϯʣ • ڵຯɾؔ৺ৗʹมΘΔ • ۀͷ༏ઌͱಉ͡ ˠৗʹڵຯɾؔ৺ΛҾ͘Έ͕ඞཁ
ఆظతͳσϞ ಈ͘ͷͷΠϯύΫτΛϑϧ׆༻͢Δ ։ൃऀ͔ͩΒͦ͜ͷ ڧΈΛ׆͔ͦ͏ʂ
ʮਤʯͷఆظతͳڞ༗ɾߋ৽ ݱ࣌ͷΰʔϧͱͦͷಓےΛݟͤΔ
શͯͷཁٻʹԠ͑ͯμϝ /PDPEFNPOLFZ • Ϧιʔε༗ݶ • ݱঢ়࣮ݱՄೳͳ͜ͱΛઆ໌͢Δ͜ͱ ϓϩͷৼΔ͍ • ༏ઌॱҐΛ͚࣋ͬͯͭΔ
• ͋͘·Ͱύʔτφʔͱͯ͠ৼΔ͏
ࣾπʔϧͷσϞಈըΛ ϥϯνͷͰһʹհ ˣ ͦͷһ͕ଞͷһʹσϞಈըΛڞ༗ ˣ ࢲͨͪͷΒͳ͍͏ͪʹ ࣾπʔϧͷར༻ऀ͕૿͍͑ͯͨʢʂʣ ʢࣄྫʣσϞಈըΛ࡞ͬͯΈͨ
·ͱΊ • ڵຯɾؔ৺ΛҾ͘͜ͱ ཱͳࣄ • ܾఆΛෆมͱ ࢥ͍ࠐ·ͳ͍ • ݴ͍ͳΓආ͚Δ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
͜ͷষͷϙΠϯτ 1SPEVDU.BSLFUJOH • ఆϢʔβ͕ࣾ։ൃऀ Ͱ͋ͬͯඞཁ • ͨͩ͠ඞཁ
ใΦʔϓϯ͔ͭͭ͘͜͠ • ڵຯɾؔ৺Λשى͠ଓ͚Δ • ఆظతͳσϞ • ʮਤʯͷఆظతͳڞ༗ɾߋ৽ • ใৗʹΞΫηεͰ͖ΔΑ͏ʹ͢Δ
• ςϨϏ$.͘Β͍ͭ͘͜͠ • ࣗવͱݴ༿Λ͍ͭͯग़Δ·Ͱ
ςΩετͱσϞͷ྆࣠Ͱ ͲͪΒΔʂ
νϟϯωϧΛ૿͢ • ͚ͭͩͰʹ͔ͭͳ͍ • ࢹքʹೖΓࠐΜͰ ೝ·Ͱ͍࣋ͬͯ͘ • λʔήοτ͕Ή νϟϯωϧΛૂ͓͏
ࢲͷൃ৴ͷ͕ΞδϟΠϧܥʹภΓ͕ͪ ˣ ,VCFSOFUFTɾ2"ܥίϛϡχςΟʹ ൃ৴ॴΛ֦େ ˣ 5XJUUFSܦ༝Ͱ ࣾһ͔ΒίϯλΫτΛड͚ͨʢʂʣ ʢࣄྫʣൃ৴ॴͷݟ͠
·ͱΊ • ࣾπʔϧͰ ϓϩϞʔγϣϯඞਢ • Ϛϧννϟϯωϧ • ೝͤ͞Δ·Ͱଓ͚Δ
ࣾπʔϧΏ͑ʹؕΓ͕ͪͳ՝ ݟɿࣾπʔϧͰϢʔβத৺ ݟɿεςʔΫϗϧμʔΛૄ͔ʹ͠ͳ͍ ݟɿϓϩϞʔγϣϯ ·ͱΊ
ߦಈࢦͷTXJUDI ։ൃऀઢ͔Β ϓϩμΫτϚωδϝϯτ • ผͷࢹΛ୯७ʹΒͳ͍͚͔ͩ • ڭ͑ΕɺΩνϯͱ׆༻ͯ͘͠ΕΔ • ίʔνɺ͍ͨํ͕ྑ͍
։ൃऀͷϝϦοτΛ׆͔͢ • ࣮ࡍʹ࡞ͬͯࢼͤΔ • ΑΓݱ࣮తͳϞϊͰ σϞͰ͖Δ • ϝϦοτʹྗͯ͠ ؾ࣋ͪΑ͘ͳΓ͗͢ͳ͍
%FW0QTͰଉਧΛਧ͖ࠐΉ ΈΛ࠷ॳʹ࡞Ζ͏ • ϢʔβςετΛ͘͢͠ͳΔ • ݕূΛܧଓతʹߦ͍͘͢ͳΔ • 1JWPUΛؾ݉Ͷͳ͘Ͱ͖Δ 1E.º
%FW0QT808
ʮࣗݾ࣮ݱʯՄೳ ͕ࣗΓ͍ͨ͜ͱͱ Ϣʔβͷ՝ղܾͱΛ ϦϯΫͤ͞Δࢹͱߦಈ ͋ͬͯྑ͍
1E.ʹର͢Δ։ൃऀͷٙ೦ ίʔυͷ͍͕ ͠ͳ͍ ʢ৴༻Ͱ͖ͳ͍ʣ
྆ํͱඞཁ ϓϩμΫτ Ϛωδϝϯτ º ΤϯδχΞϦϯά
Ѫ͞ΕΔ %FW&YΛ ࢦ͠ଓ͚Α͏