1. 程式人生 > >linux嵌入式驅動軟體開發

linux嵌入式驅動軟體開發

我現在是自己做,但我此前有多年在從事軟體開發工作,當回過頭來想一想自己,覺得特別想對那些初學JAVA/DOT。NET技術的朋友說點心裡話,希望你們能從我們的體會中,多少受點啟發(也許我說的不好,你不贊同但看在我真心的份上別扔磚頭啊). 

一、 在中國你千萬不要因為學習技術就可以換來穩定的生活和高的薪水待遇,你千萬更不要認為哪些從事 市場開發,跑腿的人,沒有前途。 

  不知道你是不是知道,咱們中國有相當大的一部分軟體公司,他們的軟體開發團隊都小的可憐,甚至只有1-3個人,連一個專案小組都算不上,而這樣的團隊卻要承擔一個軟體公司所有的軟體開發任務,在軟體上線和開發的關鍵階段需要團隊的成員沒日沒夜的加班,還需要為測試出的BUG和不能按時提交的軟體模組功能而心懷忐忑,有的時候如果你不幸加入現場開發的團隊你則需要背井離鄉告別你的女友,進行封閉開發,你平時除了編碼之外就是吃飯和睡覺(有錢的公司甚至請個保姆為你做飯,以讓你節省出更多的時間來投入到工作中,讓你一直在那種累了就休息,不累就立即工作的狀態) 

  更可怕的是,會讓你接觸的人際關係非常單一,除了有限的技術人員之外你幾乎見不到做其他行業工作和職位的人,你的朋友圈子小且單一,甚至破壞你原有的愛情(想象一下,你在外地做現場開發2個月以上,卻從沒跟女友見過一面的話,你的女友是不是會對你呲牙裂嘴)。 

  也許你拿到了所謂的白領的工資,但你卻從此失去享受生活的自由,如果你想做技術人員尤其是開發人員,我想你很快就會理解,你多麼想在一個地方長期待一段時間,認識一些朋友,多一些生活時間的願望。 

  比之於我們的生活和人際關係及工作,那些從事售前和市場開發的朋友,卻有比我們多的多的工作之外的時間,甚至他們工作的時間有的時候是和生活的時間是可以兼顧的,他們可以通過市場開發,認識各個行業的人士,可以認識各種各樣的朋友,他們比我們坦率說更有發財和發展的機會,只要他們跟我們一樣勤奮。(有一種勤奮的普通人,如果給他換個地方,他馬上會成為一個勤奮且出眾的人。) 

二、在學習技術的時候千萬不要認為如果做到技術最強,就可以成為100%受尊重的人。 

  有一次一個人在面試專案經理的時候說了這麼一段話:我只用最聽話的人,按照我的要求做只要是聽話就要,如果不聽話不管他技術再好也不要。隨後這個人得到了試用機會,如果沒意外的話,他一定會是下一個專案經理的繼任者。 

  朋友們你知道嗎?不管你技術有多強,你也不可能自由的騰出時間象別人那樣研究一下LINUX原始碼,甚至寫一個LINUX樣的傑作來表現你的才能。你需要做的就是按照要求寫程式碼,寫程式碼的含義就是都規定好,你按照規定寫,你很快就會發現你昨天寫的程式碼,跟今天寫的程式碼有很多類似,等你寫過一段時間的程式碼,你將領略:複製,拷貝,貼上那樣的技術對你來說是何等重要。(如果你沒有做過1年以上的真正意義上的開發不要反駁我)。 

  如果你幸運的能夠聽到市場人員的談話,或是領導們的談話,你會隱約覺得他們都在把技術人員當作編碼的機器來看,你的價值並沒有你想象的那麼重要。而在你所在的團隊內部,你可能正在為一個技術問題的討論再跟同事搞內耗,因為他不服你,你也不服他,你們都認為自己的對,其實你們兩個都對,而爭論的目的就是為了在關鍵場合證明一下自己比對方技術好,比對方強。(在一個專案開發中,沒有人願意長期聽別人的,總想換個位置領導別人。) 

三、你更不要認為,如果我技術夠好,我就自己創業,自己有創業的資本,因為自己是搞技術的。 

  如果你那樣認為,真的是大錯特錯了,你可以做個調查在非技術人群中,沒有幾個人知道C#與JAVA的,更談不上來欣賞你的技術是好還是不好。一句話,技術僅僅是一個工具,善於運用這個工具為別人幹活的人,卻往往不太擅長用這個工具來為自己創業,因為這是兩個概念,訓練的技能也是完全不同的。 

  創業最開始的時候,你的人際關係,你處理人際關係的能力,你對社會潛規則的認識,還有你明白不明白別人的心,你會不會說讓人喜歡的話,還有你對自己所提供的服務的策劃和推銷等等,也許有一萬,一百萬個值得我們重視的問題,但你會發現技術卻很少有可能包含在這一萬或一百萬之內,如果你創業到了一個快成功的階段,你會這樣告訴自己:我幹嗎要親自做技術,我聘一個人不就行了,這時候你才真正會理解技術的作用,和你以前做技術人員的作用。 

[小結] 

  基於上面的討論,我奉勸那些學習技術的朋友,千萬不要拿科舉考試樣的心態去學習技術,對技術的學習幾近的痴迷,想掌握所有所有的技術,以讓自己成為技術領域的權威和專家,以在必要的時候或是心裡不暢快的時候到網上對著菜鳥說自己是前輩。 

  技術僅僅是一個工具,是你在人生一個階段生存的工具,你可以一輩子喜歡他,但最好不要一輩子靠它生存。 

  掌握技術的唯一目的就是拿它找工作(如果你不想把技術當作你第二生命的話),就是幹活。所以你在學習的時候千萬不要去做那些所謂的技術習題或是研究那些帽泡演算法,最大數演算法了,什麼叫幹活? 

  就是做一個東西讓別人用,別人用了,可以提高他們的工作效率,想象吧,你做1萬道技術習題有什麼用?只會讓人覺得酸腐,還是在學習的時候,多培養些自己務實的態度吧,比如研究一下當地市場目前有哪些軟體公司用人,自己離他們的要求到底有多遠,自己具體應該怎麼做才可以達到他們的要求。等你分析完這些,你就會發現,找工作成功,技術的貢獻率其實並沒有你原來想象的那麼高。 

  不管你是學習技術為了找工作還是創業,你都要對技術本身有個清醒的認識,在中國不會出現BILL GATES,因為,中國目前還不是十分的尊重技術人才,還僅僅的停留在把軟體技術人才當作人才機器來用的尷尬境地。(如果你不理解,一種可能是你目前僅僅從事過技術工作,你的朋友圈子裡技術類的朋友佔了大多數,一種可能是你還沒有工作,但喜歡讀比爾。蓋茨的傳記)。