興奮在科技創業公司中具有感染力。 他們的目標通常包括建立問題的創新解決方案,建立開發人員的心態和增加收入,增加訂戶基礎或兩者兼而有之。 初創企業通常開始虧損運營,其目標是表現出足夠的增長以被另一家公司收購或發展到下乙個facebook。 公司可能需要數年時間才能培育出自己的大創意,然後才能實現理想的結果。
另一方面,在大型公司中,特別是在公開交易的公司中,投資者對高管施加壓力,要求他們swift發展業務並顯示出快速的投資回報。 眾所周知,股東對長期孵化的容忍度很低。 此外,大型公司在流程或開發技術方面都面臨變革的挑戰。
我們的開發團隊負責提供移動解決方案來個性化使用者互動。 在開發我們的軟體即服務時,我們挑戰自我以建立乙個新的開發環境,其中包含了技術初創公司中常見的新技術和開發理念。 我們專注於建立充滿活力的發展文化,同時實現新想法的快速增長並獲得高管的支援。
「在本文中,我們分享了我們如何從大型,緩慢移動的海牛到敏捷,快速移動的海豚,實現了專案的「大變化」。 」
我們希望我們的故事和經驗中的主要經驗對其他嘗試在大型企業環境中建立啟動文化的開發團隊有所幫助。
tl;博士
具有諷刺意味的是,在ibm工作使我們的開發團隊對初創社群的實踐有了深刻的了解。 這怎麼可能? 每年,ibm都在技術收購上投入大量資金,而我們的許多關鍵收購都來自初創公司。
在過去的幾年中,隨著ibm致力於將其產品過渡到雲交付模型,這種發展尤其如此。 將這些公司整合到ibm中時,我們看到的最明顯的區別是他們的軟體交付和雲戰略方法。 在初創企業中,對話的開始和結束以在公共雲中執行為基礎,建立了一種雲原生架構,該架構是為執行在雲中而預先設計的,最終隨著使用者採用該技術而擴充套件。
市場需求決定了這種方法。 當務之急是盡快進入市場,並與客戶緊密反覆合作以幫助證明這些想法。 利用雲託管的解決方案,可以使這種情況以雷射速度發生,因為客戶不必擔心系統的設定,配置和管理。 客戶可以專注於解決方案的真正價值。
此外,初創公司的開發團隊幾乎總是需要解決方案的運營支援,因此他們管理的次數越少越好。 這些團隊更有可能選擇經過驗證的現成可用的開源雲架構和部署,以最大程度地降低交付風險。
相反,在企業公司中,對話通常以it為起點和終點,it的目標是控制基礎結構。 討論很快轉到企業的資料中心。 向混合雲和公共雲的轉變已開始改變這一重點,但是產品交付產品的市場需求以及向雲原生架構遷移的速度通常受到企業釋放記錄系統能力的影響。 資料託管在企業資料庫中,開發和運營之間存在角色分離。
在許多會議上的演講活動中,以及在與我們團隊的討論中,乙個又乙個問題浮出水面:為什麼企業不能僅僅像一家初創企業那樣做呢? 答案很複雜。 作為技術人員,現有的程式和政策通常會妨礙我們。 讓我們仔細看看。
儘管技術行業中的大多數公司都已轉向敏捷方法,但是仍然存在發行管理期望的強大,根深蒂固的發行模式和流程。 這不是天生的壞。 畢竟,流程通常有利於優化交付和質量。 但是,對現有系統進行了優化,以減少變更和破壞,並為成千上萬的客戶提供支援,而在初創企業中,利用新技術和工具進行快速創新的能力要求對整個團隊進行快速教育。
我們的團隊花費了大量時間來嘗試打破這種正規化,我們一直在認真研究啟動社群為解決此問題所做的工作。 在本文的其餘部分中,我們將討論如何在名為「海牛到海豚」的專案中實現必要的「大變化」。
對於我們的專案,我們轉向了持續交付模型,在該模型中,我們逐個衝刺地將新功能主動釋放到雲中。 我們使用git工作流程鼓勵持續整合,並使用工具來幫助加快工作速度。 為此,我們必須使開發人員更接近實時執行的系統,並且我們採用了devops實踐以快速交付功能。
我們有目的地尋找開放源**技術,並將我們的**庫從我們繼承的舊技術堆疊中分離出來。 我們採用了通用功能的現有解決方案,以節省團隊的時間和精力。 我們的重點是創造價值。 任何使我們的實際任務花費時間的事情都被認為是噪音,是不能容忍的。
ibm的幾項重要收購對我們採用啟動方法至關重要,包括xtify,cloudant,silverpop和strongloop。 ibm對這些技術的戰略投資是其轉型的一部分,這表明我們在決定在專案中使用它們的方向是正確的。
大多數初創公司嚴重依賴開源技術,這些技術結合了經過驗證的雲可擴充套件功能和成本(免費),兩全其美。 從一開始,我們就將node.js , redis和elasticsearch等開源技術作為我們技術堆疊的基礎。 在適當的時候,我們還利用了mqlight之類的 ibm軟體和上述cloudant(在couchdb的支援下也是開源的)。
充滿活力的開源社群的關鍵是開發人員對推動社群發展的技術的參與。 作為開源技術的採用者和良好的開源公民,我們投資了在github上交付我們的庫和模組。 我們的客戶認為這是邁出的重要一步,因為這給了他們槓桿作用和信心,使他們可以控制對服務客戶的更改。 我們還為我們的sdk 引入了諸如cocoapods (ios)和gradle (android)之類的開源依賴項管理解決方案,以期加快開發人員的工作效率並遵循我們在開放技術開發中看到的最佳實踐。
此外,我們經常能夠在這些充滿活力的社群中找到開發資源和技術文件,以解決我們正在解決的問題。 這些社群也是吸引新人才的好地方。
我們的團隊從企業開發團隊過渡到類似啟動的開發團隊大約需要6到9個月的時間。 我們的主要目標之一是使我們的團隊成為開發人員想要工作的地方。 儘管技術對我們的成功至關重要,但真正的成功取決於能否建立合適的團隊,並確保他們採用新的工具集,包括github enterprise , grunt , npm和其他工具來加速開發。 該團隊與new relic積極合作,以獲取有關我們部署的運營見解。
在整個過程中,我們依賴於乙個核心開發人員團隊,並且始終專注於該專案,並且我們非常注重與作戰室在同一地點的團隊,並在slack頻道上不斷互動。 我們還建立了乙個微型**和工作頁面,以吸引創業社群的新開發人員。
我們組織的目標之一是招募,加入和提公升頂尖技術人才,以繼續推動我們的技術方向。 我們建立了一支強大的技術團隊,該團隊具有不同的經驗水平以及對如何構建軟體的不同見解。 通過非正式調查,我們發現大約45%的團隊在ibm有0至4年的經驗,而許多人只有1至2年的經驗。 在擁有4年以上經驗的人中,約75%的經驗不足10年。 我們發現,這些經驗水平的組合有助於推動我們對技術的採用,同時保持對大規模交付服務的理解。 換句話說,我們將經驗與青年融為一體。
我們還發現,擁有出色的技術堆疊和明確的使命是交付下一代雲原生架構會導致營業額非常低。 實際上,我們的團隊表示,技術堆疊是他們想要在ibm工作的關鍵原因之一。
開闢一條小路後,您需要提供一張地圖,以便其他人可以跟隨! 我們的團隊一直活躍於stack overflow等社群,這使我們能夠與開發社群保持密切聯絡。 我們的團隊還通過各種twitter渠道推動了開發人員拓展活動,以使使用者了解我們的進展和新功能。
由於我們已成功過渡到啟動開發實踐,因此經常要求該團隊出席ibm和行業技術會議。 我們使用slideshare共享會議演示和經驗教訓。
現在,我們的開發人員被認為是ibm移動和雲技術團隊中的創新者和技術先鋒。 我們希望,作為希望轉向雲原生開發的團隊的榜樣,我們可以使用實際部署來驗證我們的方法,從而幫助共享最佳實踐並為其他團隊確定方向。
採用技術創業開發模式的回報可以幫助您轉變公司,吸引和激勵開發團隊。 以下是將團隊從海牛轉變為海豚時應考慮的一些要點:
向初創公司過渡很有意義,但這確實需要時間。 在此過程中,您將遇到麻煩,需要進行重新設計和重新設計,但這項投資將激發您不斷改進的熱情。 我們開始了這個專案,以了解ibm開發團隊如何利用雲為ibm帶來可觀的價值。 我們不僅為ibm提供了引人注目的解決方案,而且還獲得了創新的移動和雲開發團隊的認可。 了解我們的團隊如何進一步過渡到以雲為中心的架構 。
並且,如果您的旅程涉及開發或過渡到雲技術,您是否嘗試過在ibm cloud平台上構建和執行應用程式? 試試看 。
翻譯自:
從C過渡到C
案例 輸出hello world include using namespace std int main int main 函式過載 函式名相同只有引數 個數或者型別 不同。命名空間 include namespace scope1 namespace scope2 int main 命名空間的作...
從C過渡到C
c plus plus c語言的超級 帶class的c語言 c 可以完全引用c c不能直接呼叫c 案例 輸出hello world 源 helloworld.cpp include using namespace std int main 編譯 g helloworld.cpp o hellowor...
從C過渡到C
作業系統和驅動程式都是c寫的,學好c足夠了。c 在應用層用得多,學嵌入式沒必要學 linux大神都認為c 一無是處,還學它幹嘛 我以後就做驅動開發,沒精力也沒必要學習c 但是說,軟體這個行業是飛速發展的,只靠單一 一種語言並不能支撐整個工作生涯,而且只用單一 一種語言很快就會走進瓶頸,所以我們要開闊...