Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Patrick • Tech Fresh @ LINE • Backend Engineer Intern @ Skyvor Medical • SWE Intern @ Jubo Health BEng in TAHRD @ NTNU

Slide 3

Slide 3 text

01 02 03 04 引言 實習都在做什麼呢? 寫 Code 都寫不完了還要 DevOps… 實際走入開發的世界 所以到底什麼是 DevOps? DevOps 是有加速開發啦...但到底加速多少? 有了 DevOps,然後呢? Life as a LINE Developer 05 程式碼的品質需要被量化,用戶體驗也不例外! 你的服務夠可靠嗎? CONTENT

Slide 4

Slide 4 text

Meeting / Workshop Research Coding Happy Happy Life as a LINE Developer

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

作業 vs 開發?

Slide 7

Slide 7 text

02 實習都在做什麼呢? 實際走入開發的世界

Slide 8

Slide 8 text

2100 Tech Stack 2021 15 特點項目文字

Slide 9

Slide 9 text

LINE Fact Checker

Slide 10

Slide 10 text

LINE Fact Checker Supporting Input OCR (光學字元辨識) STT (Speech to Text) Plain Text

Slide 11

Slide 11 text

LINE Fact Checker

Slide 12

Slide 12 text

Overview of STT Architecture

Slide 13

Slide 13 text

Kafka as Message Queue 寄件人 收件人 郵筒 郵局 好多郵局

Slide 14

Slide 14 text

Overview of STT Architecture

Slide 15

Slide 15 text

Overview of STT Architecture

Slide 16

Slide 16 text

Overview of STT Architecture

Slide 17

Slide 17 text

Kafka With Elastic Search

Slide 18

Slide 18 text

寫 Code 都寫不完了還要 DevOps… 03 所以到底什麼是 DevOps?

Slide 19

Slide 19 text

Cody Chen TECH FRESH @ LINE ● Education ○ Master of Civil Engineering@NTU, 2022 ~ Now. ● Experience ○ DevOps/SRE TECH FRESH@LINE, 2024/07 ~ Now. ○ Cloud Architect Intern@Cathay, 2024/02~06 ○ Backend Engineer Intern@Jubo Health, 2023/07~/09

Slide 20

Slide 20 text

當你在學校做專案

Slide 21

Slide 21 text

當你在學校做專案

Slide 22

Slide 22 text

當你在學校做專案

Slide 23

Slide 23 text

當你在學校做專案

Slide 24

Slide 24 text

沒有測試

Slide 25

Slide 25 text

不用長期維護

Slide 26

Slide 26 text

當然也就不用做監控

Slide 27

Slide 27 text

學校 v.s. 公司

Slide 28

Slide 28 text

04 DevOps 是有加速開發啦...但到底加速多少? 有了 DevOps,然後呢?

Slide 29

Slide 29 text

DORA metrics

Slide 30

Slide 30 text

DORA metrics source: https://memes.tw/wtf/443536

Slide 31

Slide 31 text

DevOps Research and Assessment (DORA)

Slide 32

Slide 32 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency DORA metrics

Slide 33

Slide 33 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 變更前置時間 Lead Time for Change DORA metrics

Slide 34

Slide 34 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 部署失敗平均恢復時間 Mean Time to Recover 變更前置時間 Lead Time for Change DORA metrics

Slide 35

Slide 35 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 部署失敗平均恢復時間 Mean Time to Recover 變更前置時間 Lead Time for Change 變更失敗率 Change Failure Rate DORA metrics

Slide 36

Slide 36 text

有點抽象,所以我們以「餐廳營運」做為例子!

Slide 37

Slide 37 text

假設經營一家餐廳,你所需要的 DORA metrics 是…? DF 餐廳出菜的頻率。

Slide 38

Slide 38 text

假設經營一家餐廳,你所需要的 DORA metrics 是…? DF 餐廳出菜的頻率。 LT4C 出菜過程所花的時間總長,例如:備料、料理、擺盤等。

Slide 39

Slide 39 text

假設經營一家餐廳,你所需要的 DORA metrics 是…? DF 餐廳出菜的頻率。 LT4C 出菜過程所花的時間總長,例如:備料、料理、擺盤等。 MTTR 出錯菜 QQ,重新上一道菜給顧客的平均所花的時間。

Slide 40

Slide 40 text

假設經營一家餐廳,你所需要的 DORA metrics 是…? DF 餐廳出菜的頻率。 LT4C 出菜過程所花的時間總長,例如:備料、料理、擺盤等。 MTTR 出錯菜 QQ,重新上一道菜給顧客的平均所花的時間。 CFR 餐廳出錯餐點(例如:與客人點的餐不符合、義大利麵忘了放麵)的機率。

Slide 41

Slide 41 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 部署失敗平均恢復時間 Mean Time to Recover 變更前置時間 Lead Time for Change 變更失敗率 Change Failure Rate DevOps Research and Assessment (DORA)

Slide 42

Slide 42 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 部署失敗平均恢復時間 Mean Time to Recover 變更前置時間 Lead Time for Change 變更失敗率 Change Failure Rate DevOps Research and Assessment (DORA) 衡量程式碼或團隊開發的速度

Slide 43

Slide 43 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 部署失敗平均恢復時間 Mean Time to Recover 變更前置時間 Lead Time for Change 變更失敗率 Change Failure Rate DevOps Research and Assessment (DORA) 衡量程式碼或團隊開發的速度 衡量程式碼上線後的穩定性

Slide 44

Slide 44 text

速率 (Velocity) 穩定度 (Stability) 部署頻率 Deployment Frequency 部署失敗平均恢復時間 Mean Time to Recover 變更前置時間 Lead Time for Change 變更失敗率 Change Failure Rate DevOps Research and Assessment (DORA) 同時追蹤兩者,確保團隊不因為開發速度而犧牲程式碼品質; 也不因為盲目追求程式碼品質而拖累產品迭代速度!

Slide 45

Slide 45 text

程式碼的品質需要被量化,用戶體驗也不例外! 05 你的服務夠可靠嗎?

Slide 46

Slide 46 text

Reliability 服務水平指標 Service Level Indicator 服務水平目標 Service Level Objective 服務水平協議 Service Level Agreement 系統可靠度

Slide 47

Slide 47 text

沒聽過ㄟ,我們再以「餐廳外送」做為例子!

Slide 48

Slide 48 text

一家餐廳外送服務的 SLI/SLO/SLA SLI • 餐廳將一張訂單送到顧客手中所花的時間。

Slide 49

Slide 49 text

一家餐廳外送服務的 SLI/SLO/SLA SLI • 餐廳將一張訂單送到顧客手中所花的時間。 SLO • 餐廳對於自己的要求;例如,一個月內 99% 的訂單要在 15 分鐘內送達。

Slide 50

Slide 50 text

一家餐廳外送服務的 SLI/SLO/SLA SLI • 餐廳將一張訂單送到顧客手中所花的時間。 SLO • 餐廳對於自己的要求;例如,一個月內 99% 的訂單要在 15 分鐘內送達。 SLA • 餐廳對於顧客的承諾;如果訂單沒有在 15 分鐘內送達,則該次外送費全免。

Slide 51

Slide 51 text

Why does DevOps/SRE matter? ● DevOps 核心在溝通、協調、建立文化;最終目的是提升自動化程度,增進內部團隊效率。 ● SRE 則像是醫生,協助診斷「軟體」,對外持續改善使用者體驗。 優化使用者體驗 建立內部工程文化

Slide 52

Slide 52 text

No content