2013年9月,蘋果公司正式發布了iOS 7操作系統,并暗示此操作系統將會解決SDK支持的遺留問題。在DoubleDutch公司(我們偉貿易展覽和貿易大會開發社交活動的移動應用程序),iOS7此舉對于我們而言提供了一次絕佳的機遇,可以讓我們重新評估當前產品的狀態。
在過去的數年時間里,我們開發的軟件已經得到了長足的發展,而且公司也在不斷完善自己的愿景。但是,圍繞著我們的應用程序,公司仍然需要承受較大的負擔(技術性債務)。我們當時做了一個決定,那就是,公司需要立刻重新開始、重新改寫我們的應用程序,并且不去關注短期收益,優先考慮可長期執行的戰略。
在這個過程中,筆者在創業階段學到了很多,并且感受到了成長的收獲,更重要的是,我知道了應該在什么時候、從最基礎的地方重新思考你的產品。
一家初創公司的幾個階段
在一家初創公司成立初期,除了創意之外應該就沒有太多東西了。你需要花了好幾個月的時間忙這忙那,比如學習市場營銷,與潛在的客戶見面,還要形成一個可行的公司發展方向。
當企業的方向開始越來越具體,你所開發的東西就會變成一款最低可行性產品(MVP),而且會努力找到自己的首批客戶。這一過程將會持續進行,直到你獲得到理想的客戶,然后收集用戶反饋,接著再不斷地循環這個過程。你的市場,其實就是你產品需要解決的那些問題,將會變得越來越重要。
從一個技術角度來看,如果時間嚴重短缺,初創公司的早期團隊可以由幾個工程師組成,但是,如果對市場了解有限,加上缺乏資源和分配,可能導致產品和結構性的決策無法按時完成。
在這個階段,客戶要求會不斷融入,每個客戶都代表了業務的一大塊比例,你別無選擇,只能接受他們。
有些客戶要求和產品預期較為相符,但是有些則是一些“一次性”的需求。千萬不要有“不惜一切代價滿足客戶需求”這樣的想法,你必須要不斷地提升產品,并保持核心客戶的滿意,這點是至關重要的。
在經歷上述過程之后,你的客戶群將會迅速增長,同時你的產品功能和復雜度也會隨之增加。由于對更大的市場有了一定了解,你會逐漸找到自己的核心競爭力,并且意識到有必要把自己的產品擴展成一個平臺。
由于產品更新換代變得越來越快,產品代碼可能會變得過于臃腫,支持成本會隨著時間變得越來越高。過去對增長非常有幫助的產品可配制性,也迅速成為了一種負擔,導致產品更新的節奏越來越慢。由于此時的企業變得越來越復雜,從而影響到新員工的招聘,由于人手不足,加上產品配置錯誤增多,產品Bug也會越來越多。
不過,現在你的工程團隊無論是在規模還是在專業技術上都已經變得非常成熟了,而且企業此時也實現了與市場的契合,并準備開始積極擴展。有了明確的目標,加上具有較強執行力的團隊,一切就只等時間幫你解決技術債務了。現在你所要做的,就是為高速增長做好準備。
增長的好處和壞處
實現產品和市場的契合是一種很奇妙的感覺,但你必須保持有足夠的靈活性,保持創新,快速做出改變。
一旦你的初創公司實現了這種契合,那么就需要考慮如何應對日益增長的技術性債務,以下有兩個很明顯的選擇:1)迭代重構,并不斷提升產品組件2)對于重寫(部分)全部產品的工作,要加大投入。
第一個選擇可以延長支持技術債務所需要的時間,但是前期如果沒有大量成本投入則很難得到持續性的改觀。重寫App應用不僅涉及到的前期成本非常高,而且回報也具有較高的風險。不僅如此,重寫App應用是對產品未來不必的一種結構性設計,它不是要解決產品的遺留問題。
在評估App應用代碼庫的時候,有幾個重要的指標,這些指標會影響我們做出決定,是否需要重寫絕大部分代碼:
未來的產品核心件需要做大量結構性改變才能實現
該產品的技術債務讓開發速度變慢,并給工程師帶來負擔
從產品的核心體驗被越來越多的功能取代
一個迫在眉睫的事情(比如iOS 7發布)要求必須進行重新架構產品
工程團隊對產品和未來有著非常深刻的理解
如果你身處在一個類似的情況下,比如產品的最后期限迫在眉睫,比如要投入大量時間,而且你的產品可以從一些關鍵性改變中受益,那么重寫代碼可能是你必須要做的正確選擇。
權衡風險
也有人會說,重寫代碼也許不是一個非常明智的決策。讓公司整個工程團隊重新構建一些東西,而且更重要的是,原來的產品已經積累了龐大的客戶群,這些用戶很可能會重復安裝很多次更新,直到重寫應用完成。因此,如果要獲得更大回報,重寫代碼的確是有較高風險的。
如果你決定在長遠發展上下個賭注,決定重寫代碼,那么就需要增加更新的速度,并且要專注于提供最好的終端用戶體驗,并用最快的時間找到新的工程師。
對于筆者所在的DoubleDutch公司來說,重寫App應用意味著我們必須要用四個月的時間轉移絕大部分工程團隊的注意力,因為我們選擇了改良自己的應用程序接口(API),安卓應用程序,以及iOS應用。在iOS 7兼容性更新上,我們沒有做太多架構性的改變,因此我們兩名工程師在不到兩個月的時間里完成了這項工作。
當然,我們這么做也是一個非常冒險的舉措。展會活動類型的App應用現在競爭性越來越大,我們之前的App應用的銷售非常出色,因此當時整個公司的目標就是盡可能快的發展壯大,而重寫產品似乎和搶奪市場份額的目標不大吻合。隨后,我們重新評估了風險,認為競爭對手暫時還無法追趕或超越我們,所以如果要迅速有效的獲得未來創新的能力,我們最終決定重寫App應用。
實現飛躍
接著上面的話題,你肯定會問出一個非常重要的問題,那就是,哪個風險更大一些呢?是減緩幾個月時間去開發新功能,還是讓競爭對手重復快速更新?
對于筆者所在的公司而言,我們堅信自己的執行能力,并決心要成為行業領導者�?紤]到這一點,我們的希望用創新壓倒競爭對手,但是我們也會承擔一定的風險,比如競爭對手有可能在短期內超越我們。
一開始,在我們開發自己的應用程序的時候,對于市場并沒有一個較為成熟的認識,我們只是隨波逐流地去構建自己的產品。事后看來,我們在同行業中需要有一個強大的立足點,從以往的經驗中得到教訓,才能為未來做更好的準備。
那么,我們是否做出了正確的決策呢?現在來看還為時過早,但是從公司的發展速度和表現來看,我們有足夠的理由保持樂觀。
注:作者Nicholas Clark是DoubleDutch公司首席技術官,該公司主要為貿易展覽和貿易大會開發社交活動App應用。
推薦閱讀
導讀:目前來看,用戶研究存在如下四大顯見的誤區:①毫無目的地做用戶細分和用戶畫像;②將產品的忠實用戶作為產品的核心用戶來進行研究;③將產品的現有用戶當成目標用戶>>>詳細閱讀
地址:http://www.xglongwei.com/a/SNS/20140127/292561.html