一個十幾年程序員給所有新老程序員的忠告

吉日噶拉(在外企、上市公司工作過,自己也創(chuàng)業(yè)失敗過,遇到過很多失敗挫折,甚至露宿街頭,但是最后還是挺過來了),是一個十幾年的程序員了,里面介紹了他的相關(guān)經(jīng)歷,以及他的一下經(jīng)驗,無論是對剛?cè)腴T的程序員,還是工作了十年八年的程序員都有一些經(jīng)驗值得借鑒學(xué)習(xí)。這里我也把這本書中的部分精華分享給大家,希望對大家有幫助!

程序員你傷不起 封面

值得注意的是書中的作者本身是一個小牛,沒畢業(yè)前已經(jīng)在大企業(yè)工作過很長時間了(.Net開發(fā)為主,C、java都有獵取),03年前就可以自己接企業(yè)項目了,但是后來還是遇到過很多挫折,主要是創(chuàng)業(yè)方面的慘痛經(jīng)歷。

通過本書,你會看到,即使你并不天賦異稟,成不了喬布斯和馬云,但你依然可以有所成就,成為幸福的人。

(一)三年前的一個項目經(jīng)驗

主要講的是作者幫公司拉了一個政府的項目,但是由于經(jīng)驗較少,談的價格很低,還有很多細(xì)節(jié)剛開始沒有談到,后面相當(dāng)于收了很少的錢,給政府干了一個比較完善的項目,這節(jié)的經(jīng)驗就是:程序員一般不應(yīng)該直接和客戶談項目,應(yīng)該讓專業(yè)的人去談,他能把10萬的項目談到50萬或更多。

(二)2005年我的第一次軟件創(chuàng)業(yè),燒掉30萬,兩年時間打水漂

  • 教訓(xùn)1.手上有技術(shù),但是沒有客戶,沒有產(chǎn)品,就靠著一腔創(chuàng)業(yè)的熱血和對軟件行業(yè)的愛好!

  • 教訓(xùn)2.團(tuán)隊不穩(wěn)定,各種經(jīng)費、雜費、水電給、租房費、設(shè)備費,制度不夠完善,成本沒有控制好。

  • 教訓(xùn)3.自己辛苦培養(yǎng)出來的技術(shù)人才,被客戶三兩下就要走了!人員的思想工作要做好。

  • 教訓(xùn)4.小公司創(chuàng)業(yè)不要把財務(wù)完全交給別人,熟人也不行。可能最后生意失敗,自己一點錢都拿不到了!

  • 教訓(xùn)5.做公司不是做技術(shù),更多的是做人,我做人本就不到位,做公司必敗!

  • 教訓(xùn)6.創(chuàng)業(yè)注意的問題點:
    (1)為什么要創(chuàng)業(yè)
    (2)我是個有經(jīng)營頭腦的人嗎
    (3)如何判斷一個項目是好項目
    (4)財務(wù)預(yù)算和控制
    (5)如何與人合伙
    (6)把自己擺正位置
    (7)創(chuàng)業(yè)其實改變不了一個失敗的打工者
    (8)對行業(yè)的認(rèn)識,上游和下游的掌控
    (9)害人之心不可有,防人之心不可無
    (10)靠人的買賣是最不可靠的
    (11)偶然和必然的概率。。。

(三)投遞簡歷請換位思考及前臺頁面設(shè)計比后臺實現(xiàn)更值錢

    1. 簡歷
      一般要信息全面,排版工整。
    1. 前臺設(shè)計
      前臺設(shè)計是藝術(shù),這個是沒那么容易學(xué)來的,越往后寫程序的會越不值錢,設(shè)計的相對會值錢一點。程序是技術(shù),設(shè)計是藝術(shù)。技術(shù)可以批量生產(chǎn),但是藝術(shù)無法批量制造啊。

(四)團(tuán)隊工作氛圍很重要,沒有好的氛圍難出好的產(chǎn)品和項目

一個開發(fā)團(tuán)隊、軟件公司需要有一個 良好的氛圍,大家人心穩(wěn)定,每個人都在有條不紊地忙乎實際工作上的事情,每天都有一點點成果,大家平時工作開開心心,一步一個腳印的發(fā)展。項目做的有條理,客戶也滿意,收款也及時,這才是軟件公司生存發(fā)展的硬道理。軟件如果做不好,軟件公司肯定是開不下去的!

(五)奔三的程序員,平時都忙啥?想些啥?以后有啥計劃?

每個人總要給自己尋找個方向,每個人都需要有個信念,沒有信念,活著就沒意思,無聊,覺得沒有奔頭了。作者是比較喜歡做技術(shù)那種,可以做到五六十歲那種,并且看到過更老的程序員!

1.比較喜歡技術(shù),會經(jīng)常學(xué)習(xí),人需要不斷提高否則很容易落后
2.看一些技術(shù)方面的書,管理經(jīng)營方面也看,畢竟以后很有可能走上這條路。
3.多關(guān)心人情世故,多聯(lián)系朋友、同事、親人,努力建設(shè)和諧社會!其實是因為人脈比技術(shù)更加重要!
4.溝通能力很重要,文筆也是需要一點的,寫報告,各方面交流都是會有的,畢竟技術(shù)能力不低了。
5.參與公司部分銷售工作,做技術(shù)銷售也是很重要的,也要讓客戶知道我們公司的技術(shù)能力是很強(qiáng)的。
6.軟件系統(tǒng)的核心部分、通用組件部分、關(guān)鍵部分、標(biāo)準(zhǔn)樣式部分、標(biāo)準(zhǔn)框架部分,這些都是軟件系統(tǒng)的核心,不能指望新手來完成。
7.編程不只是20來歲做的事情,。可以走管理路線,也可以一直堅持技術(shù)路線。
8.生活不止有眼前的茍且還有詩和遠(yuǎn)方!

(六)你要有大客戶,要有經(jīng)濟(jì)效益好的客戶,你賺窮人的錢是很難的。

??離職了也別成敵人,開開心心的離職,將來還是會有合作機(jī)會的,說不定還很大的機(jī)會。
??你要有過硬的技術(shù),讓客戶相信你,覺得這個事情你是專家,讓你來做沒錯,你要時刻讓自己的技術(shù)超出常人的水平。
??拉客戶要有個過程,小事情干好了,人家才放心把大事交給你去做,不可能一步登天。
??不要做過于廉價的勞動力,那是在破化市場,尊重自己尊重別人,免費給別人當(dāng)然可以,但如果那樣做,IT就更不值錢了。
??賺錢的機(jī)會不是天天有年年有,要學(xué)會抓住機(jī)會,錯過了這個村就沒有這個店了。
??大項目都是有比較的,不是隨便給你的,價格也不是亂開的,別人賺的錢也不是天下漂下來的,你需要戰(zhàn)勝對手,才能拿到機(jī)會。

(七)走火入魔閉門造車之.NET瘋狂框架經(jīng)驗分享

