平台工程師技能指南
根據CNCF 2024年度調查,96%的組織正在使用或評估Kubernetes [1],但僅有34%表示擁有足夠的平台工程人才來有效運作。技能差距並非在於表層的工具知識——而在於能否將容器編排、基礎設施自動化、可觀測性架構和開發者體驗設計整合成一個內聚的內部平台。本指南列出區分能建構生產等級內部開發者平台的平台工程師與僅會設定YAML檔案者的具體硬技能與軟技能。
重點摘要
- 硬技能聚焦四大領域:容器編排、基礎設施即程式碼(IaC)、可觀測性,以及開發者平台工具
- Kubernetes(CKA等級深度)和Terraform是最普遍要求的兩項技術技能
- 在資深層級,產品思維、跨團隊溝通及文件撰寫等軟技能與技術深度同等重要
- CKA、CKS及雲端架構師認證能帶來可量化的職涯加速效果
- 技能發展應循序漸進:操作 → 自動化 → 架構 → 產品化
硬技能
1. Kubernetes管理與架構
Kubernetes是現代平台工程的基石。生產級知識意味著理解控制平面(kube-apiserver、etcd、scheduler、controller-manager)、工作節點元件(kubelet、kube-proxy、容器執行環境)及網路模型(Calico、Cilium、Flannel等CNI外掛)。平台工程師須設定RBAC策略、資源配額、限制範圍、網路策略和Pod安全標準。進階技能包括使用Operator SDK撰寫自定義Operator、定義Custom Resource Definition(CRD)、設定准入Webhook,以及使用Loft vCluster或Admiralty等工具管理多叢集聯邦。
2. 基礎設施即程式碼(Terraform、Pulumi、Crossplane)
IaC已是不可妥協的必備技能。根據HashiCorp 2024年雲端策略調查,Terraform以65%的市佔率居於主導地位 [2]。平台工程師需要撰寫具備適當狀態管理(遠端後端、狀態鎖定)、多環境部署的工作空間策略及模組組合模式的生產級模組。進階實踐者使用Crossplane實現Kubernetes原生基礎設施佈建,或以Pulumi使用通用程式語言進行IaC開發。理解Terraform提供者模型、漂移偵測、匯入工作流程及CI/CD整合(Atlantis、Spacelift、Terraform Cloud),是區分中階與資深工程師的關鍵。
3. CI/CD管線架構
平台工程師設計部署管線,而非僅處理個別作業。這包括ArgoCD的GitOps式Kubernetes部署、GitHub Actions或GitLab CI的建置自動化,以及允許自助式部署設定的管線即程式碼模式。進階能力包含實作漸進式交付(金絲雀部署、藍綠部署、A/B測試)、將安全掃描整合進管線(SAST、DAST、容器掃描)、管理成品倉庫(Harbor、ECR、GCR),以及設計跨開發、預備和生產環境的多階段推進工作流程。
4. 可觀測性與監控
將可觀測性內建於平台中——而非事故後才補強——是平台工程的核心職能。相關技能包括實作三大支柱:指標(Prometheus、Thanos用於長期儲存)、日誌(Loki、ELK Stack、Fluentd/Fluent Bit)和追蹤(Jaeger、Tempo、OpenTelemetry)。平台工程師設計以SLO為基礎的告警,以錯誤預算驅動的通知取代嘈雜的閾值告警。進階技能包括OpenTelemetry自動埋點、自定義指標匯出器、為開發者自助服務設計Grafana儀表板,以及實作RED(速率、錯誤、延遲)和USE(利用率、飽和度、錯誤)方法論。
5. 雲端平台專業能力(AWS、GCP、Azure)
至少須深入掌握一家主要雲端供應商,並對第二家有實務了解。AWS方面:EKS、IAM、VPC網路、S3、Lambda、CloudWatch、Secrets Manager及成本管理工具。GCP方面:GKE、Cloud IAM、VPC、Cloud Run、Cloud Monitoring和Workload Identity。平台工程師須理解雲端網路(VPN、Direct Connect/Interconnect、轉接閘道)、身分聯邦和雲端原生安全服務。使用Crossplane或跨供應商Terraform模組進行多雲抽象化越來越受重視。
6. 服務網格與網路
服務網格技術(Istio、Linkerd、Cilium Service Mesh)在網路層提供mTLS、流量管理和可觀測性。平台工程師設定入口控制器(NGINX、Traefik、Envoy Gateway)、為金絲雀部署實作流量分配、管理憑證輪替,並設計服務間認證策略。理解基於eBPF的網路(Cilium)日益重要,因為它取代了kube-proxy並提供無需邊車的網路策略執行。
7. 安全與合規自動化
平台安全涵蓋供應鏈安全(SLSA框架、Sigstore成品簽章、Syft產生SBOM)、執行時期安全(Falco、seccomp設定檔、AppArmor)和策略即程式碼(OPA/Gatekeeper、Kyverno)。平台工程師實作秘密管理(HashiCorp Vault、External Secrets Operator)、容器映像掃描(Trivy、Grype)以及SOC 2、HIPAA和PCI-DSS框架的合規自動化。在資深層級,理解零信任網路原則並透過服務網格和網路策略實作至關重要。
8. 開發者平台工具
建構內部開發者平台需要熟悉開發者入口框架(Spotify的Backstage、Port、Cortex、OpsLevel)、服務目錄設計、黃金路徑範本建立及API優先架構。相關技能包括設計自助工作流程(Backstage Scaffolder、自定義Kubernetes Operator用於資源佈建)、建立內部文件系統,以及將平台元件整合成統一的開發者體驗。
9. GitOps與設定管理
GitOps原則——宣告式基礎設施、版本控制的期望狀態、自動化調和——是平台工程的根基。須深入掌握ArgoCD(ApplicationSet、App of Apps模式、多叢集管理)或Flux(Kustomization控制器、Helm控制器、映像自動化)。理解基礎設施的Git分支策略(主幹式開發 vs. 環境分支)、Kustomize覆蓋模式和Helm Chart開發,構成此技能領域的完整面貌。
10. 腳本撰寫與自動化
平台工程師撰寫大量自動化程式碼,主要使用Python、Go和Bash。Go是Kubernetes生態系統的語言——撰寫自定義控制器、Operator和CLI工具需要Go的熟練度。Python處理自動化腳本、資料處理和工具整合。Bash腳本涵蓋營運自動化和管線步驟。理解API設計(REST、gRPC)以建構平台服務,以及為內部工具使用者開發SDK,越來越被期望。
軟技能
1. 產品思維
平台工程就是內部產品開發。能夠定義平台路線圖、進行開發者調查、分析採用指標、根據開發者影響力(而非技術興趣)排定功能優先順序,並做出自建或採購決策——這些能力將資深平台工程師與基礎設施操作人員區分開來。具體而言,包括撰寫產品規格書、對內部開發者進行使用者訪談,以及追蹤平台KPI(DORA指標、開發者滿意度分數、自助服務採用率)。
2. 技術溝通與文件撰寫
平台工程師為其他工程師建構平台。清晰的文件——架構決策紀錄(ADR)、操作手冊、API文件、入門指南和黃金路徑教學——是平台價值的直接乘數。在中階及以上層級,撰寫能獲得組織認可的RFC、向工程領導層簡報技術策略,以及建立內部培訓教材的能力至關重要。
3. 跨職能協作
平台服務多個具有競爭優先順序的團隊。平台工程師與產品團隊協調需求、與安全團隊配合合規要求、與SRE團隊協調可靠性標準,並向財務部門說明基礎設施成本。這需要利害關係人管理、衝突化解,以及對損害平台完整性的請求說不的能力。
4. 系統思維
理解平台某一元件的變更如何影響整體系統至關重要。這包括建模依賴關係、預測故障級聯、設計優雅降級,並維護複雜分散式架構的心智模型。系統思考者找出根本原因,而非僅治療症狀。
5. 事故管理與溝通
平台工程師經常擔任生產事故的技術負責人。相關技能包括結構化的事故指揮(遵循PagerDuty事故回應方法論等框架)、壓力下的清晰溝通、無責事後檢討的引導,以及撰寫以行動項目為導向的事後報告。
6. 指導與知識分享
資深平台工程師透過教導他人擴大自身影響力。包括與初階工程師配對編程、主持架構審查、在內部技術分享會上簡報,以及建立自主學習教材。企業越來越重視資深候選人提升團隊能力而非僅個人產出的能力。
證照
| 證照 | 發證機構 | 重點 | 難度 | 影響力 |
|---|---|---|---|---|
| CKA(認證Kubernetes管理員) | CNCF / Linux Foundation | 叢集管理、疑難排解 | 中高 | 高——最多人要求的證照 |
| CKS(認證Kubernetes安全專家) | CNCF / Linux Foundation | 供應鏈、執行時期、網路安全 | 高 | 高——安全差異化因素 |
| CKAD(認證Kubernetes應用程式開發人員) | CNCF / Linux Foundation | 應用程式部署、設定 | 中 | 中——偏開發導向的平台職位 |
| HashiCorp Terraform Associate | HashiCorp | IaC基礎 | 中低 | 中——良好的基礎證照 |
| AWS Solutions Architect Professional | AWS | 雲端架構 | 高 | 高——驗證設計技能 |
| GCP Professional Cloud Architect | Google Cloud | 雲端架構 | 高 | 高——GCP導向的職位 |
| FinOps Certified Practitioner | FinOps Foundation | 雲端成本管理 | 中 | 上升中——FinOps專業化 |
證照投資報酬率: CKA提供最高回報。Lightcast資料顯示,CKA持有者在平台工程職位中的薪資報價高出8% [3]。AWS SA Pro和GCP PCA有類似的加薪幅度。CKA加一張雲端架構師認證的疊加組合,是最高效的認證策略。
技能發展路徑
第一階段:基礎(0-1年)
- 準備並通過CKA考試
- 建立個人Kubernetes叢集(k3s、minikube或kind)
- 撰寫AWS或GCP基礎設施的Terraform模組
- 實作使用GitHub Actions部署至Kubernetes的CI/CD管線
- 學習Linux網路基礎(iptables、DNS、TCP/IP)
第二階段:生產技能(1-3年)
- 大規模管理生產Kubernetes叢集
- 跨多個服務實作ArgoCD GitOps
- 建構可觀測性堆疊(Prometheus、Grafana、OpenTelemetry)
- 設計並記錄Terraform模組庫
- 取得CKS或雲端架構師認證
第三階段:架構(3-5年)
- 設計多叢集或多區域Kubernetes架構
- 建構開發者自助工具(Backstage或自定義入口)
- 在生產環境中實作服務網格(Istio或Linkerd)
- 主導平台安全計畫(供應鏈、執行時期、策略)
- 撰寫架構決策紀錄和平台策略文件
第四階段:領導力(5年以上)
- 為組織定義平台路線圖和KPI
- 進行開發者體驗研究並衡量平台採用率
- 為平台元件做出自建或採購決策
- 指導資深工程師並主持架構審查
- 在研討會上發表演講(KubeCon、HashiConf、內部技術峰會)
辨識並彌補技能差距
自我評估方法: 將你目前的技能與目標企業的職缺描述進行比對,找出最常提及但你尚缺乏的三項技能。優先彌補這些差距,再追求利基專業化。
各類技能的差距彌補策略:
- 容器編排差距: 在本地部署類生產叢集,刻意製造故障並練習疑難排解。CKA考試準備能強制建立這種紀律。
- IaC差距: 貢獻Terraform模組註冊表,或將現有基礎設施以程式碼重建。將ClickOps轉換為Terraform的過程能建立肌肉記憶。
- 可觀測性差距: 用OpenTelemetry為個人專案埋點、建構Grafana儀表板,並模擬故障情境以驗證告警。
- 產品思維差距: 跟隨產品經理觀摩一個衝刺週期。閱讀Marty Cagan的《Inspired》。練習撰寫包含問題陳述、建議方案和成功指標的內部平台RFC。
- 溝通差距: 撰寫關於基礎設施決策的文章、在內部技術分享會上發表,並練習向非技術利害關係人解釋複雜系統。
最終要點
平台工程要求T型技能組合:在Kubernetes和IaC方面具備深厚專業知識(垂直軸),同時橫跨可觀測性、安全、CI/CD、雲端平台和開發者體驗具備廣度(水平軸)。在初階和中階層級,垂直軸的技術深度最為重要。在資深和Staff層級,水平軸——特別是產品思維、溝通和組織影響力——決定了職涯軌跡。有計劃地投資兩個維度,並利用認證(CKA優先,然後是雲端架構師)來驗證你的進步。
常見問題
平台工程師應該學習哪些程式語言?
Go和Python最具價值。Go是Kubernetes生態系統的語言——所有CNCF工具(Kubernetes、Prometheus、ArgoCD、Terraform提供者)都以Go撰寫。撰寫自定義Kubernetes Operator、CLI工具和平台服務需要Go的熟練度。Python擅長自動化腳本、資料處理和快速原型開發。Bash對營運腳本和CI/CD管線步驟仍不可或缺。若你正在使用Backstage(採用React/TypeScript)建構開發者入口,TypeScript也很實用。
如何排定學習技能的優先順序?
建議依此順序:(1) Kubernetes基礎(CKA等級)、(2) Terraform/IaC、(3) 至少掌握一種GitOps工具的CI/CD、(4) 可觀測性基礎(Prometheus/Grafana)、(5) 雲端供應商深度、(6) 服務網格和網路、(7) 安全與合規、(8) 開發者平台工具。此進程對應平台工程工作的典型結構——在理解平台佈建的基礎設施之前,無法建構自助入口。
雲端專屬技能和雲端通用技能哪個更有價值?
兩者皆重要。深入掌握一家雲端供應商(AWS或GCP)對生產營運至關重要。雲端通用技能(Terraform、Kubernetes、Crossplane)提供可攜性,在擁有多雲策略的企業中越來越受重視。務實的做法:深入學習一家雲端(AWS的工作市場最大),並充分學習Kubernetes和Terraform以便跨供應商工作。此組合涵蓋90%以上的平台工程職位需求。
程式設計能力與系統知識對平台工程師而言孰輕孰重?
兩者都是基本門檻,但比重隨年資而變化。在初階層級,系統知識(Linux、網路、Kubernetes內部機制)更為重要——你需要排解生產問題。在資深層級,程式設計能力變得同等重要,因為你在建構平台工具、Operator和服務。無法用Go撰寫Kubernetes Operator或Terraform提供者的平台工程師,只能停留在組裝現有工具,而非建構自定義平台解決方案。
引用來源: [1] CNCF,「2024年度調查」,cncf.io/reports/cncf-annual-survey-2024,2024年。 [2] HashiCorp,「2024年雲端策略調查」,hashicorp.com,2024年。 [3] Lightcast,「IT認證對招聘成果的影響」,lightcast.io,2025年。