程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?

程序員在面試JAVA Web開發,面試官讓其手寫鏈表反轉算法,請問JAVA Web開發,除了基本的排序算法,其他的算法是否用到的很多?又不是搞機器學習、人工智能,其他語言算法並不是用到的很多。說是手寫代碼能夠證明面試者的能力,感覺這是面試官無能的表現,如果這樣是證明能力,那是不是做航天工程師的面試的時候讓其畫一個宇宙飛船來證明他的能力?程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?
10 個回答
李coder
2018-12-11

手寫代碼這一面試流程在國內的一線互聯網公司可以說是可有可無,看面試官個人喜好。有的面試官比較實用主義,根本不會讓你寫代碼的,他們會問一些語言上的基礎知識或者給你設置一個特定情景讓你設計方案。總之,大面上來講,國內應用開發面試硬要求手寫代碼的公司真的不多。


可是國外大廠,像Facebook,google,手寫代碼是必須的面試環節


當然,想去這些地方的人擠破頭,這些公司這樣做,肯也是為了篩選出更加優質的人才。一個偉大的企業,它的需求是60分的人才,但是它會招進來90分的人才。互聯網不是勞動密集型產業,在高速發展的情況下,員工不僅僅能維護好當前產品,更得需要有能力的員工有解決未來問題的能力。所以有遠見的企業,不會因為做的產品用到java web,就去招只會java web的人。


手寫代碼能看出來程序員的什麼能力?


1. 對算法數據結構,算法掌握的熟練程度

很多程序員可能反駁說,什麼數據結構和算法,我上網一搜不就完事了,隨學隨用,不需要熟悉。那我就要問一個問題了,您在說話的時候,會不會去上網查中文?有時上網查算法會不會造成思維的阻塞。我就拿跟同事討論問題舉例吧,你要是特別熟悉某個算法,面對很多搜索的問題,你就可以衍生出很多方案跟同事交流。如果你一個算法都不懂,現場去搜索,你就失去了參與討論的機會。 所以,我的一貫的觀點就是,優秀的程序員需要有一個善於記憶的大腦。


2.寫代碼習慣

這個比較好理解,因為讓你當場寫代碼,你的習慣才能暴露出來。如果是在機器上寫代碼的話,修修補補。但是手寫代碼,一下子就能讓你的習慣暴露出來,比如變量命名不直觀,語法錯誤,代碼風格,是否會崩潰,等等等。anyway, 挺能考驗你的代碼素養的。


3.心裡素質

這個不需要我多說了,因為那種現場感,還有不太適應的手速,都能給你一些看不到的壓力。



當然手寫代碼也有缺點:


有的優秀程序員,儘管對數據結構瞭然於心,算法信手拈來,代碼習慣也好的要命,但他因為個人習慣就是不喜歡手寫代碼。這種人才當然會覺得面試low到爆,也就不屑於參加這種面試了。不過在您diss人家面試官low的時候,也得先看看自己是真的不習慣手寫,還是因為自己基本功不夠紮實,不敢去面試。 我覺得大部分人,屬於第二種情況,包括很多老程序員,老並不代表優秀


歡迎大家關注我!每天把自己的想法分享給大家。

大学生编程指南
2018-09-24

很有意思的一個話題,面試官讓紙上寫代碼,其實筆試做題目是一樣的意思。正常來講程序員這種職業能力如何基本上幾句話就能探個究竟,面試需要做筆試的公司很多,不用筆試直接面試的公司也是相當多,參加筆試的一般大公司或者規模比較小的一些公司,大公司有筆試主要公司流程決定的,需要走的流程比較多,筆者從事軟件行業十幾年,參加面試好像就做過一次題目,很多老程序員,面試的時候看到有筆試,直接選擇走人。

程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?

現在就公司常見的一些考察人的方法在這做個簡單的羅列,筆試,直接面試,上機器寫代碼,正常來講主要這三種方式,可能會採用組合的方式,筆試和上機器寫代碼主要是參照作用,真正起作用的還是直接面對面的交談,可能一句話就能揭露很多技術細節,編程裡面涉及到技術細節繁雜,如果沒有做過或者思維意識不到不可能回答上來,幾個回來下來就大概知道這人的水平如何,然後就這人瞭解的詳細程度做細分的瞭解,正常來講聊的時間越長面試成功的概率越高畢竟大家的時間都很寶貴,誰都不會在一些沒有意義的事情上浪費時間。

程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?