??好東西多得是,就看你如何看待它們。就像我下載的1G的C#文檔一樣,電子垃圾一大堆,天天跟在新技術(shù)屁股后面,也難提煉出個啥來。因為你永遠(yuǎn)跟不上時代的進(jìn)步。你的積累也會變成你的包袱,除非你有驚人的毅力,不斷完善你的積累,那最起碼你要連續(xù)幾年不打游戲,節(jié)省時間才能提煉出來,或公司出錢給你燒,也能燒出來。
??不是新技術(shù)出來了,你以前的積累就推倒了,除非你以前的積累是經(jīng)不起考驗的,否則是不會被推倒的,新技術(shù)只是錦上添花而已。軟件整體的開發(fā)不會輕易發(fā)生天大的變化,你需要的是不斷吸收新技術(shù),了解新技術(shù)的長處和定位,然后把需要的新技術(shù)消化好,用到自己的整體框架中。

(八)最近幾年軟件項目的心得體驗

1.做軟件外包的經(jīng)驗告訴我

做軟件需要人海戰(zhàn)術(shù),做軟件需要大量的體力勞動,而不是腦力勞動

2.我們技術(shù)副總的主導(dǎo)思想

客戶的需求變來變?nèi)ピ趺崔k?客戶的需求變了,并不是壞事,讓客戶填寫好變更表,把工作量變化給客戶確認(rèn),秋后算賬。工作不就是干點活做點項目嗎?哪里不一樣,這個項目工作量越來越大,錢也是越來多,不是壞事。

3.我自己的主導(dǎo)思想

想多賺錢怎么辦?直接找上級談,你能干出啥來?想要多少錢?多長時間過好?對公司有啥好處?都談明白了,老板也會答應(yīng)的,大家都有好處,都在影響自己的心情,不能好好干活。

4.身邊一直發(fā)生的事實告訴我

與領(lǐng)導(dǎo)溝通好,報告寫好,比拼命干活效果好幾十倍!別總埋頭苦干,干得累死累活,沒人知道你有多辛苦,及時向領(lǐng)導(dǎo)匯報情況交流。

5.我比較佩服的事業(yè)部經(jīng)理告訴我

不能完成工作怎么辦?最愚蠢的做法是通宵幾天,突擊幾天,然后累死累活,最后還是沒能按時完成,人也累趴下了。其實,不能按時完成工作多了去,這時要先分析清楚延時的原因,找上級說明原因,讓他們認(rèn)可你的理由。然后把接下來的工作合理的進(jìn)行安排,有條理的一個個做好。

6.我的自身N年工作經(jīng)驗表明

做軟件為什么那么累?因為軟件是個細(xì)活,不是敷衍了事對付對付就可以的,需要一行行代碼寫出來,不能思路混亂,也不能偷工減料。不管是太理論也好,太理想化也好,總得有個理論指導(dǎo)實踐的主導(dǎo)思想,否則這事就沒法干了。

(九)不要給自己編織過多的理由,借口是永無止境的

??工作要有力度,不能老是沒完沒了找借口,每個人都可以給自己編織出美麗的借口理由來,聽起來事那么地有道理,其實理由都是給自己編的,自己給自己下的套。

(十)打工和創(chuàng)業(yè)不同的心態(tài)
這幾年給人打工,感覺真是太幸福了,每個月不管業(yè)務(wù)好不好,不管客戶給不給錢,老板都會按時給我發(fā)工資,卡里有錢了,不愁吃不愁喝,真幸福。
自己不開公司不知道賺錢有多難,自己不當(dāng)老板不知道給員工的工資已經(jīng)很高了。不要以為自己創(chuàng)業(yè)就比打工可以賺更多錢,我見過很多朋友,自己創(chuàng)業(yè)創(chuàng)得很辛苦,但是他們打工的活可以很輕松拿到10K以上的薪水,但是他們非要自己創(chuàng)業(yè),非要往火坑里面跳。

(十一)IT創(chuàng)業(yè)光技術(shù)好,謀略定位不好,可能照樣會死得很慘。

??你可能有了一個很好的創(chuàng)業(yè)思路,就感覺用這個思路去創(chuàng)業(yè),成本地,風(fēng)險低,成功的概率高,你會跟你的好朋友探討你的思路,會和你的好朋友講解你的經(jīng)營模式、經(jīng)營理念,甚至帶他到你的公司參觀感受一下你的成功。這時候你很可能在做一個錯誤的決策,你的朋友也不是吃素的,他也會模仿你,搶你的生意,搶你的機(jī)會。
??我覺得我的積累還可以,還做出了娛樂場的計費軟件。我以前的合作伙伴偷了我的成果,銷售了幾十套。你的成果很容易被被人偷竊,你要學(xué)會保護(hù)你的勞動成果,你的勞動成果未必給你帶來什么經(jīng)濟(jì)效益,確定給你的敵人帶來更多的經(jīng)濟(jì)效益。


小結(jié):
1.開公司首要的是要明白你做什么可以賺錢,而別人不知道,或者還沒抓住。你程序?qū)懙煤茫椖繉懙煤茫銈€屁啊!全國程序?qū)懙煤玫娜硕嗔巳チ恕D闩ι兜模鼪]用,天下努力的人多了去!
2.身邊都是虎狼,都是人精,都想吸干你的血,都是指望著跟著你或者從你身上撈一把的人。
3.創(chuàng)業(yè)千萬不要又出錢又技術(shù)。要么燒別人的錢,要么別人出技術(shù)。你全出了,風(fēng)險大,壓力也大,甚至都沒有精力跑市場。
4.你要找比你強(qiáng)的人合作,你能從他身上學(xué)到東西,而不全是你給予別人。與比你強(qiáng)的人合作,你絕對不會損失啥。
5.創(chuàng)業(yè)了,玩人一定是比做項目、干活更重要的事
6.小公司把股份分掉,你就是不要股份又能怎么樣?等你玩透了,自己再開間公司又能怎么樣。你給員工1%的股份,他都會很開心。甚至你賣股份給員工,還可以融資一把。
</font>


(十二)為什么我們每做一個項目軟件,總要被折騰得死去活來

1.軟件是個龐大的工程,不像蓋小民房,可以看得見摸得著,軟件是一個看不見的龐大工程,所以一個像樣的項目,一般沒那么容易就能搞定的。
2.客戶的需求變來變?nèi)ィ覀円惨徽垓v來折騰去,沒有一個很確定的功能需求。
3.我們的技術(shù)不過關(guān),寫的代碼質(zhì)量不過關(guān),稀里糊涂,對付來對付去,我們的代碼經(jīng)不起客戶的折騰,沒折騰幾下,就可能被客戶的需求給弄死了!
4.客戶的需求無邊無際,沒有一個明確的范圍,其實客戶的需求范圍是需要限定再某個明確的范圍內(nèi)的,工作就在這個明確的范圍內(nèi)開展。
5.可能我們沒有一個成熟的開發(fā)框架,每個人都在摸索,每個項目都在摸索,那是很浪費人力物力財力的。
6.我們沒有嚴(yán)謹(jǐn)?shù)姆止し纸缢枷耄男┕δ軕?yīng)該是再哪些模塊做,哪些功能是在哪個實現(xiàn)才對,哪些功能應(yīng)該在前臺做,哪些功能應(yīng)該在后臺做,可能都是混亂的。
7.我們一直追求“差的不多就可以”,導(dǎo)致我們做出來的程序不好用。漏洞百出,錯誤多多,無法將注意力都集中在客戶的業(yè)務(wù)上。
8.公司沒啥積累,一切都要重新來過,做一個項目走一批人,一年又一年,原地踏步。
9.項目組人員,同時負(fù)責(zé)好幾個項目,東搞搞西搞搞,無法集中精力做好一個項目,哪個項目都是半成品,都是個噩夢!
10.拉一個項目,招聘一批人,各路神仙,思路不一樣,做事風(fēng)格不一樣,寫代碼不一樣,驢唇對不上馬屁股,無法協(xié)調(diào)好!
11.老板不懂技術(shù),以為有幾個人就可以搞定,沒有測試,沒有質(zhì)量管理,沒有需求分析,瞎搞亂搞,折騰來折騰去。
12.軟件不像其他行業(yè),是需要每行代碼仔細(xì)寫的,仔細(xì)琢磨,不能靠吹就能吹出來的,需要精細(xì)的編寫,最后才能出來結(jié)果,也不是買過來,賣過去那么簡單!
13。公司大部分都是眼高手低的家伙,平時東扯淡西扯淡,不踏實干活,盡搞些虛無縹緲的東西,沒人干實事。
14.公司里往往耕地的牛是不討主人喜歡的,汪汪叫的小狗卻會討主人疼愛,主人更喜歡小狗。但是做項目需要的是牛,不是靠小狗叫叫就可以了。
15.公司氛圍不好,心情也會不好,壓力會增加,代碼量也是會下降。

