系統工程師的打怪升級之旅

從大學畢業、進入職場,經歷 SI、IT、RD … 等許多角色,凍仁目前最喜歡的是「系統工程師 (System Engineer)」這個稱號,而〈系統工程師的打怪升級之旅〉就是在述說凍仁自己 DevOps 冒險之旅 (journey) 的故事。

莫約兩個月前,凍仁收到 Bob Chao 前輩的邀請,並有此榮幸可以在 COSCUP 2019 的「開源 x 職涯」1 議程軌中,分享些 DevOps 的學習心得。


▲ 凍仁於 COSCUP 2019 分享的「開源 x 職涯 x DevOps」投影片。

這次的上台分享,除一開始用自己的職涯小故事開場外,還提了以下 3 點:
  1. 用「狹義的 DevOps vs. 廣義的 DevOps」來介紹 DevOps 是什麼p.18
  2. 生命歷程圖繪出技能樹以自我反思,並給予這條路的伙伴一點建議。p.25

    「畫一張生命歷程圖,反思自己的過往。如果我可以重活一次。」
    實行個人看板前該做的事 by Ruddy Lee

  3. 提及 DevOps 三步工作法 (Flow、Feedback),並將各種開源工具與其二結合p.28

接著,凍仁在 DevOpsDays Taipei 2019 分享的〈企業導入 Ansible 自動化真的容易嗎〉主題,才會對文化 (Culture) 有較多的涉略。p.37

▲ 感謝 Kuro Hsu 大大於議程中拍攝。

短短 25 分鐘能講的不多,若還想深入了解 DevOps,可依序觀看凍仁過去的文章。
  1. 《鳳凰專案》- 踏入 DevOps 之旅的第一本書 / 2018-08-26
  2. 一群臺灣老司機參與《鳳凰項目》沙盤的持續成長故事 / 2017-09-02
  3. 從「計畫外工作」看 PDCA / 2019-08-05
  4. 從一個人的 DevOps,到一個 DevOps 的團隊 / 2017-12-25
  5. 系統工程師的 DevOps 實踐之道 / 2018-12-31
  6. DevOps Engineer、SRE 徵才求職雜談 / 2018-07-29

DevOps Tools 部份,則可參考以下教學文。
  1. 手殘救星 - Git & GitHub / 2015-05-08
  2. 現代 IT 人一定要知道的 Ansible 自動化組態技巧 / 2016-05-29
  3. 現代 IT 人一定要知道的 Ansible 自動化組態技巧 (3/e) / 2017-03-27
  4. 現代 IT 人一定要知道的 Ansible 自動化組態技巧 Ⅱ - Roles & Windows / 2016-07-26
  5. 前端工程師一定要知道的 Docker 虛擬化容器技巧 / 2016-07-08
  6. DevOps 人一定要知道的 Ansible & GitLab CI 持續交付技巧 / 2017-08-30
  7. DevOps 人一定要知道的持續交付技巧 - Ansible & GitLab CI 實戰演練工作坊 / 2017-11-13
  8. 簡單易用的 Zabbix 監控服務 / 2018-06-01

▲ COSCUP 2019 IB305 教室的講者視角。

最後的 Q&A 和 END 雖已快速提及幾個要點,但稍嫌不足。凍仁在此簡單整理 Chun-Hung Huang (@sakanamax) 前輩和自己的課中補充。

Q&A

  1. 怎麼拿捏在社群分享知識的範圍?
    1. 純技術分享,只談技術並避開較私秘的話題。
    2. 改用私人帳號拋棄式玩具 (可參閱《學徒模式》一書) 環境進行 demo 和練習,而不是直接使用公司的 AWS、GCP … 等帳號。
  2. 怎麼找 DevOps 的工作?怎麼知道該公司背後所使用的核心技術?
    1. 雲端 : 地端 = DevOps : OpsDev = Programming > Operation : Programming < Operation。
    2. 向面試官詢問該企業主攻的程式語言是哪些個?Python / Ruby / C# …?並從中推敲其背後的架構。
      我們所學的技能和工具很多時候與我們選擇的企業有關。
    3. 請面試官介紹他一天的日常。
  3. 請問較專注開發的人,要怎麼與負責 DevOps 的伙伴合作,有什麼需注意的地方?2
    1. 寫個安裝文件吧!或者透過 Pair programming 的方式一起寫組態設定工具 (CM Tools)。
    2. 藉由站立會議 (Stand-up meeting) 來即時同步變更工作,例如:
      1. 某專案加了一個新參數,不加新設定服務會跑不起來等等。
      2. 下午要變更開發環境的系統架構,並請有維運業務的同事協助,切勿一人自幹。

        「當工作上出現問題時,禁止任意判斷解決,因為工作並不是憑個人好惡去做的事情。自己擅自處理,往往會把問題擴大。」
        ー 秋山利輝,《匠人精神》

