程序员成长之路 java面试指导(作者说的极好要看) 静下心看
https://blog.csdn.net/weixin_41780944/article/details/79429769
從面試官的角度分享一些后端校招經(jīng)驗(作者說的極好要看)
https://blog.csdn.net/qq_34337272/article/details/80875016
除了手寫代碼和計算機基礎(chǔ),剩下的方面都是可選項,很多碩士應(yīng)屆生,研究生期間和導(dǎo)師做某個方向的研究,從來沒寫過后端應(yīng)用,那只要基礎(chǔ)知識很扎實,研究做的也不錯就可以了。還有一些同學(xué)正好相反,基礎(chǔ)知識比較差,但是動手能力很強,自己做過許多東西,這類就要求關(guān)于項目的問題回答的很好,表現(xiàn)出很強的自學(xué)能力才能通過。?
項目的問題我舉個例子,如果一個同學(xué)做過微信公眾號的支付部分,那我會讓他畫一下微信支付的流程圖,然后問從微信的角度考慮,設(shè)計流程時,如何防止用戶篡改價格,如何防止重復(fù)支付,如果網(wǎng)絡(luò)連接斷開了,怎么獲取支付結(jié)果,如何防止重放攻擊等等。真的做過項目的同學(xué),至少流程圖是能畫出來的,但是這遠(yuǎn)遠(yuǎn)不夠。能夠從微信支付的流程中學(xué)到支付 API 的設(shè)計思路,并且在自己設(shè)計 API 的時候能夠用上,才算是學(xué)習(xí)能力強的候選人。?
另外還有一個同學(xué)參加微軟的創(chuàng)業(yè)大賽做了一個 App,比一般同學(xué)練手做的 App 完成度高很多。另外,如果有興趣,自己鉆研一些開源系統(tǒng)也是很好的加分項,比如有些同學(xué)精讀 Linux 源碼,面試官問不出極限,肯定會給很高的評價。
https://www.nowcoder.com/discuss/56158?type=0&order=0&pos=26&page=1
?
?
https://www.tianmaying.com/qa/317
提問:非科班,Java應(yīng)該怎么學(xué)才能在校招中拿到好的offer??匿名用戶 于 3月9日
java
0??1?
回答
David?回答于 3月9日?0 瀏覽?0 評論
轉(zhuǎn)帖我知乎上的回答
我更多從招人的角度給你幾點建議。
我招一個Java程序員,我大概會這樣來考察一個人。
1、至少你得過了筆試或者網(wǎng)上的編程測試吧。面試機會先拿到。既然目標(biāo)是比較好的Offer,一般還是會考察你CS基礎(chǔ)知識的。去看看各個公司的筆試題,網(wǎng)上到處是。算法和CS核心課程你還是應(yīng)該去復(fù)習(xí)的。
2、喜歡編程的人,大都會折騰個Github項目之類的,哪怕是個簡單的博客應(yīng)用,如果我看到你會去搗鼓這些東西的話,我會認(rèn)為你是一個有編程熱情的人,很加分。
3、有一兩個做得深入的項目很加分,去爭取參與實際項目機會,身邊有這樣喜歡折騰的朋友那就再好不過了。實在找不到自己去實現(xiàn)一個網(wǎng)站或者App,部署或者分發(fā)出來,活生生的東西可以增加說服力。找個項目創(chuàng)意還是很容易,沒這方面Sense,山寨也行,練手而已嘛,做得好說不定成了創(chuàng)業(yè)項目。
4、除編程之外,有一兩種你深入理解和掌握的技術(shù),比如Java求職的話,你對Spring的整套體系甚至源碼理解很深入可以大大加分。技術(shù)涉獵比較廣泛的人,是比較受歡迎的。
5、趕緊找實習(xí)吧,實習(xí)進入好公司的門檻相對低一些,積累經(jīng)歷的同時,內(nèi)推也更有機會。
6、你確實數(shù)學(xué)功底不錯的話,怒刷算法也能增加一些機會。算法更多是用來考察邏輯思維和學(xué)習(xí)潛力的,如果你有編程競賽背書的話,會大大加分;只是我出題時算法答得好,有加分,不多。對一般人而言,讓算法別給你減分就行了。
綜上,套用藍(lán)海戰(zhàn)略的術(shù)語,我給你的戰(zhàn)略是:
在沒有“名校背書”、“編程競賽獲獎”等價值點的情況下,在“算法”和“CS基礎(chǔ)知識”這些價值點上至少要不低于競爭對手的平均水平,在“技術(shù)熱情與好奇心”、“實戰(zhàn)經(jīng)驗”這兩個價值點不妨重點突破。這樣的話有機會拿下一線IT公司的Offer。
如果希望想在“算法”這個價值點上尋求突破,參考上面所說的第六點。
想翻墻去北美,就忽略上面全部所說,算法是命門,可以看我一個同學(xué)的攻略:american-dream-of-coders
其它幾個觀點,供你參考:
關(guān)于非科班:
就編程技能而言,很多非科班出身的人都做得非常不錯,從求職來說的話完全可以不輸科班。
科班出身,一個優(yōu)勢在于學(xué)習(xí)了很多計算機專業(yè)的核心課程,這些課程的確是幫助我們建立計算機修養(yǎng)的東西,潛移默化地影響和提升我們的技術(shù)底蘊。就跟一個人看書多也能增加人文修養(yǎng)類似。法國人學(xué)數(shù)學(xué)都是一種修養(yǎng),所以出大數(shù)學(xué)家。同樣和人文修養(yǎng)類似,計算機修養(yǎng)對我們職業(yè)生涯的影響卻并不是立竿見影的,大部分情況下可以說是不影響求職的。一個現(xiàn)象就是即使CS科班出身的人,最后往往也會發(fā)現(xiàn)實際工作中未必會用到學(xué)到的知識。我們要辯證地看待這一點。舉個例子,編譯原理可能你工作中從來不會遇到,但是深入學(xué)習(xí)過編譯原理的人,對“語言”的理解一定會更加深刻,你學(xué)習(xí)各種語言(不特指編程語言)或者需要去設(shè)計一種描述語言的時候,你會對如何去構(gòu)造、解析和解釋一種語言會更加得心應(yīng)手。甚至看待生活中的語言也會有全新的視角。
一個非科班出生的程序員,隨著編程技能的精進,解決問題的深度和難度增加,肯定也會逐漸涉及到計算機核心課程中的東西,比如操作系統(tǒng),高級的數(shù)據(jù)結(jié)構(gòu)、編譯原理等。這個時候其實所謂的非科班,在我看來已經(jīng)是科班了,不過是聞道有先后而已。
關(guān)于學(xué)歷:
名校背景找工作必然是加分的,在短時間內(nèi)考察一個人,教育背景是對一個人學(xué)習(xí)能力和潛力的一個很重要的背書。
中下游211的非CS專業(yè),對于稍好的公司來說,你在學(xué)歷這個因素是略減分的。但這只是一個因素而已,技術(shù)熱情、算法基礎(chǔ)、編程語言的深入程度、實際項目經(jīng)驗這些方面做好,加權(quán)一下綜合得分就上來了。從培訓(xùn)機構(gòu)、??频矫S畢業(yè)生,拿到好Offer的人都有。
說到學(xué)歷問題,我們來說深入一點。其實所謂的“綜合得分”是一種最理性的判斷。但是面試官往往很難做出綜合的判斷,甚至有唯學(xué)歷論者,這不能全怪面試官,而是人的一個基本特質(zhì)所決定的。
一個英國哲學(xué)家曾經(jīng)說過:文明的進步就是人們在不假思索中可以做的事情越來越多。人的行為常常會被一些很局部的特征所觸發(fā),而這種觸發(fā)很多情況下自己是意識不到的。這是社會心理學(xué)經(jīng)典著作《影響力》的一個核心觀點。拿動物來舉例子,火雞正常情況下會攻擊臭鼬,但是一個能夠發(fā)出小火雞“嘰嘰”聲的玩具臭鼬,卻會讓火雞媽媽將其攬入懷中。
所以學(xué)歷很多時候就是這樣的“嘰嘰”聲,在一部分面試官的眼里不自覺地就已經(jīng)基于學(xué)歷做了一個判斷,“綜合得分”可能并不起太大作用,而他們自己甚至沒有意識到這一點。
我也看到過“唯算法”論者,我一個同學(xué)曾經(jīng)遇到一個某知名頂級互聯(lián)網(wǎng)企業(yè)的面試官,熱衷考面試者算法難題,在一個很生僻的數(shù)據(jù)結(jié)構(gòu)(即使ACM競賽中也幾乎不會出現(xiàn))上糾纏很久,這個同學(xué)最后沒有寫出來被拒了。這個同學(xué)是一個綜合實力非常強的人,即使算法上也是競賽級的水平,但是碰到這樣的“火雞”也無奈之。他現(xiàn)在在另一家同級別的北美公司工作,這樣的面試官畢竟少數(shù),也不要太擔(dān)心。
可能的解釋是:這類面試官的經(jīng)歷讓他們潛意識中對“學(xué)歷”和“算法”有了較深的體會,甚至成為一種情結(jié),在某些場景下就會成為一個極強的局部觸發(fā)特征而影響他們的行為。
為什么我給你的戰(zhàn)略里,提到了可以從“技術(shù)熱情與好奇心”來突破呢? 其實也是對這樣一種原理的應(yīng)用。如果在面試過程中體現(xiàn)出來你熱愛技術(shù),喜歡嘗試,涉獵廣泛,往往容易成為一個觸動面試官的特征。也舉個例子,我一個師弟是個Java程序員,去面一家國內(nèi)應(yīng)屆生薪資水平可能是最高的一個公司。面完后我問他情況,各種技術(shù)問題(更多C++方面的)他答得很慘,但是說完不久就被通知錄用了。我要是面試官也是一定會錄取他的。因為從本科開始他就折騰各種項目,你跟他聊天就看得出來是有很大編程熱情的人,這樣的人一定可以勝任任何技術(shù)工作。(他的競爭對手幾乎是同級別教育背景,所以學(xué)歷這項在這里不構(gòu)成很大的優(yōu)勢)對,寫到這我想到了Geek這個詞,你應(yīng)該讓自己更Geek一些。不是留個長頭發(fā)就Geek了,Geek體現(xiàn)在你Github賬號的行為記錄上,體現(xiàn)在你對各種技術(shù)的嘗試經(jīng)歷中。
扯遠(yuǎn)了,最后再說一點。
關(guān)于第一份工作:
IT行業(yè)第一份工作即使不是特別滿意,也不用太擔(dān)心,積極努力總能達(dá)到目標(biāo)的。繼續(xù)舉例子吧,親朋好友搞IT的也無數(shù),最不缺的就是例子:
-
A,??茖W(xué)校,第一份工作月薪3K,做ActionScript開發(fā),一年后跳槽頁游公司,兩年之后月薪已經(jīng)到20K。
-
B,普通院校畢業(yè),第一份工作在一個國企性質(zhì)類的軟件公司,Java開發(fā),月薪5K,兩年后跳到IBM。
-
C,普通學(xué)校,第一份工作非IT,某培訓(xùn)機構(gòu)學(xué)習(xí)半年,iOS開發(fā),入職順豐,月薪10K+。
ABC有一個相同的特點就是有上進心。其實有技術(shù)熱情,愿意沉下心來學(xué)習(xí),普通資質(zhì)的人工作幾年之后,跳到不錯的公司工作也是問題不大的。大一點說,各個行業(yè)也都是如此,CS轉(zhuǎn)去做其他行業(yè)的也都有很多做的很好的例子。很多事情也都是分層跨越,不是一蹴而就的,步子大容易扯著蛋,這也是積跬步的力量。比如先找到實習(xí),正式工作就有一半著落了;比如本科沒考上名校,可能研究生就考上了;畢業(yè)沒有進入BAT,小公司努力鍛煉幾年你就追趕上BAT的伙伴們了。
總結(jié)
以上是生活随笔為你收集整理的程序员成长之路 java面试指导(作者说的极好要看) 静下心看的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果手机如何设置微信手势密码(苹果手机微
- 下一篇: mc查看状态快捷键(mc调试快捷键)