(十三)一個完整的軟件項目,最起碼要注意什么

  • 1.項目是誰拉來的?如何拿到了這個項目?公司給了多少業(yè)務(wù)經(jīng)費?如果自己是業(yè)務(wù)員,收入會如何?
  • 2.客戶誰說了算?誰是這個項目的關(guān)鍵人物?這個項目的關(guān)系人都有誰,他們在項目中起到了什么重用?
  • 3.項目的工期是多久?都需要哪些功能?客戶經(jīng)理的理想工期是多久?客戶的期望值是什么?
  • 4.項目的成員是如何組織的?人員是如何管理的?項目里分工是如何劃分的?
  • 5.項目的預(yù)算是多少?預(yù)算誰說了算?計劃工期是多少?
  • 6.項目總開發(fā)中的錯誤是如何管理的?
  • 7.項目中遇到的難題是怎么解決的?
  • 8.項目里的都用了什么技術(shù)框架?
  • 9.項目里的技術(shù)分層是如何實現(xiàn)的?
  • 10.后期發(fā)生的問題,是怎么處理的
  • 11.上線是如何進(jìn)行的
  • 12.后期有沒有在挖掘這個客戶,有沒有在挖出個類似的啥項目來?

當(dāng)然還有很多很多可以通過實際的項目過程學(xué)到的有價值的知識點。

(十四)學(xué)習(xí)提高要積極主動,誠信對待別人,別人也會誠信對待我們

在一定的瓶頸階段,我們要學(xué)會想辦法去提高自己,不管是向同事、朋友、網(wǎng)友,都可以進(jìn)行交流學(xué)習(xí),最好是找一段時間面對面的實際交流。并且要誠心誠意,要有交互的過程,不能只是別人教你知識,你也要有可以交換的知識,這樣人家才愿意。

(十五)如何突破月薪大關(guān)

IT軟件人生,人生的幾次升華:

  • 1.能獨立完成任務(wù),能做項目,升華一次。
  • 2.技術(shù)過硬,思路嚴(yán)謹(jǐn),升華一次
  • 3.學(xué)會與別人工事,團(tuán)隊協(xié)作,升華一次。
  • 4。當(dāng)項目主管,升華一次。
  • 5.經(jīng)營一個公司,升華一次。
  • 6.安穩(wěn)下來,有自己的家,升華一次。
  • 7.結(jié)婚,升華一次
  • 8.當(dāng)爸爸,養(yǎng)孩子升華一次!

如果能力不夠還是要用力提升自己,能力夠了可以向上級提出要求,或跳槽都會有薪資的提升。

(十六)辭職也要辭得帥,辭得大家開心

辭職要注意的事項:

1.辭職需要提前一個月說好,最好能有書面的的郵件方式給相關(guān)的領(lǐng)導(dǎo)。
2.辭職的時候,最好先跟部門的經(jīng)理說一下,不要直接跟老板講,管理上比較重視不要“越級”
3.辭職前,把手上的工作都整理好,把能結(jié)束的工作盡量結(jié)束。
4.如果是跳槽到到新單位上任,不要太急,最好等能最長的上崗時間,因為你跳槽了還需要辦理很多事情,例如你的檔案、養(yǎng)老金、公積金等等。而且規(guī)范的單位要初始上一個單位離職的證明,所以不要和上一個公司鬧扳。
5.年底不要輕易辭職,一般很多單位都有年終獎,一般多少都會有一些。
6.不要和同事的關(guān)系鬧僵,因為你的辭職,會導(dǎo)致有些事情要讓別人擦屁股,還有些恩恩怨怨,積累多了,不太好,人總要有一些朋友的,如果你結(jié)婚或辦什么喜事,想請一些朋友來樂一樂,也不會來幾個。
7.需要有一顆感恩的?,我們的技術(shù)、水平、機(jī)會,并不是靠自己的努力,很多是從同事那里學(xué)來的,是公司給的機(jī)會提高了我們的水平。
8.其實一個城市的IT圈子的不大的,很有可能你跳來跳去,還是跳到原來的公司,或者你以前的同事跳到了你公司當(dāng)了部門主管。所以平時要注意不要得罪同事,不要以為好馬不吃回頭草,其實天下大也大,說小也很小。
9.有些機(jī)會是朋友、以前的同事、以前的客戶提供的,所以要珍惜眼前的同事、朋友、客戶。
10.不要說自己的公司的壞話,若你以前的公司很不好,那就代表著你也很一般。
11.就算辭職了,也要學(xué)會說人話,要感謝公司的培養(yǎng),要感謝部門經(jīng)理的栽培,要感謝同事的關(guān)系。你說點好話,公司領(lǐng)導(dǎo)也會另眼看你,說不定你在新單位混不好,混不開,還可以回到原來的單位工作!
12.其實這些軟件公司的老板們相互之間也是一個朋友圈子,也經(jīng)常有來往的,你跳槽到另一個公司,他們也會通過其他途徑了解你在原工作單位的表現(xiàn)、為人、技術(shù)水平。
13.自己也曾經(jīng)當(dāng)過不成功的老板,也能感受到員工跳槽的痛,明明公司和客戶有外包關(guān)系,一看對方的公司比自己的公司有實力,就跳槽到對方的公司。生意也受到損失,培養(yǎng)的員工也都跳槽到客戶那里去了,還怎么賺客戶的錢?所以要選擇好及要的效果是損人利己還是損人損己?最好是哪個都不要損比較好。
14.跳槽從另一個層面考慮,也能變成好事情。
(1)從公司的角度考慮:這個公司不錯,別人肯挖這個公司的員工,說明信任這個公司培養(yǎng)出來的員工。
(2)從員工同事的角度看:跟我們水平差不多的人可以進(jìn)入更好的公司,能拿到更高的薪水,那以后有機(jī)會了,我們也能拿到更高的薪水,會有更好的前途。
15.總的來說,公司是你的跳板,是一個臺階,你需要有點感恩的?。辭職時,跟部門里關(guān)系好的同事吃上一頓飯。
16.辭職從貶義理解就是“逃避責(zé)任,逃避現(xiàn)實”,其實不管是在哪個公司混,都差不多,我們比拼的就是技術(shù)能力、人品、為人處世而已。你在這個公司混不還,到另一個公司也是很難混得開。
17.辭職了,雖然脫離了苦海,但是很有可能進(jìn)入另一個苦海。人走了,也不要一刀兩斷,能維護(hù)的,最好繼續(xù)給維護(hù),能交接的盡量交接。以前的工作都是你的血與汗,別白流了,能讓后人重復(fù)利用,盡量重復(fù)利用。說白了,那也是你的孩子,你真的忍心拋棄你的孩子不管嗎?
18.從原公司辭職,公積金、養(yǎng)老金停止繳納了,最后一個月工資有爭議了,到新公司,又有三個月的試用期打八折。其實仔細(xì)算一下,這個一來一往,差距還是比較大的,所以多給個四五百就別跳槽了。我曾經(jīng)的原則就是要多給個2000到3000才考慮。