養成之路的一點小建議

  1. 記得時常更新並經營 LinkedIn 上的履歷 (Resume)。
  2. 履歷上只有提技能名稱,是沒有鑑別度的。最好分別補充靠哪些技能做過哪些事情?並達成什麼成就?
  3. 求職時〈不必完全符合資格才去應徵工作〉,加分條件就只是加分而已,不會還是可以去面試。
  4. 不要害怕面試,我們也可從多個面試官口中,推演出當下業界真正想找的人才需具備哪些技能、經歷和特質?再回頭補足所需的技藝。
  5. 可參閱〈How to transition into a career as a DevOps engineer〉3〈DevOps Engineer、SRE 徵才求職雜談〉二文。
  6. 多利用免費資源學習新技術。例如 Play on DockerPlay with Kubernetes
  7. 我們可以藉由 iFTTT 的服務蒐集來自各個地方的資訊,如 RSS、Twitter ..。 但只是看是不夠的,還需自行實作!
  8. 只靠圖形界面 (GUI) 操作系統是不夠,身為一位專業的 Infrastructure / DevOps 工程師,我們還得透過 cli 進行操作,這樣才有機會自動化!

    「做好自動化,遠離肝硬化。」
    DevOps 做好自动化,远离”肝硬化” | 全栈学苑

推薦讀物

在這 3、4 年的旅途中,這 8 本書給予凍仁不少幫助,在此與大家分享。p.43

自我成長

  1. 心態致勝:全新成功心理學 (Mindset: The New Psychology of Success) by Carol S. Dweck
  2. 學徒模式:優秀軟體開發者的養成之路 (Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman) by Dave Hoover, Adewale Oshineye
  3. 砍掉重練:30 歲開始也不遲的工作術 by 陳昭穎
  4. 3 年後,你的工作還在嗎?:掌握關鍵職能,迎向工匠、總管與行腳商人的時代! by 姚詩豪、張國洋

DevOps

  1. 鳳凰專案:看 IT 部門如何讓公司從谷底翻身的傳奇故事 (The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win) by Gene Kim, Kevin Behr, George Spafford
  2. DevOps Handbook 中文版:打造世界級技術組織的實踐指南 (The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations) by Gene Kim, Patrick Debois, John Willis, Jez Humble
  3. Ansible 建置與執行:輕鬆完成自動化管理與部署 (Ansible Up and Running: Automating Configuration Management and Deployment the Easy Way) by Lorin Hochstein, Rene Moser
  4. 软件开发本质论: 追求简约、体现价值、逐步构建 (The Nature of Software Development: Keep It Simple, Make It Valuable, Build It Piece by Piece) by Ron Jeffries

如果只能挑兩本,那凍仁會推《學徒模式》與《软件开发本质论》二書。最後,就用改編自《心態致勝》一書的金句 END 了!p.45

「不論你有什麼本事,唯有努力才能點燃那些技藝,把它們轉化爲真正的成就。」

後語

事隔一個月,總算補了這麼篇演講回顧文。雖這次的分享與先前〈從一個人的 DevOps,到一個 DevOps 的團隊〉〈IT 人一定要知道的寫作技巧〉演講相似,但凍仁卻把這次定位在 DevOps 入門和 overall。希望能給予即將踏上 DevOps 旅程的伙伴們一點忙。

緊接著凍仁得開始著手準備 1017-18 DevOpsDays Taipei 和 1221 Agile Tour Kaohsiung 的上台簡報。各位 DevOpser,我們 DevOpsDays Taipei 2019 見了!


1 許多友人一開始都把「開源 x 職涯」聽成了「開源植牙」,真讓身為講者的敝人想哭又想笑啊!
2 https://ysitd.licson.net/channel/coscup/2019-08-17#5d576b1c577cc91bbffd0b32
3 簡中譯文:〈职业生涯如何转变成 DevOps 工程师〉


資料來源:
DevOps Diagram Generator | XebiaLabs

相關連結:
COSCUP 2019 | Conference for Open Source Coders, Users, and Promoters
Infra / DevOps 的養成之路與開源工具 by Max Huang x 凍仁翔 | COSCUP 2019
Infra / DevOps 的養成之路與開源工具 by Max Huang x 凍仁翔 | HackMD
系統工程師的打怪升級之旅 / My DevOps Tour 0.1 | Speaker Deck
系統工程師的打怪升級之旅 / My DevOps Tour 0.1 | SlideShare
簡報釋出時,於 DevOps Taiwan 社團的宣傳文 | Facebook
2019/08/17 開源與職涯 - Infra 的養成之路與開源工具 by SakanaMax | Google 簡報
chusiang/books2read: To read lists from my bookcases | GitHub
[好文翻譯] 你在找的是 SRE 還是 DevOps? | KKStream


comments powered by Disqus