由於雲計算提供了新的靈活性和可擴展性,它也改變了組織開發和部署軟體的方式。因此,也促進了人們積極開發新品種的雲計算應用程式。
作為一個軟體開發者,在其職業生涯中將有機會進入雲中。然而,下一代計算需要新的理念、技能和工具。未來的僱主不一定只需要專業代碼工程師,新興的雲應用程式開發者也可能必須是建築師、工程師,分析師和技術人員。
可能在未來雲應用程式開發人員面試中,將會被問到以下六個關鍵問題:
(1)你的編程背景和技能是什麼?
未來的僱主已經閱讀了你的簡歷,但也會想審查一下你的核心編程技能,並了解一下你的培訓經歷和證明,如學士學位和證書等。但是請記住,這並不會贏得工作機會。此外,還要說明你現在正在做什麼工作,以及如何與工作要求相吻合。
請確保你是一名專家,擁有至少五年的實踐經驗,並掌握未來僱主所要求的大多數或全部程式語言,如Python、Perl和Java等主要語言。如果工作涉及到Web開發,至少需要四年以上的開發HTML5和jQuery的經驗。
現代軟體開發涉及到詳細的整合任務,許多雲計算應用開發商需要後端系統集成的知識,如NoSQL、dynamo.db、亞馬遜簡單隊列服務、微軟Access平台。
此外,還要展示流行的開發工具,如SpringBoot關鍵軟體,並具備開源Web應用程式框架和工具。
(2)你採用什麼雲平台?
代碼軟體是一件事。該軟體在雲中運行良好是另一回事。一個潛在的僱主會希望看到你了解雲平台提供商提供的平台,如谷歌公司的雲計算平台、亞馬遜網絡服務(AWS)和微軟Azure。
僱主也會希望看到你可以使用雲計算供應商提供的服務。例如,使用AWS的僱主會希望雲計算應用開發商可以提供計算服務,例如亞馬遜彈性計算集群資源,亞馬遜EC2貨櫃服務或亞馬遜簡單存儲服務。
這就要求掌握雲供應商的管理界面選項,如網絡驅動的門戶,命令行接口和API接口。雲開發者需要管理雲環境,拉動和分析報告,管理預算,並與正在開發的軟體集成雲服務。
(3)你使用其他開發工具嗎?
僱主想知道你使用的工具,以及是否可以方便地將其轉換為工具集。雲應用開發者通常使用DevOps或持續集成和持續交付(CICD)工具,所以期待展現至少三年的開源工具,如Gradle或Jenkins。
強調自動化中的DevOps或CICD實踐的重要性。大多數這些工具有利於自動化,簡化代碼管理,協作和部署,這是至關重要的大開發環境。
(4)你的開發團隊和過程是什麼樣子的?
雲應用程序開發人員從不單獨工作。任何敏捷的CICD或DevOps模型涉及到多個學科領域的編碼、測試和部署。而這些模型的成功需要團隊成員之間的靈活性,以及用戶正在開發和管理的軟體協作。
未來的僱主希望雲開發的程序是通用的,具有軟體開發標準,紮實抓好。雲應用程式開發人員應該參與應用需求,設計審查會議,並在測試過程。一個理想的雲計算開發人員可以輕鬆地進行故障排除,並解決軟體缺陷,以及克服雲架構的缺點。
(5)雲計算軟體開發的方法是什麼?
僱主想知道你的發展過程以及其發展過程有多好。解釋你的共同發展過程,從需求收集到團隊選擇選擇,選擇編碼和測試周期。未來的僱主通常會嘗試確定您是否習慣快節奏的發展模式,比如DevOps的或持續交付。它並不一定要所有的點直接匹配,但你的過程越接近僱主的要求,你就可以更快過渡到新的工作。
強調面向對象的編程技巧,並重申與雲應用程式的體系結構和微服務發展公有雲的經驗。從你的實際項目中取得成功,展示你的工作對企業的附加價值。
(6)你如何處理多雲環境或雲互操作性?
許多企業採用多個
雲平台,以獲得更多的靈活性,並節約成本。例如,一個企業為了冗餘可能使用多個公共雲供應商的平台,以確保獲得更低的延遲或數據備份。
儘管有這些好處,多雲可能會為雲應用程式開發人員帶來嚴重的困難。供應商的服務和API通常不同,這意味著專為AWS開發的應用程式可能不能在谷歌的雲計算平台或其他公共雲上運行正常。
供應商之間的這種差異會隨著時間的推移可能會褪色。在此期間,一個有著多雲平台經驗的專業開發人員可能受益更大,即使用人單位沒有積極地採用和管理多雲環境。考慮你如何適應多個供應商的冗餘運行代碼,並處理來自不同供應商的故障或支持同步數據存儲的轉移。
編輯:Harris