(十七)一個老程序員的未來十年計劃及目標(biāo)

廢話不多說,把自己的目標(biāo)列出來,給大家參考參考:

1.現(xiàn)在本科學(xué)歷有點混不開了,我一直沒有時間讀碩士,應(yīng)該抓緊時間讀個碩士來,再考慮是否讀個博士。不管是讀在職的,還是花錢深造都是可以選擇。否則有可能將來很不好混了,掃地的都是本科的了。
2.年紀(jì)也不小了,也該考慮,婚姻和孩子的事情了。
3.現(xiàn)在是公司的中層干部,爭取通過努力工作,拼搏到公司的高層,年收入有個穩(wěn)定的三十到五十萬左右,養(yǎng)家糊口不成問題。
4.將自己的注意力從技術(shù)上轉(zhuǎn)移到人的方面。更多的不是玩技術(shù),而是關(guān)注技術(shù)和管理,關(guān)注身邊的同事和客戶,同事再技術(shù)方面也希望跟上發(fā)展的腳步,不要落后太多,最起碼什么都懂一點。
5.勞逸結(jié)合,身體是革命的本錢,不能為了賺錢不要命,身體垮了,談什么事業(yè),談什么將來。平時注意休息,鍛煉,爭取不得大病,小病也盡量避免。
6.做個全國行業(yè)內(nèi)有點知名度的產(chǎn)品來
7.年紀(jì)大了,對泡妞也沒興趣了,總得有個喜歡的東西做做,例如釣魚、收藏、那我就來個以做軟件為興趣愛好。打發(fā)打發(fā)時間。
8.要成為某個領(lǐng)域的專家,精通此行的管理(當(dāng)然不能說是軟件開發(fā)領(lǐng)域的專家,這個太不值錢,競爭也太激烈的,更新得又快)
9.開拓幾個有實力的合作伙伴,也沒有必要太多,精一些就可以了。
10.關(guān)注純軟件以外的知識領(lǐng)域,例如工業(yè)制造、數(shù)據(jù)采集,指紋系統(tǒng),人工智能。也不指望深入底層,只要掌握一些集成的經(jīng)驗及應(yīng)用就就可以了,畢竟技術(shù)有專攻,跟行家是沒法比的。

(十八)我是如何學(xué)習(xí)一門開發(fā)語言的

1.每個年代學(xué)習(xí)的的途徑不同。我按當(dāng)時的方式來講吧,想到圖書館去找,哪個本子都會翻翻看,然后哪個圖解多,我就會有買哪個的意向。而且圖解多的,看起來不累,還可以有個參考,就算沒電腦再旁邊,也會大致看明白啥意思。還是比較喜歡臺灣人寫的書,幾乎全是圖,沒幾個文字,而且學(xué)習(xí)的效果往往很好。還有就是,我一般購買清華大學(xué)出版社的書,相對質(zhì)量會好點,其次是人民郵電出版社的。
2.學(xué)習(xí)也會很容易造成原地踏步的情況,因為你學(xué)前幾本書的時候,學(xué)到的東西很多,當(dāng)時后面看的很多書,內(nèi)容會類似,所以需要自己把握好。
3.書都自己購買就太浪費錢了,所以我一般是從圖書館中借書來看。
4.參加工作后,我的學(xué)習(xí)方式就有些改變了,經(jīng)常看網(wǎng)上的技術(shù)文章,看技術(shù)文章的時候心里會想著我也要成為別人羨慕的高手,這樣就很有興趣看技術(shù)文章了。
5.其實也不要怕買書浪費,你能收獲到的知識的價值肯定比你買書的價值是要高很多了,前提是你買了就要看,不然就不要買。其次,不要買過時很久的書,因為現(xiàn)在知識更新還是蠻快的。

(十九)曾經(jīng)想學(xué)很多很多,最后發(fā)現(xiàn)自己只能專心學(xué)好很少的那么幾個必殺技

1.軟件行業(yè)最終出來的還是產(chǎn)品,在某個領(lǐng)域不斷地優(yōu)化,干多久就優(yōu)化多久。當(dāng)然要有敏銳的洞察力,能想先知一樣知道客戶將來需要什么,會需要什么,那你就離成功不遠(yuǎn)了。
2.一把寶劍與1000把粗制濫造的刀比拼,最后哪個會勝利?1000把爛刀都拼不過人家一把寶劍。
3.十年后發(fā)現(xiàn),很多東西,丟棄的丟棄,落后的落后,淘汰的淘汰,唯獨這么一個輕量級的開發(fā)工具庫一直伴隨著我的茁壯成長起來。

(二十)程序員12點,你睡覺了嗎

談?wù)勎业男牡皿w會:

1.晚上熬夜,早上起不來,那就是天大的痛苦。早上趕車、擠車,因為你精神不夠很容易出事,或被小偷光顧。
2.你的領(lǐng)導(dǎo)、同事、客戶看到你平時工作精神不集中,對你的評價會比較糟糕,以后有好事情也一般輪不到你,這會影響你的前程。
3.由于晚上沒休息好,工作效率會很低,思路會很混亂,該做的事情沒仔細(xì)做好,迷迷糊糊、稀里糊涂的一天就過去了。
4.一個作息不規(guī)律,邋遢、做事稀里糊涂的人,我就是有個漂亮的妹妹也不會介紹給他。
5.不按時休息,很可能會影響家人。
6.晚上加班了,沒幾個人看到你加班,但是早上遲到了,所有的同事都看到你遲到了。
7.年輕時身體像鐵一樣,等過了30歲,通宵一晚上要痛苦三四天才能緩過來。若年輕時,不珍惜,過了30歲,啥病都找上門來了,賺的錢可能沒藥費多。
8.早上起來太晚,一般來不及洗臉?biāo)⒀溃^發(fā)也沒注意,形象還是要主意好的,能給別人好的印象。
同學(xué)們,經(jīng)常熬夜真的會影響你的前程,還是按時休息吧,除非時要命的事。

