六個問題搞定DevOps面試

DevOps不是一個獨立的工作事實上它甚至不是一個職位;這是某種跨學科的軟件工程新方 法。IT專業人士通常在自己的職業生涯過程中會擔任DevOps中擔任某些職責而且該職位 十分火熱。  DevOps結合了軟件編碼知識與質量保證(QA)技能還有業務工作流程軟件的持續開發以及 部署。未來的開發者必須證明自己擁有足夠的技能與知識來參與和管理DevOps組織。  練習這些在DevOps面試時的問題以展示自己的才華來爭取這個令人垂涎的職位。     讓我們談談你的教育和經驗  突出強調你對DevOps原理的理解並向面試官展示你的背景以及如何準備擔任這個角色。  DevOps的職責範圍各不相同但大多數入門級DevOps角色需要具有計算機科學的學士學位 或者相關領域經驗包括編碼、QA測試以及IT基礎設施組件等。更高級別的DevOps角色 可能需要在系統架構與軟件設計上的高級學位。  談及你在虛擬化方面的認證雲計算和具體的編程語言。還有供應商提供的e-learning軟件 開發工具如代碼分析工具或系統管理與自動化工具可以更完整的展現你的專業知識。  比較DevOps的招聘職位和你的簡歷。大多數入門級DevOps相關職位要求三到五年的代碼 開發與測試經驗。DevOps涉及操作和部署可能會要求至少四年的運營經驗例如在數據 中心或雲基礎架構領域的IT系統管理工作。強調自己的系統管理與工作流自動化配置管 理和發佈管理經驗。  DevOps依賴於開發、測試與運營團隊之間密切的合作關係任何科學的管理後臺經驗都是 值得在面試中分享的。讓潛在僱主瞭解你如何讓不同的團隊客服障礙共同努力保持嚴格 的發佈計劃並適應新的工具與技術。  面試DevOps職位前必須牢記下列信息  敏捷與迭代  持續集成和部署  聊天運營和配置管理  GitHub、QA和發佈管理 你的系統背景如何  DevOps專家需要在服務器和系統上具備運營經驗包括部署能夠支持負載的網絡硬件與架 構部署。  一些DevOps工作需要額外的系統知識包括服務器集羣與高併發系統。在這個級別DevOps 工程師需要分析系統可用性並部署升級來提升效率、可擴展性與可用性或者彈性。需要具備 堅實的操作系統與支撐技能如網絡安全、***和代理服務器配置。  DevOps依賴於虛擬化進行快速工作負載提供——爲新虛擬機提供計算資源以支持下一次部 署——所以需要對主要的虛擬化管理平臺有詳細瞭解。這包括備份、遷移以及生命週期管理 策略以便保護、優化與恢復計算資源。一些環境可能還很重視針對虛擬容器開發的微服務 軟件開發。  運營專家必須包括額外的系統管理工具知識如Microsoft System Center、Puppet、Nagios 和Chef。DevOps工作十分重視運營能力如解決問題、故障處理和分析技能。  分享一些你是如何在節約開銷的同時提升利用率如服務器整合項目或資源分配與性能監控 經驗。  你正在使用哪些DevOps工具?  DevOps涉及到編碼、測試、部署與加固等環節。工具是否合適取決於團隊規模以及組織專 業化程度。  軟件配置管理和版本/發佈(版本控制)鞏固包括Apache Subversion、Mercurial、Fossil等等 可以完善文檔變更請求。當軟件變更時開發者可以更容易遵循公司的最佳實踐與策略。  持續集成(CI)工具如Rational Build Forge、Jenkins和Semaphore能整合所有開發者的工作代 碼拷貝到一個集中版本。這些工具適用於更大型的團隊其中的開發者們同時工作於相同的 代碼庫上。  QA專家使用代碼分析工具來測試軟件的錯誤、安全和性能。如果你已經使用過HP的Fortify  Static Code Analyzer可以說說它是如何發現代碼語言中潛在的安全風險。同樣可以聊聊  GrammaTech的CodeSonar工具如何使用它來定位內存泄漏、緩存欠載以及其他C/C++和 Java代碼的檢查。  你需要掌握主語言命令——Ruby、C#、.NET、Perl、Python、Java、PHP、Windows PowerShell ——並且能夠在相關的操作系統環境下使用——Windows、Linux和Unix。  你有多少基於雲的軟件開發?  預計下一階段的DevOps面試問題將問及你在雲服務上的經驗可能涉及到DevOps的迭代、 IT集成經驗。  許多DevOps專家需要擁有與主要雲服務提供商如亞馬遜網絡服務(AWS)彈性計算雲和谷 歌雲平臺的經驗。分析你身邊使用雲平臺的知識、提供新實例、編寫新的軟件以及通過雲提 供商的API或軟件開發工具包來配置集羣擴展計算能力管理工作負載生命週期等。  這是一個討論如何用基於容器的雲來替代傳統虛擬機的好時機。基於事件的雲如AWS  Lambda提供另外一種軟件開發方法對有經驗的DevOps候選者來說是個福音。  強調對第三方工具的全面瞭解能把DevOps帶到雲項目。專注於使用雲而不是剛上市的一 次性成功項目或任務。  在面試時談及自己在處理大數據時的經驗以及如何採用雲基礎設施架構提高它的擴展性 以處理複雜的計算任務。  談談你是如何具體管理接手的項目  強調自己置身於DevOps項目管理的問題中。框架化的圍繞解決複雜的業務問題來討論 DevOps管理。  作爲一名具有管理責任的專家必須證明自己對DevOps項目管理策略有着清醒地認識。討論你如何與團隊制定目標、簡化工作流程、維護範圍(防止蠕變)研究和推出新工具或框架 轉換需求到工作流並跟進。包括如何配置管理與發佈管理還有采用其他工具來跟蹤項目。  高級的DevOps角色如首席DevOps工程師需要更多商業頭腦和人際交往能力。分享你 如何解決糾紛與團隊衝突的經驗。  你還熟悉哪些工具可以幫助勝任這個角色?  這個DevOps面試問題可以真正提升你從“合格”到“理想人選”。  DevOps是如此的多元化與包容它很少以編碼、測試和系統結束。一個DevOps項目可能依 賴於類似SQL或NoSQL的數據庫平臺數據結構服務器如Redis或者配置與事件跟蹤系統 如Redmine。  web應用程序是現代企業必備的說明自己有Web服務器如Microsoft Internet Information  Services、Apache Tomcat 或其他Web服務器的應用背景。  遵循標準化方法來進行軟件開發的組織都會尋找熟悉敏捷應用程序生命週期管理的技術人 才與工具。  而且DevOps角色的職位描述通常還十分注重熟悉業務在監管行業還會要求候選人熟悉ITIL 實踐。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章