<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DevOps &#8211; 科技島-掌握科技新聞、科技職場最新資訊</title>
	<atom:link href="https://www.technice.com.tw/tag/devops/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.technice.com.tw</link>
	<description>專注於科技新聞、科技職場、科技知識相關資訊，包含生成式AI、人工智慧、Web 3.0、區塊鏈、科技職缺百科、生物科技、軟體發展、雲端技術等豐富內容，適合熱衷科技及從事科技專業人事第一手資訊的平台。</description>
	<lastBuildDate>Mon, 12 Jan 2026 06:55:03 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.2</generator>

<image>
	<url>https://www.technice.com.tw/wp-content/uploads/2022/12/cropped-wordpress_512x512-150x150.png</url>
	<title>DevOps &#8211; 科技島-掌握科技新聞、科技職場最新資訊</title>
	<link>https://www.technice.com.tw</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【6/22高雄場】AI 時代的後端全能實戰班：Node.js &#038; MCP【AI補助專班】 &#8211; 國立高雄師範大學 資訊教育中心</title>
		<link>https://www.technice.com.tw/course/203538/</link>
					<comments>https://www.technice.com.tw/course/203538/#respond</comments>
		
		<dc:creator><![CDATA[尤思雅]]></dc:creator>
		<pubDate>Mon, 12 Jan 2026 06:00:23 +0000</pubDate>
				<category><![CDATA[課程]]></category>
		<category><![CDATA[2026/6/22]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[MCP]]></category>
		<category><![CDATA[Node.js]]></category>
		<category><![CDATA[國立高雄師範大學 資訊教育中心]]></category>
		<category><![CDATA[大型語言模型（LLMs）]]></category>
		<category><![CDATA[軟體開發工程師]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=203538</guid>

					<description><![CDATA[<p><img width="1200" height="627" src="https://www.technice.com.tw/wp-content/uploads/2025/07/244224223_l_0.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="244224223 l 0" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2025/07/244224223_l_0.jpg 1200w, https://www.technice.com.tw/wp-content/uploads/2025/07/244224223_l_0-300x157.jpg 300w, https://www.technice.com.tw/wp-content/uploads/2025/07/244224223_l_0-1024x535.jpg 1024w, https://www.technice.com.tw/wp-content/uploads/2025/07/244224223_l_0-768x401.jpg 768w" sizes="(max-width: 1200px) 100vw, 1200px" title="【6/22高雄場】AI 時代的後端全能實戰班：Node.js &amp; MCP【AI補助專班】 - 國立高雄師範大學 資訊教育中心 2"></p>
<p>訓練日期：2026-06-22～2026-08-10上課地點：高雄市苓雅區和平一路116號上課費用：學員負擔1 &#8230;<content></p>
<p><strong>訓練日期：2026-06-22～2026-08-10</strong><br /><strong>上課地點：高雄市苓雅區和平一路116號</strong><br /><strong>上課費用：</strong>學員負擔<strong>10000元 </strong>政府負擔：<strong>67000元</strong></p>
<h2><strong>課程介紹：</strong></h2>
<p>本課程以培養學員成為後端軟體開發工程師為目標。不僅會透過實例與操作來指導學員掌握新穎框架技術，培養雲端服務開發的能力，也會搭配目前大型語言模型 (LLMs) 應用開發上的主流後端協定 (MCP) 與其主流框架技術，並同時以 DevOps 作為開發方法，讓學員熟悉主流軟體開發模式與有效團隊協作方式。本課程期望以堅實的開發能力、新穎的框架技術和響應市場的 DevOps 開發方式，來提高學員的就業競爭力，並且為企業培育堅實的數位人才。<br />1. 欲打造軟體產品、提供系統整合服務或提供軟體服務各式產業所需的雲端服務軟體開發工程師。<br />2. 本課程將結合 EXIN DevOps Foundation 國際認證來提升學員的市場就業力。</p>
<p> </p>
<p>▶符合資格之青年，於訓練期間每月發給$8,000學習獎勵金。<br />▶結訓日90日內工作並加就業保險得向勞動部申請自付額1萬元之補助。</p>
<p>			<a href="https://www.1111edu.com.tw/redirectUrl.php?marketing_no=2026011214373821" target="_blank" rel="noopener"><br />
						報名此課程<br />
					</a></p>
<h2><strong>課程內容：</strong></h2>
<h2>▲<strong>每月領</strong><strong>$8,000 x </strong><strong>證照輔導</strong><strong> x </strong><strong>就業成功再領</strong><strong>$10,000 !!</strong></h2>
<p> <strong>課程綱要/內容</strong> <strong>1.開訓典禮</strong>(1)計畫簡介(2)課程簡介(3)計畫政令及法規<strong>2.軟體開發概論</strong>(1)軟體生命週期<br />(2)敏捷、DevOps 軟體開發與維運<br />(3)需求規劃與管理<br />(4)持續整合與交付<br />(5)服務運行與維護<strong>3.DevOps 開發實務</strong>(1)GitLab 專案管理<br />(2)Git 與版本管理<br />(3)GitLab CI/CD 實作與業界實際案例<strong>4.JavaScript 程式設計實務 </strong>(1)JavaScript (ES6)<br />(2)物件導向設計與實務與業界實際案例<br />(3)函式導向設計與實務與業界實際案例<strong>5.後端開發實務與應用</strong>(1)HTTP、RESTful 與 JSON 資料結構<br />(2)NodeJS 與 Express 框架與運行<br />(3)Web 應用程式 API 設計與實作<br />(4)模組化開發與業界實際案例<br />(5)非同步 IO 與 Stream<br />(6)Redis 資料庫與服務整合業界實際案例<br />(7)PostgreSQL 資料庫與服務整合<br />(8)單元測試實務<br />(9)API 測試實務<br />(10)容器化應用程式<br />(11)微服務設計概念與應用案例分享<strong>6.專題實作</strong>(1)實作內容:社群交流服務與業界實際案例<br />(2)實作目的: 熟悉後端需求制定，並且能夠運用課堂所學之軟體概念、程式語言、框架、工具與開發流程在後端開發活動之上。<br />(3)評量標準: 軟體開發與流程掌握度 25%，需求實作完成度 75%<strong>7.MCP 應用與實戰</strong>(1)MCP 觀念與架構入門<br />(2)MCP 框架入門與實作<br />(3)MCP 應用與資料庫整合(4)應用專案實務與部署<strong>8.認證輔導與考試</strong>(1)Exin DevOps Foundation 原廠教材講授<br />(2)認證重點與釋疑<br />(3)認證考試(原教室)<strong>9.就業輔導與媒合活動</strong>(1)履歷撰寫與健檢<br />(2)面試與求職建議<br />(3)產業趨勢與職涯講座<br />(4)就業市場分析及 Q&amp;A<br />(5)就業媒合會(6)青年就業相關政令宣導<strong>課程執行單位保留調整課程內容、日程與講師之權利</strong></p>
<h2><strong>師資介紹：</strong></h2>
<p><strong>盧建成 老師</strong><strong>學歷: 國立中央大學 資訊工程學系碩士</strong><strong>經歷: 靖本行策有限公司執行長</strong><strong>         政治大學資訊科學系兼任助理教授</strong><strong>         台灣軟體工程學會理事</strong><strong>專長: 軟體工程</strong><strong>         流程改善與變革管理</strong><strong>         機器學習</strong><strong>         微服務與容器技術</strong><strong>         演進式架構設計</strong> <strong>楊琬晴老師</strong><strong>學歷: 國立中正大學 資訊工程學系碩士<br />經歷: 靖本行策有限公司顧問</strong><strong>專長: 敏捷、DevOps (DevSecOps) 流程管理與技術實踐</strong><strong>         雲端原生應用程式開發與維運</strong><strong>         雲端架構設計、雲端治理、FinOps</strong> <strong>李文廷老師</strong><strong>學歷: 國立中央大學 資訊工程學系博士</strong><strong>經歷: 國立高雄師範大學科技學院軟體工程與管理學系教授</strong><strong>         兼系主任</strong><strong>         國立高雄師範大學資訊教育中心主任<br />專長: 軟體工程</strong><strong>         軟體測試</strong><strong>         敏捷方法、流程管理、DevOps</strong><strong>         微服務、Web及容器技術</strong><strong>         深度學習及人工智慧</strong><strong>         服務導向架構與運算</strong><strong>         物件導向設計與實作</strong><strong>         大數據分析</strong> <strong>李信杰老師</strong><strong>學歷: 國立中央大學 資訊工程學系博士</strong><strong>經歷: 國立成功大學資訊工程學系副教授</strong><strong>         國立成功大學計算機與網路中心副教授<br />         國立成功大學計算機與網路中心資訊系統發展組組長</strong><strong>專長: 軟體工程</strong><strong>         軟體測試</strong><strong>         軟體設計</strong><strong>         Web及容器技術</strong><strong>         物件導向設計與實作</strong>             <strong>陳立偉老師</strong><strong>學歷: 國立臺灣科技大學 管理學院資訊管理學系博士 </strong><strong>經歷: 國立高雄師範大學軟體工程與管理學系助理教授</strong><strong>         國立高雄師範大學資訊教育中心組長</strong><strong>         台灣健康資訊交換第七層協定協會理事</strong><strong>專長: 資料分析技術</strong><strong>         軟體工程</strong><strong>         軟體度量與分析</strong><strong>         電子化服務創新</strong><strong>         服務科學</strong><strong>         資訊科技服務管理</strong><br />
			<a href="https://www.1111edu.com.tw/redirectUrl.php?marketing_no=2026011214373821" target="_blank" rel="noopener"><br />
						報名此課程<br />
					</a></p>
<p><strong>備註：</strong><br />詳細內容及報名需知，請點選報名後見協會網站內容</p>
<h2>[elementor-template id="128291"]</h2>
<p></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/course/203538/">【6/22高雄場】AI 時代的後端全能實戰班：Node.js &#038; MCP【AI補助專班】 &#8211; 國立高雄師範大學 資訊教育中心</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/course/203538/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>DevOps開發工程師　開發運維一體兼顧</title>
		<link>https://www.technice.com.tw/careers/114617/</link>
					<comments>https://www.technice.com.tw/careers/114617/#respond</comments>
		
		<dc:creator><![CDATA[蔡哲明]]></dc:creator>
		<pubDate>Tue, 28 May 2024 05:04:05 +0000</pubDate>
				<category><![CDATA[職缺百科]]></category>
		<category><![CDATA[職人講堂]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[開發工程師]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=114617</guid>

					<description><![CDATA[<p><img width="1024" height="683" src="https://www.technice.com.tw/wp-content/uploads/2024/05/html-system-website-concept_23-2150376732-1-1024x683-1.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="html system website concept 23 2150376732 1 1024x683 1" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2024/05/html-system-website-concept_23-2150376732-1-1024x683-1.jpg 1024w, https://www.technice.com.tw/wp-content/uploads/2024/05/html-system-website-concept_23-2150376732-1-1024x683-1-300x200.jpg 300w, https://www.technice.com.tw/wp-content/uploads/2024/05/html-system-website-concept_23-2150376732-1-1024x683-1-768x512.jpg 768w" sizes="(max-width: 1024px) 100vw, 1024px" title="DevOps開發工程師　開發運維一體兼顧 3"></p>
<p>DevOps開發工程師主要建構與佈署自動化「軟體交付」和「架構變更」的流程，目的能夠打造、測試、發布軟體優化，朝向快捷、頻繁和穩定面向，DevOps是身兼「軟體開發」和「IT運維技術」的雙重角色。<content><!-- wp:paragraph --></p>
<p><strong>記者／蔡哲明</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><a href="https://www.technice.com.tw/?s=DevOps%E9%96%8B%E7%99%BC%E5%B7%A5%E7%A8%8B%E5%B8%AB" target="_blank" data-type="link" data-id="https://www.technice.com.tw/?s=DevOps%E9%96%8B%E7%99%BC%E5%B7%A5%E7%A8%8B%E5%B8%AB" rel="noreferrer noopener">DevOps開發工程師</a>主要建構與佈署自動化「軟體交付」和「架構變更」的流程，目的能夠打造、測試、發布軟體優化，朝向快捷、頻繁和穩定面向，DevOps是身兼「軟體開發」和「IT運維技術」的雙重角色。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"id":94077,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2024/01/html-system-website-concept_23-2150376732-1-1024x683.jpg" alt="【學長姊帶路】蝦皮 / 亞麻 / SiFive / 熊貓 軟體工程師 面試分享" class="wp-image-94077"/><figcaption class="wp-element-caption">圖片來源:取自123RF</figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p><strong>目錄</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:stackable/table-of-contents {"uniqueId":"6b88538","headings":[{"content":"一、DevOps開發工程師專業與技能","level":2,"anchor":"一、-dev-ops開發工程師專業與技能-1","clientId":"48485285-a5f9-4d66-a8ab-7ccb9d5a7620","tag":2},{"content":"二、日常工作內容","level":2,"anchor":"二、日常工作內容-1","clientId":"b6680d66-05a5-4418-8005-615ccf0d7941","tag":2},{"content":"三、相關進修與證照","level":2,"anchor":"三、相關進修與證照-1","clientId":"b05c9635-728f-40ae-bd01-0e66e238377e","tag":2},{"content":"四、薪資和專業成長","level":2,"anchor":"四、薪資和專業成長-1","clientId":"ac191ee8-caa1-4a62-ba8f-c4b34c672bf9","tag":2},{"content":"五、未來職涯發展","level":2,"anchor":"五、未來職涯發展-1","clientId":"ab43d457-f375-4865-b3dd-58c03c411c66","tag":2}]} --></p>
<nav class="wp-block-stackable-table-of-contents stk-block-table-of-contents stk-block stk-6b88538" data-block-id="6b88538">
<ul class="stk-table-of-contents__table">
<li><a href="#一、-dev-ops開發工程師專業與技能-1">一、DevOps開發工程師專業與技能</a></li>
<li><a href="#二、日常工作內容-1">二、日常工作內容</a></li>
<li><a href="#三、相關進修與證照-1">三、相關進修與證照</a></li>
<li><a href="#四、薪資和專業成長-1">四、薪資和專業成長</a></li>
<li><a href="#五、未來職涯發展-1">五、未來職涯發展</a></li>
</ul>
</nav>
<p><!-- /wp:stackable/table-of-contents --></p>
<p><!-- wp:heading --></p>
<h2 class="wp-block-heading" id="一、-dev-ops開發工程師專業與技能-1"><strong>一、DevOps開發工程師專業與技能</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><strong>1.</strong><strong>需要具備哪些專業</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師的學歷背景通常是資訊技術、軟體工程以及計算機科學等領域學位，在工作上需要處理分散式系統的建立和開發，運行各種自動化工具減少人工操作並提高工作效率。另外，他們也會研究並導入新的軟體技術，轉化整體工作的效率進程，DevOps開發工程師需要具備例如持續整合與持續部署（CI/CD）。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><strong>2.</strong><strong>建議具備技術能力</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師必須具有以下技能，實現高效的軟體交付流程，例如熟悉常見的持續整合與持續部署工具（Jenkins、GitLab CI）、容器化技術（Docker、Kubernetes）、程式化設計（Python、Bash）。此外，具備研究並導入新技術以提升工作效率的能力，也是不可或缺的職能技術。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 class="wp-block-heading" id="二、日常工作內容-1"><strong>二、日常工作內容</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><strong>1. </strong><strong>六大</strong><strong>職能目標</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師提高軟體運作的速度和質量，同時保持系統的穩定性和安全性，例如自動化、持續整合與持續交付（CI/CD）、基礎設施即代碼（IaC）、監控與日誌管理、協作與溝通、安全性，展現開發和維護自動化工具、設計和實施CI/CD管道、使用代碼來管理和配置基礎設施、建立和維護系統監控和日誌管理、促進開發團隊與運維團隊之間的協作和溝通、整合安全性措施到開發和運維流程中。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><strong>2.</strong><strong>技術研討進修</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師透過提升自己的專業能力，適應不斷變化的資訊環境，包含版本控制系統、持續整合與持續交付工具、容器化技術、基礎設施即代碼工具、雲端平台、監控和日誌管理、自動化測試、安全性、敏捷開發方法、溝通與協作工具，透過以上技術研討進修。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 class="wp-block-heading" id="三、相關進修與證照-1"><strong>三、相關進修與證照</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師也有各種進修方式，以此提升專業知識和市場競爭，例如透過線上課程，Coursera、Udemy、edX等平台提供的DevOps課程，inux Academy和A Cloud Guru涵蓋基礎到進階內容。利用實體課程，利用大學或技術學院的計算機科學與工程專業課程，或是專業培訓機構提供培訓課程。掌握自學資源，GitHub上的免費資源和社區分享，或是技術論壇（Stack Overflow）以及YouTube頻道。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 class="wp-block-heading" id="四、薪資和專業成長-1"><strong>四、薪資和專業成長</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><strong>1.</strong><strong>學士學位</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>月薪約60,000 - 80,000元。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><strong>2.</strong><strong>碩士學位</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>月薪約70,000 - 90,000元</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><strong>3.</strong><strong>博士學位</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>月薪約80,000 - 100,000元</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 class="wp-block-heading" id="五、未來職涯發展-1"><strong>五、未來職涯發展</strong></h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p><strong>1. </strong><strong>六大職涯發展</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師的未來職涯發展具有前景，可在技能組合和實踐經驗上來做選擇，包含高級DevOps工程師或架構師、技術領導或管理職位、雲端計算專家、安全專家、諮詢顧問、SRE（Site Reliability Engineer）等，在優化開發流程的市場上選擇。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><strong>2.技術研討進修　　</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>DevOps開發工程師也可以此作為跳板，由於專注於自動化工具和流程的開發，未來可朝自動化工程師以及數據工程師角色挑戰，能夠展現自動化工具和流程化能力，設計和管理數據基礎進行大數據分析。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><a href="https://www.technice.com.tw/techjob-wiki/">想了解更多的科技業職缺嗎？由科技島與1111人力銀行攜手合作、透視上百種科技工作內容與薪資行情的「職缺百科」正等著您前往探索！</a></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>討論區：<a href="https://www.1111.com.tw/1000w/fanshome/discussionDetail.asp?d0=140805" target="_blank" rel="noreferrer noopener">https://www.1111.com.tw/1000w/fanshome/discussionDetail.asp?d0=140805</a></p>
<p><!-- /wp:paragraph --></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/careers/114617/">DevOps開發工程師　開發運維一體兼顧</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/careers/114617/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>原來程式碼品質也可以被檢測：初探 SonarQube</title>
		<link>https://www.technice.com.tw/experience/20265/</link>
					<comments>https://www.technice.com.tw/experience/20265/#respond</comments>
		
		<dc:creator><![CDATA[科編推薦]]></dc:creator>
		<pubDate>Mon, 26 Sep 2022 09:13:34 +0000</pubDate>
				<category><![CDATA[產業]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[SonarQube]]></category>
		<category><![CDATA[工作甘苦談]]></category>
		<category><![CDATA[工程師]]></category>
		<category><![CDATA[科技業]]></category>
		<category><![CDATA[程式碼]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=20265</guid>

					<description><![CDATA[<p><img width="1200" height="627" src="https://www.technice.com.tw/wp-content/uploads/2022/09/image-5-2.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="image 5 2" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2022/09/image-5-2.png 1200w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-5-2-300x157.png 300w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-5-2-1024x535.png 1024w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-5-2-768x401.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" title="原來程式碼品質也可以被檢測：初探 SonarQube 4"></p>
<p>筆者最近在自學 DevOps 的過程中，發現除了要了解基本的 CI/CD 流程外，更重要的是了解可以利用哪些工具來輔助整個 CI 的流程，今天筆者要來介紹一個好用的程式碼檢測平台：SonarQube。<content><!-- wp:image {"id":20280,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/image-5-2-1024x535.png" alt="" class="wp-image-20280"/><figcaption>Photo by <a href="https://unsplash.com/@xps" target="_blank" rel="noreferrer noopener">xps</a> on <a href="https://unsplash.com/" target="_blank" rel="noreferrer noopener">Unsplash.com</a></figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>文／<a href="https://medium.com/starbugs/%E5%8E%9F%E4%BE%86%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%93%81%E8%B3%AA%E4%B9%9F%E5%8F%AF%E4%BB%A5%E8%A2%AB%E6%AA%A2%E6%B8%AC-%E5%88%9D%E6%8E%A2-sonarqube-14e99687806e">Andy Chen</a></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 id="02b1">前言</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="7c2a">筆者最近在自學 DevOps 的過程中，發現除了要了解基本的 CI/CD 流程外，更重要的是了解可以利用哪些工具來輔助整個 CI 的流程，今天筆者要來介紹一個好用的程式碼檢測平台：<a href="https://www.sonarqube.org/" rel="noreferrer noopener" target="_blank">SonarQube</a>。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p id="b883">雖然在現今的開發很多時候都會藉由 code review 搭配各式的 linter 進行開發，但百密總有一疏，這時候就可以透過 SonarQube 幫助開發者檢查一些潛在的 bug，這些 bug 有可能在開發時 linter 並沒有噴錯，而且在 code review 時可能也不小心漏看了，假如可以在 CI 的流程中加上 SonarQube 來掃描整個 codebase，這時候就可以讓整個專案的程式碼有更高的品質。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 id="60a6">什麼是 SonarQube</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="048b">SonarQube 是一套基於 Java 開發的程式碼檢測以及品質管理平台，由於這套工具是用 Java 開發的關係，所以讀者要先記得去安裝 Java Development Kit(JDK)，這樣後續才能順利的啟動 SonarQube。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p id="d9c7">SonarQube 也提供了不少的服務像是：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:list --></p>
<ul>
<li>網頁化操作(會在下一段內容進行說明)</li>
<li>支援非常多種程式語言的分析檢測</li>
<li>提供程式碼重複性、潛在 bug、測試覆蓋率等等相關報告</li>
<li>提供自動化分析並且結合主流的 CI 工具</li>
<li>提供程式碼改善建議</li>
<li>整合 JIRA、Mantis、LDAP、Fortify 等外部工具</li>
<li>提供歷史紀錄以利於後續追蹤</li>
</ul>
<p><!-- /wp:list --></p>
<p><!-- wp:paragraph --></p>
<p id="ce69">由於 SonarQube 提供太多種服務了，這裡筆者只列出幾點個人覺得最值得提出來與讀者說明的服務，有興趣的讀者可以再自行去官網上面進行相關的資料閱讀。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3 id="f35f">啟動 SonarQube</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="ef0e">由於筆者是使用 mac 系統，因此這邊筆者以 mac 的操作方式進行介紹，首先可以在終端機中進入 <code>/bin/macosx-unversal-64</code> 的資料夾，並下 <code>./sonar.sh start</code> 這個指令啟動 SonarQube 的服務。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20266,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/1-9-1024x64.png" alt="" class="wp-image-20266"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>啟動服務後可以在瀏覽器打上 <code>localhost:9000</code> 即可開啟 SonarQube 的網頁，預設的帳號及密碼都是 <code>admin</code> ，輸入後即可在 local 端開始使用 SonarQube 提供的檢測服務嘍。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3 id="d74c">SonarQube 操作說明</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="1cf6">登入後就可以開始進行 Project 創建了，這邊的 Project 主要是方便開發者可以進行專案品質的控管，創立好 Project 才可以開始針對想要檢測的 repository 進行檢測。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20267,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/2-7-1024x624.png" alt="" class="wp-image-20267"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>我們也可以看到 SonarQube 整合了非常多用來創建專案的主流工具例如 GitHub、Jira 等等，假如讀者本身是有在使用這些工具進行專案的管理也可以直接整合現有的架構，這邊筆者為了方便介紹所以選擇手動創建 Project。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20268,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/3-6-1024x542.png" alt="" class="wp-image-20268"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>建立好 Project 後可以看到 SonarQube 也支援許多主流平台的 CI 機制，由於筆者也是為了方便介紹所以選擇手動測試 local repository。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20269,"width":832,"height":442,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-full is-resized"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/4-6.png" alt="" class="wp-image-20269" width="832" height="442"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>想要進行分析檢測之前還需要產生一組 private token，利用這組 token 我們在之後進行檢測時可以確保檢測的結果會擺在這個 project 內。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20270,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/5-2-1024x544.png" alt="" class="wp-image-20270"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>之後就可以選擇要檢測的程式碼是屬於哪種語言以及目前電腦的 OS，都選擇完後可以去官網上下載最重要的分析工具 <a href="https://docs.sonarqube.org/latest/analysis/scan/sonarscanner/" target="_blank" rel="noreferrer noopener">SonarScanner</a>，這套 scanner 就是負責檢測程式碼的工具。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20271,"width":839,"height":446,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-full is-resized"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/6-2.png" alt="" class="wp-image-20271" width="839" height="446"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>下載完後就可以複製下方的指令進行程式碼的檢測啦！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20272,"width":838,"height":619,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-full is-resized"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/7-2.png" alt="" class="wp-image-20272" width="838" height="619"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3 id="eefb">SonarScanner 檢測結果</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="5737">在上面的步驟檢測完後，我們回到 SonarQube 的平台就可以看到剛剛建立的 project 已經有了初步的檢測報告，假如程式碼都沒有什麼潛在的問題就可以看到報告會是綠色 Passed 的狀態。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"id":20273,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/8-1-1024x498.png" alt="" class="wp-image-20273"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>但假如程式碼有潛在的問題，這時候報告就會出現紅色的 Failed 並且指出有幾個 bug 產生。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"id":20274,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/9-1-1024x546.png" alt="" class="wp-image-20274"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>接著點擊 issues tab 就可以看到目前潛在的 bug 是從哪個檔案的哪一行中產生。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"id":20275,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/10-1-1024x545.png" alt="" class="wp-image-20275"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p id="a055">再點進去後就會看到潛在的 bug 的錯誤訊息，我們可以發現 array 的長度一定會是大於等於 0 可是我這邊卻寫了小於 0，所以這個 if 判斷條件永遠都不會通過。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20276,"sizeSlug":"large","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-large"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/11-1-1024x176.png" alt="" class="wp-image-20276"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>但我們回到程式碼後可以發現即便我們有安裝 linter 也不會檢查出這種看起來就是有問題的寫法，因為 linter 通常都是在檢查語法上的錯誤，這時候 SonarScanner 就幫助了我們可以進行更深入的檢查。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"align":"center","id":20277,"width":844,"height":233,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image aligncenter size-full is-resized"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/12-1.png" alt="" class="wp-image-20277" width="844" height="233"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading {"level":3} --></p>
<h3 id="d33e">SonarScanner 設定檔</h3>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="d12c">其實 SonarScanner 也可以進行一些客製化的設定檔，這時候就需要建立一個叫 <code>sonar-project.properties</code> 的檔案，這份檔案裡面可以設定一些 SonarScanner 提供的 analysis parameter，由於這些設定參數實在是太多了，所以筆者不會一一介紹，有興趣的讀者可以參考<a href="https://docs.sonarqube.org/latest/analysis/analysis-parameters/" target="_blank" rel="noreferrer noopener">官網</a>，裡面有所有參數的詳細介紹，整體寫法會像下圖這樣：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"id":20278,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image size-full"><img src="https://www.technice.com.tw/wp-content/uploads/2022/09/13-1.png" alt="" class="wp-image-20278"/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading --></p>
<h2 id="5c2b">小結</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p id="1fd6">這次介紹了 SonarQube 這套程式碼檢測平台，由於筆者本身是一位前端工程師，因此只會利用&nbsp;<a href="https://eslint.org/" rel="noreferrer noopener" target="_blank">ESLint</a>&nbsp;或者&nbsp;<a href="https://palantir.github.io/tslint/" rel="noreferrer noopener" target="_blank">TSLint</a>&nbsp;進行程式碼檢查，但程式碼還會有一些潛在的 bug 可能是這些 linter 無法檢查出來的，這時候 SonarQube 就起了一個很大的作用，幫助我們在開發時可以進行更深入的解析，假如讀者未來有要做一些 CI 流程的話，不妨也可以把 SonarQube 考慮進去喔。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2 id="82e4">Reference</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:list --></p>
<ul>
<li><a href="https://ithelp.ithome.com.tw/articles/10215842" rel="noreferrer noopener" target="_blank">開源程式碼檢測平台：SonarQube</a></li>
<li><a href="https://docs.sonarqube.org/latest/" rel="noreferrer noopener" target="_blank">SonarQube docs</a></li>
</ul>
<p><!-- /wp:list --></p>
<p><!-- wp:pullquote --></p>
<figure class="wp-block-pullquote">
<blockquote>
<p>本文由 <a href="https://w5151381guy.medium.com/">Andy Chen</a> 授權轉載，<a href="https://medium.com/starbugs/%E5%8E%9F%E4%BE%86%E7%A8%8B%E5%BC%8F%E7%A2%BC%E5%93%81%E8%B3%AA%E4%B9%9F%E5%8F%AF%E4%BB%A5%E8%A2%AB%E6%AA%A2%E6%B8%AC-%E5%88%9D%E6%8E%A2-sonarqube-14e99687806e">原文連結</a></p>
</blockquote>
</figure>
<p><!-- /wp:pullquote --></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/experience/20265/">原來程式碼品質也可以被檢測：初探 SonarQube</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/experience/20265/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>後端工程師轉為DevOps的辛路歷程</title>
		<link>https://www.technice.com.tw/experience/5874/</link>
					<comments>https://www.technice.com.tw/experience/5874/#respond</comments>
		
		<dc:creator><![CDATA[科編推薦]]></dc:creator>
		<pubDate>Tue, 05 Jul 2022 07:20:30 +0000</pubDate>
				<category><![CDATA[產業]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[工作甘苦談]]></category>
		<category><![CDATA[工程師]]></category>
		<category><![CDATA[後端工程師]]></category>
		<category><![CDATA[科技業]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=5874</guid>

					<description><![CDATA[<p><img width="695" height="518" src="https://www.technice.com.tw/wp-content/uploads/2022/07/螢幕擷取畫面-2022-07-05-150509.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="螢幕擷取畫面 2022 07 05 150509" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2022/07/螢幕擷取畫面-2022-07-05-150509.png 695w, https://www.technice.com.tw/wp-content/uploads/2022/07/螢幕擷取畫面-2022-07-05-150509-300x224.png 300w" sizes="(max-width: 695px) 100vw, 695px" title="後端工程師轉為DevOps的辛路歷程 5"></p>
<p>寫程式的機會少了非常多。如果你是很喜歡寫程式的人，我會建議繼續待在後端，成為DevOps後，我大概只剩寫IaC(Infrastructure as Code)的時候還有在寫Code了。<content><!-- wp:image {"id":5875,"width":521,"height":389,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image size-full is-resized"><img src="https://www.technice.com.tw/wp-content/uploads/2022/07/螢幕擷取畫面-2022-07-05-150509.png" alt="" class="wp-image-5875" width="521" height="389" /><figcaption>Photo by&nbsp;<a href="https://unsplash.com/@brett_jordan?utm_source=medium&amp;utm_medium=referral" target="_blank" rel="noreferrer noopener">Brett Jordan</a>&nbsp;on&nbsp;<a href="https://unsplash.com/?utm_source=medium&amp;utm_medium=referral" target="_blank" rel="noreferrer noopener">Unsplash</a></figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>文／<a href="https://barry-cheng.medium.com/%E5%BE%8C%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%AB%E8%BD%89%E7%82%BAdevops%E7%9A%84%E8%BE%9B%E8%B7%AF%E6%AD%B7%E7%A8%8B-86e5caea62d2">身為DevOps工程師</a></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>前陣子發文後，有人來問說:</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>從一個後端工程師轉換到DevOps會不會很困難?有建議要做什麼準備嗎?</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:paragraph --></p>
<p>其實關於這個問題，我也資歷尚淺。但我從後端轉過來DevOps後，其實也過了半年多，今天就來分享一下我過去的經驗。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>轉職前的我</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>在之前做為後端工程師的時候，我隸屬於名為Infra的部門。<br />有些人可能會覺得納悶，Infra不是算IT部門嗎? 怎麼變成後端了。其實我待的部門是負責開發PaaS的，任務主要是開發一個整合許多Infrastructure，所以公司內部稱這個Team為Infra。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>而那些許多的Infrastructure，其中一個就剛好是目前應該沒有DevOps不知道的平台 — k8s(Kubernetes)。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph {"fontSize":"medium"} --></p>
<p class="has-medium-font-size"><em>向我們偉大的舵致敬!</em></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"id":5876,"width":515,"height":341,"sizeSlug":"full","linkDestination":"none"} --></p>
<figure class="wp-block-image size-full is-resized"><img src="https://www.technice.com.tw/wp-content/uploads/2022/07/螢幕擷取畫面-2022-07-05-150527.png" alt="" class="wp-image-5876" width="515" height="341" /><figcaption>Photo by&nbsp;<a href="https://unsplash.com/@maxweisbecker?utm_source=medium&amp;utm_medium=referral" target="_blank" rel="noreferrer noopener">Maximilian Weisbecker</a>&nbsp;on&nbsp;<a href="https://unsplash.com/?utm_source=medium&amp;utm_medium=referral" target="_blank" rel="noreferrer noopener">Unsplash</a></figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>也因為待的是新創公司，分工不像大公司那麼細。其實在做後端時，就有在幫忙實作Team的CI/CD Pipeline。<br />像是 GitLab CI。還有幫忙做公司的Installer用到了 ansible, helm這種部署相關的工具。另外還有ELK以及監控很常用到的prometheus, grafana。<br />也因為這些經驗的關係，其實也讓我當初找工作的時候，一些獵人頭或是公司看完我的履歷會問我的第一個問題是:你是在做後端的嗎?看起來好像比較像DevOps。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>使用到的技術，大概是以下幾樣:</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:list {"ordered":true} --></p>
<ol>
<li>Django (Python)</li>
<li>MySQL</li>
<li>Kubernetes, OpenStack, Slurm</li>
<li>Ansible</li>
<li>ELK, Prometheus, Grafana</li>
<li>GitLab</li>
</ol>
<p><!-- /wp:list --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>轉職後的我</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>轉職後，我到了雲端代理商上班，其實雖然名為DevOps 工程師，但有非常多的時間是在寫文件、寫slide、陪著業務去見客戶、做教育訓練。<br />比起工程師感覺更像是一個顧問的職位。因為成為DevOps後，只有在這邊待過，如果有其他人有不同的情境歡迎分享一下。我會很感激XD</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>當初會選擇到這間公司，最大的主因是覺得公有雲的技術越來越熱門了，如果到公有雲代理商上班，應該是可以學到最多的吧?</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>使用到的技術，大概是以下幾樣:</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:list {"ordered":true} --></p>
<ol>
<li>GitLab, AWS CodeCommit</li>
<li>IaC — Terraform, Pulumi</li>
<li>Kubernetes</li>
<li>AWS (EC2, EKS, ECS, Lambda, CloudFront…)</li>
<li>GCP (GCE, GKE, BigQuery…)</li>
<li>Snyk</li>
<li>如何與客戶交流 (這算是技術?)</li>
</ol>
<p><!-- /wp:list --></p>
<p><!-- wp:paragraph --></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>總結一下轉職後的改變</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>寫程式的機會少了非常多。如果你是很喜歡寫程式的人，我會建議繼續待在後端，成為DevOps後，我大概只剩寫IaC(Infrastructure as Code)的時候還有在寫Code了。 謎之音: IaC算寫Code?</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>可能是公司的關係，每一間公司對於希望DevOps要做的事情似乎都不太一樣，現在出去動嘴巴的機會增加非常多，心態上也會開始擔心自己會不會慢慢地有技術成長不夠的情況。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>使用的技術廣度增加了，但深度大多停留在做個POC就結束了，感覺已經進入了跟後端完全不同的路線。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>建議要做什麼準備嗎?</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>我會建議k8s應該會是無法避免的基本功，但其實k8s也蠻廣泛的，如果覺得準備起來有點沒方向，可以考慮先去考一張CKA證照。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>如果k8s會了，再來應該是CI/CD Pipeline建議要會至少一種，我覺得GitLab是一個蠻好的切入點，了解一下怎麼寫 gitlab-ci.yml的寫法，gitlab runner是什麼?</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>最後可以去學一下IaC，這邊建議可以學Terraform，毛遂自薦一下，歡迎參考我之前寫的教材(身為DevOps工程師，會Terraform也是很正常的)。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:pullquote --></p>
<figure class="wp-block-pullquote">
<blockquote>
<p>本文來自 <a href="https://barry-cheng.medium.com/">身為DevOps工程師</a> 授權轉載，原文<a href="https://barry-cheng.medium.com/%E5%BE%8C%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%B8%AB%E8%BD%89%E7%82%BAdevops%E7%9A%84%E8%BE%9B%E8%B7%AF%E6%AD%B7%E7%A8%8B-86e5caea62d2">連結</a></p>
</blockquote>
</figure>
<p><!-- /wp:pullquote --></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/experience/5874/">後端工程師轉為DevOps的辛路歷程</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/experience/5874/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