(二十一)春節(jié)后被面試和面試別人的經(jīng)歷

  • 1.被人面試
    書中的作者,投遞的簡歷方向都是十年左右的工作經(jīng)驗的崗位,基本都是有面試通知,接著就是成果講解,項目介紹是少不了的。基本也是能上崗位,但是還是選擇了穩(wěn)定的一點的那個。

  • 2.面試別人
    主要從下面幾個方面跟大家分享,對面試官和面試者都是有一定的借鑒價值:

    • (1)簡歷環(huán)節(jié)
      ①曾經(jīng)跳槽單位不要過多,總要有幾個待了很長時間的公司,否則很難有高薪的機(jī)會。
      ②項目經(jīng)歷不要寫那些幼稚的學(xué)習(xí)項目,寫上一百個都是沒有用,一看就是入門糊弄小孩的項目。
      ③項目經(jīng)驗不要太假,工作才兩年,上十個項目,這么可能啊?走馬觀花?能長啥經(jīng)驗?
      ④工作年限、期望工資寫清楚。
      ⑤其他方面,比如個人的詳細(xì)資料,聯(lián)系方式都是要有的,并且排版整齊
    • (2)筆試環(huán)節(jié)
      ①我們不是研究高新技術(shù)的,我們考的是你的基礎(chǔ)功,雖然面試題目很簡單,但是需要仔細(xì)認(rèn)真的寫,代碼也要寫工整些。
      ②簡單的題目不會做,難的題目更不會做,無聊的時候還是要翻翻基礎(chǔ)語法的書,SQL的書等等。
      ③不要藐視簡單的題目,一般都是暗有玄機(jī)
      ④我沒見過筆試很糟糕的,真正干活卻很厲害的人。我記憶中的同事,平時工作厲害,筆試也不差。
    • (3)面試環(huán)節(jié)
      ①首先你不能有口臭吧,再窮也要買個口香糖,把口臭問題解決掉。
      ②帶上紙和筆方面不時之需。有厲害源碼或項目的可以帶上電腦。
      ③頭發(fā)梳理干凈,穿得像模像樣,第一印象是很重要的
      ④無法表現(xiàn)出對編程的熱愛,會是好員工嗎?
      ⑤筆試不好可以理解,但是幾乎沒有一個說得出口的自己擅長的東西,是不行的。
      ⑥溝通能力不好,或者自己的思路表達(dá)不清楚,一般是很難找到合適的工作的。所以平時工作要學(xué)會多交流,別跟你旁邊的同事Q來Q去,學(xué)會直接張口對話不時壞事。
      ⑦我們更愿意錄用那些看上去順眼,性情穩(wěn)定,目標(biāo)明確,有一計之長,工作經(jīng)驗豐富、有實際工作業(yè)績證明的人。
    • (4)老板環(huán)節(jié)
      ①雖然前面兩關(guān)過了基本上不會有啥問題,但是也不要太隨意,上層領(lǐng)導(dǎo)更看重精氣神的表現(xiàn)。
      ②一些細(xì)節(jié)也要注意到:比如,敲門進(jìn)入,坐著不要翹起二郎腿。
      ③老板也會很在乎你的溝通能力,職業(yè)規(guī)劃,價值觀,知識等方面

(二十二)想快速提高技術(shù)水平嗎?你需要找高手,給你的代碼來個深入點評

  • 1.我們國內(nèi)的程序員大多都不善于交流,即使善于學(xué)習(xí),提高的還是不明顯。不少工作了五年的人與工作了一年多的人的水平本質(zhì)沒啥區(qū)別。這種原地踏步的狀態(tài),會讓人感到迷茫。

  • 2.我們大多喜歡看技術(shù)文章,但是不喜歡把自己的代碼拿出來交流,讓高手看。說白了,其實高手也懶得看菜鳥的代碼,所以你得求人家看才行!因為大師給你點評,你就知道,你與他們的能力差距體現(xiàn)在哪里,哪些沒有注意到。

  • 3.記得剛開始工作的時候,別人指出我,有些命名習(xí)慣不好,有些邏輯思維判斷可以更簡單寫,剛開始我是有點抵觸的,但是,后面想想,很多最基礎(chǔ)的東西都沒做好,怎么能算一個好的程序員呢?直到我現(xiàn)在認(rèn)為,哪怕是一個字母的大小寫沒弄好,或包名沒設(shè)計好,都是很不應(yīng)該,很幼稚的錯誤!

  • 4.那些難以提高的人的特點:
    (1)目中無人,自以為是的程序員
    (2)聽不進(jìn)別人的意見,總想搶著講自己的觀點的程序員
    (3)不關(guān)心別人,天天閉門研究,而且著手與研究十年八年才能成功的項目的程序員—世界很大,你正在研究的很多問題,別人做就解決了!
    (4)工作中,沒遇到大師和高手,想交流和切磋沒辦法,只能考網(wǎng)絡(luò)學(xué)東學(xué)西,再買幾本書看,難以掌握系統(tǒng)知識的程序員。

    通常來說,拿來主義往往是見效最快的。有效的溝通交流,比自己努力強(qiáng)上至少5倍。很多時候,研究別人的成果比自己從頭研究要節(jié)省很多的時間。程序員總不是靠吹出來的,還需要靜心寫一寫,但別忽略了溝通交流的重要性。

(二十三)接近60歲的日本IT軟件小老頭在干什么?我們能從他身上學(xué)到什么?

很多軟件開發(fā)人員,好像過了30歲就迷茫了,30歲沒當(dāng)上管理職位就面子過不去了。還記得在上海遇到一個60歲的IT小老頭,看看人家在干什么:
1.整個系統(tǒng)構(gòu)架,都是由他選型的。例如整個系統(tǒng)分幾層,用什么開發(fā)語言大多,當(dāng)然包括數(shù)據(jù)庫的選型。
2.到底用哪些三方組件,例如報表、三方協(xié)議處理軟件、展示控件,而且對他們了解非常深入。
3.整個系統(tǒng)的例子程序基本都是他寫的。并不只是選擇系統(tǒng)構(gòu)架,他把構(gòu)架選好,還能讓它跑起來,并且把范例程序?qū)懞茫ù蠹叶际前惭b他的寫法寫程序)
4.編碼規(guī)范、注意事項,都是由他起草,并且寫得很規(guī)范。
5.幾乎所有的設(shè)計文檔,包括頁面的初步設(shè)計,都是他做的。他知道整個系統(tǒng)需要多少個頁面,每個頁面需要什么功能,有很明確的說明,很詳細(xì)。
6.數(shù)據(jù)庫的詳細(xì)設(shè)計都是他負(fù)責(zé)的,包括每個表、每個字段的名稱、類型、默認(rèn)值等。
7.項目中難題的攻克,特別是控件上的特殊處理,都是這個老頭在負(fù)責(zé)維護(hù)更新。
8.項目的驗收、與客戶的溝通問題,項目的進(jìn)度的安排和跟進(jìn)、費用的計算都是由這個老頭來負(fù)責(zé)。

跟這樣的人一比,那些十年八年的老程序員,簡直是小菜。沒有個二三十年工作經(jīng)驗,哪里來的那么強(qiáng)的技術(shù)能力。但是堅持學(xué)習(xí)二三十年的技術(shù)也不是一件容易堅持的事!
大家就當(dāng)一個參考吧!

(二十四)技術(shù)人員需要先學(xué)會做人,在學(xué)會做事,之后才能成事。以成名得利。

