從程序員到軟件工程師[2]
當(dāng)時看算法本身的文檔,然后又回頭看線性代數(shù),終于理解了算法,并用程序表達了出來。由于是嵌入式用的,又花了大量時間進行算法優(yōu)化。
后來跳槽時終于嘗到甜頭:
1。薪水高,基本上一應(yīng)聘就是Senior的職位
2。穩(wěn)定,這個一般大街上招一個程序員是做不來的
3。機會多,這個怎么說呢,反正只要是大公司招人,象微軟、Google等,除了問一些語言本身的問題外,基本上就是算法和數(shù)據(jù)結(jié)構(gòu)的問題。
通常面試那些時間你寫源代碼是來不及的,基本上就是寫偽代碼;蛘f明你的算法基礎(chǔ)和思路。答的好一兩句話就解決了。
想走這條路的朋友,我首先建議好好讀讀《數(shù)據(jù)結(jié)構(gòu)與算法:C++版》,里面所有常用算法和經(jīng)典算法及數(shù)據(jù)結(jié)構(gòu)必須爛熟。其次,建議將大學(xué)課本找回來,幾本高數(shù)好好復(fù)習(xí)復(fù)習(xí)!毒性代數(shù)》《概率和數(shù)理統(tǒng)計》《微積分》《常微分》等等。
我們不是大牛,基本上創(chuàng)造不出新算法,但是我們能夠?qū)e人的算法實現(xiàn)或者能把一個具體問題分解成已知的'算法,那么你就是一個很不錯的算法工程師了。
說實在話,語言只是工具,是很容易掌握的。99年2000年泡沫時期,不是很多人突擊那么三個月就可以上路做programmer么。就象刀法是很容易學(xué)會的。要應(yīng)用精熟,也不過是長時間的積累而已。
對語言的理解實際上就是對刀法的領(lǐng)悟,有人是頓悟。但是多用總是會漸悟的。
最重要的是基礎(chǔ),就是數(shù)學(xué)能力,那可是內(nèi)功。可以這樣說,你要想真正和其他程序員拉來差距就在這里。
我朋友的孩子想走計算機編程這條路,考大學(xué)我就推薦考數(shù)學(xué)系!
再有就是多做那些大公司的面試題,一是鍛煉自己的大腦,二是熟悉這些算法的應(yīng)用。
好了,現(xiàn)在能想到的就這幾點,這里給幾個面試的例子,看看能不能用最簡單的描述解答
1.如何生成一組正態(tài)分布的隨機數(shù)?
2.有一個二維迷宮,如何找到出口路徑?
3.有數(shù)據(jù)庫存儲一股票每五分鐘的實時報價,如何生成每小時,每天,每周……的股票價格變動曲線?
====>我的建議答案
1。生成二維隨機數(shù),只取落在正態(tài)分布包絡(luò)線內(nèi)的數(shù)
2。二維連通圖深度優(yōu)先遍歷
3。傅利葉變換
【從程序員到軟件工程師[2]】相關(guān)文章:
程序員、軟件測試工程師簡歷范文10-16
窮小伙從2塊錢到2個億的故事11-04
軟件程序員簡歷范文08-23
象棋如何從入門到精通09-04
從平凡到卓越培訓(xùn)心得01-20
從洗臉到化妝的步驟10-07
從春天到冬天的成語02-11
張向東:從記者到總裁09-19
軟件工程師崗位說明書2篇08-28
Java軟件程序員求職簡歷模板08-26