經常和一些技術面試官交談如何面試人的經驗,基本上每個人都有自己的風格,曾經項目組裡面有個架構師面試人的時候就直接撂下很多算法,是個問題裡面起碼有六個以上算法問題,基本上很多人都在他手上卡住了,還有一個哥們比較奇葩,面試的時候專門問專業的知識,而且問的相當仔細,總之蘿蔔青菜各有所愛。所以一個人參加面試裡面還有運氣的成分,還有一個眼緣的問題,一旦和麵試官對眼了,那麼事情就比較好辦了,有些時候技術面試的也很不錯,但在交流過程中溝通不是很順暢,這樣面試成功的概率也不會太高。

程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?

現在很多國內的軟件公司效仿谷歌面試風格,直接上機去寫代碼,看代碼的實現風格,嚴謹程度,以及代碼執行的效率等等,這種基本上很快就能測試出一個程序員基本的代碼能力以及常見的算法掌握程度,由於這種方式比較耗時需要面試官花費一定的時間去審閱代碼,大部分的公司都不會這麼去做,但這種方式對於編程能力的考驗直觀明瞭。

面試就要平常心對待,無論有沒有筆試都要平常新對待,真要水平過關也不在乎這點筆試內容,寫寫畫畫在平常的項目框架設計過程中也是非常常見的事情,水平高的人也不會在乎這些形式的東西。

希望能夠幫到你。

代号六零一
2018-09-23

這個問題,我很感興趣,我以前遇到過相同的經歷。大學剛畢業那會,找實習單位,去了一家互聯網公司面試,面試官一來就說做份試題再找我吧,然後就摔給了我一張大約有20多道關於各種算法和程序邏輯題目給我,我當時有點懵逼,但想了一想,這不會是故意考察下我的反應吧,於是我自信又肯定的答應了他,面試官當時說給我1個小時時間,用手寫裡面的程序,我二話沒說於是就開始進行,面對各種算法題有些我是有點記不住,畢竟在大學期間運用的不是很熟練,自然而然就不會做,這個時候咋辦呢,我就把那些自己會的,還有記得住的都寫了上去,最後剩下幾道記不住的,可把我慌的,心裡當時陣陣失落,一首涼涼在腦海裡漂浮,最後剩下幾分鐘了,快來收捲了,我於是在上面寫了一句話,這一句話不是專業相關,後來他看了我那句話後覺得很有道理,於是說要跟領導商量下表示願意留下我,我當時真是喜極望外啊,真是運氣,但又一想這還真的有點機智才行。

明明如月学长
2018-06-19

我只想說“貧窮限制了你的想象”,作為計算機研究生畢業經歷過校招面試的同學,我覺得這種問題日常正常。


說明面試官low?

題主的描述裡強調算法,但是題目裡卻寫的是代碼,綜合描述來看,所提的代碼主要指算法代碼。

算法本來就是基本功,很多常見的數據結構和算法是一個合格的軟件工程師應該掌握的。

很多名企面試也會問一些基礎,看你的基礎是否紮實。

校招的筆試題算法難度相對較大,複試題大概是《劍指offer》的難度,就是鏈表翻轉這類問題。

這完全無法說明面試官很low,尤其是大公司能當面試官的都不是一般人。

問你高深的問題,你覺得用不到,又會抨擊人家;問你簡單的,你又說人家Low。

我們校招面試的時候現場筆試寫算法是非常正常的現象,我甚至經歷過手寫組賽隊列、手寫設計模式、手寫鏈表反轉等要求。

人家也只能問一兩個有代表性的算法,看看你基礎是否關過,這很正常。

而且根據我們面試經歷,面試官如果都問你簡單的問題,沒有難的問題不是一個好現象,可能認為你難的問題答不上來,恰是你自己技術Low的表現。

一般面試官問到一個技術深度發現你不會了,就不會再追問下去。

對於技術強的人,一般都會問到你的技術極限,看看你究竟會多少。

WEB開發算法用不到

你自己想象的吧?還是在小公司呆慣了?

以前我也有類似的看法,覺得這些可能用不到,但是事實並非如此。

程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?

我在國內一家TOP10互聯網公司做Java開發工程師,剛正式入職一兩週業務上就需要通過一系列位運算來結合一個非對稱加密算法對一些數據進行加密。

而且在公司裡甚至需要一些員工寫一些框架。

算法也很重要,同樣的功能不同的人寫出來的執行效率可能就完全不一樣。

總結

經常聽到有些人說“面試要會造火箭,進去擰螺絲”,雖然有幾分道理。

但是我倒是認為非常有必要,你用不到不代表其他企業用不到。

像虛擬機、多線程、常見算法都是必備的能力,等用到的時候你會發現自己學的是多麼的不紮實。

你啥都會再考慮說別人Low不low,自己如果連基本算法都不熟練,先考慮自己low不low再說吧。