1.其實兩個人做項目,既能體驗工作的樂趣,又能相互學(xué)東西,多了很多安全感,少了不少孤獨感。
2.經(jīng)歷N多失敗也不是什么壞事,只要你不被失敗徹底打敗就好。沒有慘痛的教訓(xùn),就沒有深刻的體會。
3.以前總想用實力來證明自己是最強(qiáng)的。認(rèn)為把實實在在的實力拿出來了,別人應(yīng)該不得不承認(rèn)你的能力。其實,好勝性格的人在剛開始工作往往會碰壁,身邊的同事也大都反感。
4.不管做什么事情,我們要記住一點。首先要得到領(lǐng)導(dǎo)的認(rèn)可,從上而下執(zhí)行的事情,往往會跟順利一些。
5.一些建議:
(1)壓住好強(qiáng)心理。
(2)先不要急于做事,低調(diào)低調(diào)再低調(diào)。
(3)遇到事情不要馬上就和同事溝通,想把思路捋好,試一試可行的辦法先。不要浪費人家大把時間。

(二十五)程序員找老婆—相親節(jié)目引發(fā)的一點思緒

簡單的說吧,在大城市里面的程序員找老婆不容易!年紀(jì)大了,程序員很多都是會去相親。

相親方面的劣勢:

一個方面性情不夠開朗,興趣不夠廣泛,物質(zhì)條件優(yōu)勢不大。而且陪老婆的時間不會太多。

還記得看非誠勿擾,一個片段,一個相親的男的說我是個PHP程序員,然后場上的燈,馬上滅了一大片,像打機(jī)關(guān)槍一樣,主持人都一臉懵逼。這個引人發(fā)笑,但是卻是值得我們程序員深思的!

(二十六)技術(shù)水平很高,但是正規(guī)公司為什么還是不錄用這些人?
其實公司都是希望來的都是大牛,但是也要合適的。

不容易被錄用的情況:

1.越是規(guī)范的大公司多來的人,越不容易被錄用。因為大公司出來的人一般都只懂局限的一部分工作,綜合實力相對很弱。
2.越是規(guī)范的的大公司過來的人,往往不喜歡啥都自己做,已經(jīng)習(xí)慣了做單種工作。
3.越是大公司來的人,薪資要求越高。
4.越是大公司過來的人,資歷高,眼界廣,管理難,你怎么指揮人家未必會聽。
5.一個人的力量畢竟往往是有限的,就是招聘了這么一個大牛,他也未必能在短時間內(nèi)干出重大業(yè)績來。
6.很多所謂的牛人,都是兩手空空的牛人。

容易被錄用的情況:

7.至少有兩年的工作經(jīng)驗。實習(xí)生是很折磨人的,學(xué)得不好,公司又不想要,學(xué)的好的,又很有可能不久就跳槽!
8.做過幾個像樣的項目,手上有實際工作成果演示。很多時候公司不是要你的代碼,而是看你的工作能力。
9.筆試成績好,思路嚴(yán)謹(jǐn),程序也寫得不錯,數(shù)據(jù)庫SQL語句也寫的條理性很強(qiáng)。
10.行業(yè)開發(fā)經(jīng)驗越接近越好。
11.正規(guī)的大學(xué)本科畢業(yè)。
12.薪資要求合理。
13.長相雖然不要求很英俊,但是不能影響公司的形象,看上去干凈整齊。
14.經(jīng)歷過一個完整的項目周期,從項目開始到項目結(jié)束為止,不僅會寫代碼,還能寫一些相關(guān)的文檔,有一定的設(shè)計能力,有一定的溝通表達(dá)能力。
15.肯努力工作,不時思路紊亂型的。水平差點,多教下,努力學(xué)習(xí)也是可以提高的。

其實程序員也就那么點工資,開始也不指望你做出什么驚天地的高深技術(shù)來。當(dāng)然后期發(fā)展看個人情況。

(二十七)對普通員工而言,有效的溝通能力比技術(shù)能力更加重要

體現(xiàn)在下面幾點:

1.有些有難度的東西搞不定,也不跟領(lǐng)導(dǎo)講。不找同事問,不找技術(shù)領(lǐng)導(dǎo)問,只是自己悶頭研究,好幾天也弄不好。其實張張嘴,你身邊閑著沒事的
寂寞高手也是會愿意為你露一手的。這些人可都是過來人,都是有很多經(jīng)驗的。
2.程序模塊寫好了,也不跟領(lǐng)導(dǎo)講一下。寫好后接著悶頭學(xué)習(xí)研究新技術(shù),或看新聞等等。其實你的程序可能還有很多未知的問題,或要修改的邏輯。
3.修改了程序也不跟組員講一下。想怎么改就怎么改。這回讓程序代碼后期維護(hù)很難。
4.修改了Bug也不跟領(lǐng)導(dǎo)講一下。測試人員不知道,修改后量注解也不加上去。。。
5.工作任務(wù)無法完成也不跟領(lǐng)導(dǎo)說一下。不知道是處于面子問題,還是拍別人說自己能力不行,總之一大堆工作沒辦法按時完成,也不跟領(lǐng)導(dǎo)講一下。
其實吧,任務(wù)完不成也是偶爾會有的情況,要提前說一下,好讓領(lǐng)導(dǎo)有個充分的考慮,重新分配把一些任務(wù),讓別人來完成一些,以免耽誤了項目的進(jìn)度。
不能按時完成任務(wù)并不是天大的錯誤,沒有及時匯報無法完成任務(wù)才是天大的錯誤。
6.技術(shù)不行,你可以學(xué),可以模仿,可以copy過來修改。但是溝通能力不行,不時一天兩天就可以改得來的。這就要求你平時要多注意有效的溝通技巧。

(二十八)從代碼質(zhì)量檢查中感受生活的樂趣

由于沒有代碼檢查這個步驟,很有可能導(dǎo)致最后的錯誤被放大很多倍。沒有代碼檢查,既要耗費測試人員的時間,也耗費領(lǐng)導(dǎo)的時間,最后你還得改,可能有些功能自己都不太記得了!需要花一些時間理順?biāo)悸罚?br> 所以及時檢查代碼是很有必要的,要把自己的代碼當(dāng)成自己的孩子來看待,你會愿意自己的孩子,天生畸形嗎?

代碼檢查的幾個參考點:

1.要有比較可行的編碼規(guī)范,這樣可以統(tǒng)一規(guī)范大家,否則不知道誰說了算。
2.大家要有共識,有一個良好的代碼質(zhì)量互查氛圍,每個人都有意識的相互檢查。
3.程序如人。程序有無Bug與做人好壞是一樣的道理,我寫出來的代碼程序就是我人的質(zhì)量。不能容忍代碼程序有瑕疵。
4.要有強(qiáng)烈的責(zé)任意識。我的軟件有問題,哪里還能按時下班,安心的過生活?
5.檢查代碼也需要有高水平與高境界,不只是需要有這個意識。檢查代碼的能力也是可以提升的!
6.一個人努力做事情很重要,大家一起努力做事情更重要。

(二十九)談某些程序頑固的思維方式

下面是一些程序員的頑固思想例子:

1.沒有設(shè)計文檔

誤區(qū):很多人會認(rèn)為設(shè)計文檔瞎耽誤功夫。

