我不是要來拆台的,不過剛好看到覺得有可以討論的就多嘴一下XD
: 第一家是ibm watson
: 他首先叫我上網就一個coding test
: 主要是考java 基本演算法等等
: 後來就一直pending到現在....
IBM根據我同學之前面試過的經驗,如果你沒有身份的就不要浪費時間去投了。
基本上他們現在只會幫PHD辦H1B/綠卡,
如果你不是PHD的話不是直接打槍要不就是錄取了但你OPT做完就走人。
(我那個去Seagate的同學有拿到offer,這個政策就是IBM的面試官告訴他的..)
: 要轉領域來CS的朋友們!! 以下是小弟的建議
: 2. 多練練英文
: Software Engineer 其實很需要溝通 因為常常可能五六人一個team
: Spec開出來 你覺得不行 你要會說服別人
關於這點,既然都來美國了,如果將來要長久生活在這裡英文當然是愈熟悉愈好。
不過如果英文很破的人(如我)其實也不用過於擔心,
只要能夠在面試的時候做得到最基本的溝通,對方懂你在講啥,你也懂對方在講啥,
即便沒辦法跟對方談笑風生也無妨,畢竟你的面試官有很大的機率母語也不是英文...XD
當然在行有餘力的時候多參加一些類似friend speak之類的活動,
(學校或當地的教會通常會有這種活動,就塞一個美國人每個禮拜跟你見面聊天)
絕對會對聽/說這兩方面的能力有所幫助的,
我自己覺得很可惜的是我只有參加一下下後來就沒繼續了0rz
: 3. 演算法 資料結構一定要熟
: 我個人覺得這兩科強就一定有工作 因為現在幾乎都在考這兩種東西
這點跟前面第一點很像,但坦白說我是覺得這個在美國的面試已經被玩到歪掉了。
當然我不是要吐你的槽(或者其他曾經在板上講過類似的話的前輩),
因為很多人(包括我在還沒有來美國以前)都會天真的覺得,
"在美國念CS找工作不就那個leetcode刷完就可以通過面試拿offer了?"
這句話基本上是
要能夠成立的一個前提絕對是你念的學校起碼是Tier 1的。
所以對於那些想來美國洗學歷甚至轉專業的人,當你們看到這種說法的時候,
請注意一下講這句話的人的背景,然後想想自己有沒有本事申請得上這些學校XD
另外就是leetcode刷到倒背如流真的就代表這個人可以當一個好的軟體工程師?
講真的我覺得這基本上就跟"很會考試的學生是不是能夠把研究做好"這問題是一樣的,
答案是什麼我相信大家心裡面都有數,科科
可是沒辦法,美國現在就是這麼在玩的,要想進好公司就是得刷題。
況且在實務上來說,
很多時候你真正要處理的問題很少會是要自己去發明一個新的演算法或資料結構,
(不是說完全沒有,但真正會在工作上碰到的機率說真的非常低)
大部分的狀況都是怎麼挑選適合的演算法/資料結構來解決當下碰到的問題,
我想這才是大部分的公司之所以要考資料結構演算法背後真正的意義所在。
所以我個人是覺得,刷題還是要刷的,但不要傻乎傻乎的以為光是刷題就沒問題了,
該培養的軟體/系統設計的能力,
以及各種domain knowledge還是要花時間去閱讀或透過project的實作來培養的。
以上是個人一點想法啦,總之就是大家討論交流一下嘍XD