如果你覺得本文對你有幫助,歡迎伸出您的右手點個讚唄!也歡迎評論補充和交流,也歡迎關注我,您的鼓勵是我創作的最大動力。
大碗辣子少
2018-05-04

我不是做IT的,但我對簡歷中寫到“精通計算機操作”的人,都會要求手寫代碼看看。一提筆,基本上斤兩就出來了。有一次,我要求來面試的人這個99乘法表,對方在紙上畫了半天也沒弄出來。我拿過紙,printf…N十行。“我就讓你弄個乘法表而已”

不想早起的虫子
2018-11-16

這個問題問得很有意思,這個問題可以從兩個角度來看:

  1. 不同的面試官自然會有各自不同的考察方式和側重點,說手寫代碼能夠證明面試者的能力,也無可厚非,最起碼這可以證明面試者的基礎是否紮實。相信不管是程序員在學JAVA WEB還是學其他任何語言的時候,都是從記事本寫Hellow World開始的,用鍵盤能夠在記事本上敲出來的代碼,難道用筆在紙上就寫不出來了,相信這不可能吧。感覺之所以產生這個問題,有一種情況是因為很多時候很多程序員都已經習慣了IDE環境下來寫代碼,這本沒錯,不管是用eclipse,vs還是其他什麼IDE,在智能提示的幫助下,可以很大程度的提升編碼效率,但是離開了IDE之後,很多人就不會寫代碼了;還有一種情況是,對於現在很多信息系統的開發,很多程序員都習慣了“天下文章一大抄”,尤其在開源的大趨勢下,很多功能只要願意,百度一下就“信手拈來”,而一旦沒有了網絡,功能的實現就成了空談。
  2. 從另一個角度來看,通過手寫算法,個人面試官在考察你是否具有紮實的基礎,同樣也在考察你解決問題的能力,在真正的工作中,難免會遇到各種各樣的問題,難道在那個時候,就直接告訴客戶我只是做JAVA WEB的而不會其他方面的東西,這顯然是不可能的。
其實對於面試來說,只要自身實力過硬,又何懼任何方面的挑戰呢。

初级软件开发工程师
2018-06-02

俗話說得好是騾子是馬拉出來溜溜,寫代碼最能體現一個程序員的編程能力了。

手寫代碼,可以考驗出被面試人的邏輯思維,代碼規範性,等基本能力。

如果一個程序員手寫代碼都寫不出來,招他幹啥?難道工作上也全靠百度嗎?

今年34月我也跳槽來著,由於我的能力一般哈,沒面過啥一線大廠,就面過二三線的一些場子,騰訊,京東金融,京東商城,鏈家網,貓眼,瓜子二手車,人人車,轉轉,58,都考我手寫編程了。其中瓜子我寫了4頁A4紙正反面的代碼。

我並不認為面試官考手寫代碼low,那些代碼手寫不出來,還認為面試官low的人,才是最low的

听书问道
2018-05-03

這個有兩面性。

牛逼的,當然不怕。但即使牛逼,如果你沒有提前過一遍這些算法,也寫不出來,況且算法眾多,你也不知道出哪個。

不牛逼的,肯定掛掉。這個不用說了,但現在有手機在,如果面試官不在場,很容易吧~~

其實,最好的面試套路就是聊思想。如果思路正確,具體的記憶的東西可以忽略。

另外,從面試中如果能聊出對方的性格、個人方向,就更能輔助判斷了。

最後,看眼緣和臨場發揮也是關鍵。

程序員在面試的時候,面試官讓其手寫代碼,是否說明面試官很low?

ACME63610374577
2018-05-04

如果是面試J2EE程序員...那讓手寫代碼確實很Low...你都可以懷疑這公司是不是幹軟件的...因為J2EE程序員根本不需要掌握任何算法.包括最基本的排序...如果想提高技術水平.一直充分理解Spring.二是精通多層嵌套SQL...

如果不是J2EE的公司...那麼手寫算法很必要...其實就是寫偽代碼...是一種很高效的溝通手段...誰也沒讓你寫的一個錯沒有...HR也不能拿去運行...

朝阳群众编号001
2018-05-04

很不幸我就是在面試的時候要求手寫代碼的面試官。

題目很簡單,比如隨便寫一種排序算法,比如寫一段SQL從兩個關聯的表中取數據並做排序分組什麼的,都是最基礎的,寫過程序的肯定會做。這個是用來篩選一下眼高手低碰碰運氣的面試者的。檢查代碼的時候我並不會糾結於語法的正確與否,只要思路正確就行,寫偽代碼都可以。這樣的確有效果,很多怕我們是自己遇到問題不會解決,想找面試者來幫忙寫代碼的就義憤填膺的拂袖而去了。

相關推薦

推薦中...