其實吧,有設(shè)計文檔還是好一點的。就像向有設(shè)計圖紙,再有模型。。。設(shè)計的程序總要邏輯頁面吧,還有必要的備注呢。若一個軟件,連像樣的設(shè)計文檔都沒有,以后怎么上層次,怎么有提高?
設(shè)計文檔也是對自己思路的一種鍛煉,不管是工具的使用,還是實際設(shè)計。。。

2.拒絕重構(gòu)

程序里面有一大堆命名紊亂,功能重疊的代碼和寫錯位置的代碼,這些很多都是只有當(dāng)事人才清楚的。
很多人認(rèn)為程序穩(wěn)定,不出問題就可以了,但是后期維護(hù)的?有時候辛苦的還是自己啊。

3.拒絕使用現(xiàn)在新的方法和框架

其實就是害怕學(xué)習(xí),一般的來說,新的東西大都有它的價值,舊的東西會被慢慢取代。比如說現(xiàn)在相應(yīng)式編程就很流行哦。要多聽聽比你經(jīng)驗豐富、能力更強(qiáng)的人的建議。

(三十)典型的國內(nèi)小項目經(jīng)驗分享

國內(nèi)項目的幾個典型特點:

1.項目臨時性比較嚴(yán)重,突然要開發(fā)。
2.項目工期短,總共也就兩三個月時間。
3.項目人員變得大,開發(fā)人員不穩(wěn)定。
4.項目成員少,有時是兩個,有時是一個人開發(fā)。

(三十一)創(chuàng)業(yè)前,你要思考的問題

有些人頭腦不冷靜,盲目走上創(chuàng)業(yè)之路,創(chuàng)業(yè)后自己辛苦不說,生意難做,還會遇到很多生存問題,資金問題,人力資源問題,可持續(xù)發(fā)展等等諸多問題。

下面是創(chuàng)業(yè)需要謹(jǐn)慎問題:

1.同一個時間過一個項目時,人的精力會很集中,這樣效率也會高。但是同時做好幾個項目,人的精力就會分散,往往處于應(yīng)付表面的狀態(tài),無法對項目進(jìn)行有力的推動。
2.干自己的事情和干別人的事情境界完全不一樣,往往給你干活的人或者與你合作干活的人,不會那么拼命,不要期望太高。
3.項目人員變動的可能性很大,開發(fā)的周期相對比較長。而且就算自己不出變故,很有可能客戶會發(fā)生變故,整個項目的風(fēng)險系數(shù)比較大。
4.剛創(chuàng)業(yè)時往往很難走產(chǎn)品路線,大多走的時項目路線。每一個項目的個性化需求,業(yè)務(wù)需求差異大,無法充分利用上一個項目的勞動成果。
5.為了可持續(xù)發(fā)展,就得一邊做現(xiàn)有的項目,一邊接洽下一個項目,這樣會耗費很多時間,而且分散精力。
6.若項目不是自己帶,往往很難控制它的規(guī)范性,嚴(yán)謹(jǐn)性,很容易進(jìn)入一個一團(tuán)糟的局面,后期收拾這個糟亂的局面,也要耗費N多精力和時間。
7.一個公司的房租成本、辦公成本、日常經(jīng)營成本、招待費、差旅費等等開支也不少。
8.接下來很可能在不同的城市和行業(yè),要同時打贏好幾場戰(zhàn)爭很不容易。
9.接一個項目容易,但是天天有項目不是那么容易的。開拓一個信任你的客戶比搶別人的客戶更難。
創(chuàng)業(yè)過程中一下子要花費幾萬塊是很正常的事情,和可能折騰幾下就虧空了。特別人沒有明確產(chǎn)品方向的軟件開發(fā)人員,創(chuàng)業(yè)還要謹(jǐn)慎。

(三十二)感受 結(jié)對編程 的威力

其實就是兩個人編程。

一個人編程遇到一定的階段難免會有松懈,并且思路相對狹窄一些。兩個人編程可以一起交流,一起探討并認(rèn)自己的勞動成果時就不會那么無趣了。并且兩個人一起編程,誰也不好意思偷懶,代碼的檢查率也高了不少,出錯的概率會低很多。

親自體驗了一下結(jié)對編程的威力,不錯,值得推廣。

(三十三)用什么心態(tài)對待糟糕的程序員

這些年遇到不少糟糕的程序員。其實正在寫程序的人,普通IT公司大概只有1/3,有2/3不適合當(dāng)程序員。還有部分時比較糟糕的。

為了減少這些程序員的出現(xiàn),可以注意下面幾個方面:
1.招聘時一定要仔細(xì)看簡歷,核實簡歷的真實性,盡量防止把糟糕的程序員招聘到公司中。
2.招聘時一定要有筆試。筆試可以不難,就看基本功如何、表達(dá)能力是否可以,編程能力合格就行。
3.招聘時盡量別一個做主,盡量多做幾輪面試。
4.招聘時一定要有試用期,如果時糟糕的程序員可以把試用期延長。
5.若一個程序員比較糟糕,趕緊向領(lǐng)導(dǎo)匯報情況。長痛不如短痛。
6.糟糕的程序員寫出來的代碼是很糟糕的,后期維護(hù)改進(jìn)是永無止境的痛苦。
7.糟糕的程序員一般思路紊亂。而能把一個不靠譜的人培養(yǎng)成一個靠譜的人,需要遇到高手,如果沒有這個能力還是讓別人去培養(yǎng)吧。
8.遇到不靠譜的程序員,就委婉的建議它干其他行業(yè)。
9.一般來說,不靠譜的程序員與學(xué)歷、工作年限是無關(guān)的。

(三十四)國內(nèi) IT生意難做,想生存發(fā)展大家還得多思考一下,出路在哪里?

國內(nèi)項目的價格已經(jīng)壓得很低了,還有些公司不計成本,虧本的買賣也干,導(dǎo)致現(xiàn)在國內(nèi)的項目生意是非常難做的。賤買賤賣的實在太多了。

希望中國IT行業(yè)的殘酷的競爭環(huán)境能給那些想創(chuàng)業(yè)的開發(fā)人員潑個冷水,若是積累不過還是安心地好好打工吧,生活質(zhì)量會更好。

(三十五)管理重要還是干活重要?

以前習(xí)慣了個人英雄主義,現(xiàn)在更多的是注重團(tuán)隊合作。當(dāng)然,從心底重視團(tuán)隊合作與嘴上講團(tuán)隊合作是兩碼事。

1.我們國家很可能做開發(fā)的人比美國多,但是由于管理水平?jīng)]人家好,我們再辛苦,還是干不過別人,因為缺少正在核心的管理。
2.雖然我們國家缺少非常優(yōu)秀的大牛,但是相對優(yōu)秀的開發(fā)人員還是不難找的。
3.能把一個龐大的隊伍帶領(lǐng)好,指揮好,是非常有挑戰(zhàn)性的,我們又有幾個人能管理微軟、Oracle、Google這樣的公司呢?
作為一個又十幾年檢驗的程序員,我也發(fā)現(xiàn)了,我們?nèi)鄙俚牟皇瞧胀ㄩ_發(fā)人員,缺的是有管理經(jīng)營能力的人。
中國IT行業(yè)差的不是程序員,不是錢,而是精英管理人才。

(三十六)建議一個人做項目,也建議使用版本管理

