1. 程式人生 > >一個程式設計師的六年反思,我為什麼選擇快速開發

一個程式設計師的六年反思,我為什麼選擇快速開發

 

經常會寫點東西,寫久了就不知道該說些什麼了,看著各位技術大V在社群中侃侃而談,菜鳥新手孜孜不倦,甚是感慨,回想一下自己走過的路,諸多記憶湧上心頭,今天閒來無事,一起聊上一聊。

今天為止,混到CTO已經兩年了,參與過大大小小的專案也有幾十個了,苦逼的是現在依然需要帶小弟,畢竟要保持團隊年輕化嘛,其實對他們也只有一個要求,那就是把學到的東西寫下來(有點老傳統了哈)。這可能和我個人的習慣有關係,在過去幾年我基本上都在和客戶做專案,每遇到一個問題基本都會在部落格上分享,但是與開始的個苦心吸引眼球不同,現在寫來也就是圖個樂趣,提醒自己還有那麼多的領域我沒有領悟,以此鞭策自己,不要再走彎路。


 

說起開發,大學畢業之後就開始做了,最初也無所謂興趣,只是親朋好友都說這一行收入比較不錯,便投入進去。八月份,也就是在畢業一個月後,我便開始了我的第一份工作,是一家外企,做移動網際網路產品,薪資不差,可惜不到兩週我就跑了,現在想想真是一點兒也不理智,因為離開四個月後,這家外企就從上海撤了,如果當時留下來,至少能得到兩個月的遣散補償,真是悔恨啊。

可能你也在想,離職是不是我不行,在公司待不下去了呢?不是!因為在我進入公司的這兩週,同部門就有三個人離職,整個公司估計就更多了,離職這種事情是能傳染的,尤其是對一個剛畢業的菜鳥來說。因為一旦一個公司有大量離職,心裡會想這個公司一定有哪裡出了問題吧,對我的未來一定不是好事,於是頭腦一熱,便拂袖而去。

後來,我去了一個當時正在大規模拓展的外賣平臺,名字就不說了,前三個月基本上就在學學學,接下來幾個月便是寫寫寫,這時候用的基本上全是java,由於實操機會比較少,經歷了坎坎坷坷,總算完成了人生第一個小專案,如果當時你有用的話,APP上那些“低價超值”,“簡餐快餐”、“省錢神器”、“限時搶購”等專案,基本上我都有參與。而做這些專案的本質,是要解放那些運營部的靚妹帥哥,讓他們有更多的時間去約會,現在想想,還挺有意義。


 

後來,鬼使神差,我不知被誰蠱惑的,想著瞭解技術前沿,又去讀了一年計算機學院,那時候真的是計算機技術發展的黃金幾年,我直到在學院畢業,還不知道我學的東西根本沒有,除了一張結業證書。但是,就是我覺的沒有的計算機學院,導師卻在畢業時給了我一個方向,關於未來軟體技術發展的認知,並把我推薦到了如今的公司。

這是我第一次接觸到快速開發,光概念性的東西我就花了好幾個月的時間去了解。Web端的東西,關於.net的一切我又重新複習了一遍,C#語言,說實話我以前沒怎麼用過,而公司的框架卻是以此為基礎,不過計算機語言都是想通的,經過幾個月的磨合倒也上手很快。

在我最初的認知裡,軟體專案通常都是定製化開發,沒個幾十萬很難做成,但是當我接觸到快速開發這一塊的時候,我的想法發生了鉅變,就像現在,OA可能都要進入4.0時代了,最開始的模式遭到淘汰也就理所應當了。


 

快速開發,其實針對的是融合框架,在框架中部署一些列的通用元件,做到靈活配置,其實這就要求這個框架的相容性好、功能完善、可拓展性較為優良,至少能做到大部分企業的通用需求和部分個性化需求,這樣可以比較好的解決企業和軟體公司相互扯皮的矛盾。企業用較小的成本拿到框架,根據框架進行自主便捷化配置,軟體公司只需提供簡單的技術指導便可以了,雙方省心。

以learun快速開發框架為例,初代版本便包含眾多實用元件,而這些元件又能單獨開發多套企業應用系統,例如OA/ERP/CRM/移動APP/電商後臺等,真正做到了一套多用:


 
 
 
 
 
 
 
 

當然了,這裡使用的只是1.0的功能表,實際上,learun如今已經發展到7.0,功能要比這裡的豐富很多(因為涉及行業競爭就不放出來了)。

這些,基本上都是根據行業客戶的案例一點一點整理出來的,開會開會在開會,討論討論再討論而定。而且在後續的實際開發中,也深刻感覺到到個人能力和團隊合作對軟體質量的重要性。

如果你問我,一個合格的程式設計師應該包含哪些能力:

程式設計能力、團隊溝通、寫文件、追求完美、知識儲備。

而你要問要做一個行業創新框架需要哪些能力:

不怕死!