項目管理的好處:
1.有時候由于操作失誤,程序覆蓋了,找不到原來正確的代碼,那會很辛苦的。
2.若同行看到你自己一個人寫代碼都在用版本管理管理軟件,他們都會覺得你很專業(yè),將來指揮大家也會更容易一些。
3.如果需要別人幫你修改代碼,而你很早就在用版本管理器,在加上幾個人一起開發(fā)會很方便,效率也會很高。
所以代碼要保存好是很重要的。你最好隨時上傳到自己的服務(wù)器中,或公司指定的服務(wù)器中,并且不定時的把自己的代碼放到移動硬盤等設(shè)備中保存。

(三十七)為什么曾經(jīng)的公司不做外包項目

理解:
1.現(xiàn)在很多商家不夠誠信,不遵守合約,在做外包的過程中往往會采取挖墻腳的戰(zhàn)略。
2.若碰到不要臉的、實力強(qiáng)大的客戶,他會主動索要你的員工。
3.做外包的過程中往往會有員工離職的情況,這時又要補(bǔ)充新人,重新理順項目。
4.做外包的過程中,很多技術(shù)、很多做法,都會被客戶學(xué)到,客戶自己學(xué)到了后,很少再有持續(xù)的合作,或者下次合作把價格壓得很低廉。
5.雖然做外包項目能有小的盈利,但是無法長期盈利。因為做成功的東西的版權(quán)都是客戶的,不是開發(fā)公司的。

(三十八)在北京做銀行項目的親身感受

總結(jié):
1.銀行項目對軟件的安全要求比較高,信息的發(fā)送接收都需要有安全保障。
2.需要多重密碼來保證系統(tǒng)的安全性。例如登錄時需要密碼,進(jìn)行數(shù)字簽字時需要密碼,交易時也需要密碼等。
3.所有的數(shù)據(jù)都需要進(jìn)行數(shù)字簽名,采用公鑰、私鑰的方式進(jìn)行不對稱的簽名驗證,以確保數(shù)據(jù)安全。
4.所有的窗體、數(shù)據(jù)、按鈕等都需要有嚴(yán)格的權(quán)限管理控制。
5.其他。。。

(三十九)這幾年養(yǎng)成的幾個比較好的工作習(xí)慣

1.做事情要有計劃,不蠻干,不瞎折騰。
例如,把需要做的事情都列好,哪個做好了,就打個勾,一個個把事情搞定。
2.沒有事情做了,向領(lǐng)導(dǎo)說一聲,領(lǐng)導(dǎo)安排下來的事情做好了,及時匯報領(lǐng)導(dǎo),能做到這一點是很不容易的。
3.每天做了什么記錄下來,每周回顧下,偶爾有空翻看下,以前都折騰啥,以前的折騰是不是可笑,是不是做了正確的事情。
4.平時主張“站立式開會”,大家把需要解決的問題說出來,已經(jīng)做好了什么,接下來做什么,別扯個沒完沒了。站著開會很節(jié)省時間。
5.盡量用電話+電子郵箱的溝通溝通方式,電話溝通及時有效,電子郵件有個依據(jù),能留下痕跡,證據(jù)。
6.至少看《程序員》雜志,溜達(dá)CSDN,博客園,51CTO,了解一下行業(yè)的動態(tài),別一不小心成了井底之蛙了。
7.平時多注意積累,不重復(fù)勞動,不盲目勞動,把自己的勞動成果盡量重復(fù)利用。
8.只為賺錢折騰,不賺錢的事情,就不折騰,人的精力是有限的,折騰來折騰去都會浪費不少時間和金錢。
若你有這些有點,那很容易變成管理型人才。

(四十)能親自構(gòu)架萬人并發(fā)大數(shù)據(jù)量的軟件應(yīng)該是職業(yè)生涯的榮幸

一般的企業(yè)信息管理系統(tǒng),20幾個人用的就可以賣出20萬的價格,當(dāng)然如果商務(wù)談的好可以賣出更高的價格。

做一個大項目,最難的是讓別人相信你能把這個高并發(fā)高壓力的系統(tǒng)搞定,這不是能靠關(guān)系或錢決定的,必須要有多年的積累,用事實證明你有這個實力,而且就算出了問題也能馬上解決好。

那么大項目中需要注意什么呢?

1.首先需要有非常好的寬帶,若要支持上萬人同時錄入數(shù)據(jù),至少要10M以上。
2.需要有一臺牛X的Web服務(wù)器+一臺牛X的數(shù)據(jù)庫服務(wù)器。需要錄入1000萬條以上的數(shù)據(jù),最好采用Oracle數(shù)據(jù)庫,經(jīng)得起考驗一些。
3.需要進(jìn)行適當(dāng)?shù)木彺鎯?yōu)化策略。不是所有的數(shù)據(jù)都依靠數(shù)據(jù)庫訪問,而要盡量多的使用緩存策略。
4.需要一個牛X、經(jīng)得起考驗的數(shù)據(jù)庫訪問層。如果是不好的數(shù)據(jù)庫訪問組件,或者不穩(wěn)定的數(shù)據(jù)訪問組件,很容易導(dǎo)致系統(tǒng)崩潰。如果占用非常大的內(nèi)存,也會導(dǎo)致系統(tǒng)崩潰。
5.需要優(yōu)化分頁存取數(shù)據(jù)的功能,因為有可能有1000萬條甚至更多的數(shù)據(jù)。如果分頁沒做好,也會導(dǎo)致系統(tǒng)崩潰。如果上萬人同一個時間,或者在接近的時間點了查詢某頁的數(shù)據(jù),那系統(tǒng)就真崩潰了。分頁存取需要做到極致才可以。
6.需要進(jìn)行數(shù)據(jù)庫索引優(yōu)化。有索引和沒有索引的性能差異有時候是100倍,有時候是1000倍或更多。
7.嚴(yán)謹(jǐn)?shù)母咝У臄?shù)據(jù)庫事務(wù)處理。由于高并發(fā),而且有些數(shù)據(jù)是需要同時寫入多個表,需要保證數(shù)據(jù)庫的一致性。
8.所有的系統(tǒng)操作日記、異常信息都需要完整記錄下來。當(dāng)系統(tǒng)發(fā)生故障時,可以快速排查問題。
9.需要經(jīng)常檢查系統(tǒng)的各項指標(biāo)。例如各服務(wù)的內(nèi)存使用情況、CPU使用情況,網(wǎng)絡(luò)寬帶使用情況。若服務(wù)器快受不了壓力了,就得馬上進(jìn)行負(fù)載均衡,網(wǎng)絡(luò)寬帶不夠了就需要馬上增加寬帶,不要等到系統(tǒng)崩潰看再去做這些事情。
10.HTML、JS等都可以考慮用壓縮模式傳輸,那樣網(wǎng)絡(luò)傳輸效率會更高一些。
11.其他。。。


最后送給大家一張圖共勉。


共勉:每每看到殘疾人的場景,都會有一些感觸。今天在車上看到兩個殘疾人在相互交流,當(dāng)時感觸也是很深,不禁想起:自己有手有腳,為啥不去綻放更多的色彩,不能等到很珍貴的東西失去了再去后悔,其實之前可以做得更好。總之,不要讓自己以后后悔。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容