天天看點

基礎知識漫談(6):面試官在想什麼

大約四年前,剛開始負責招聘的時候,偶會在面試者身上花去近40分鐘的時間,面試完之後,又不能描繪出該應聘人的全貌,有了幾次不成功的招聘之後,我做了一些總結,本篇文章将從應聘和招聘兩個方面分别讨論。

面試官在考察什麼?專業知識,始終都是專業知識。

基礎知識漫談(6):面試官在想什麼
基礎知識漫談(6):面試官在想什麼

View Code

一般來說,專業我會考察三個方面:基礎知識掌握程度,自己工作中應用到的工具\架構是否熟悉,本公司需要用到的技能有無了解。

工具、架構千千萬萬,你在客場作戰,如何把面試節奏控制在手中呢?

a、寫一份合适的技能表

我這裡不談最漂亮的,不談最專業的,我強調的是,最适合你的技能表。

一個前提:面試官會看你技能表上的所有關鍵字。

你寫出的技能,可能是加分項,也可能是陷阱。在這個前提下,提供一份能讓自己應付自如的技能表,十分必要。

如何界定合适,是一個技術活兒。我這裡提供一個可以實際操作的指南。

html,css,js,jquery,dojo,nodejs,ext,java,.net,php,dom4j,junit,jsonpath,tomcat,weblogic,redis,hadoop,oop,spark,svn,cvs,gitmangodb,jsp,servlet,tcp/ip,udp,spring,hibernate,mybatis,struts,springmvc,intellj idea,eclipse,vs,blablablabla……

看見這一堆,你能不能厘清楚,哪些是前端技術,哪些是背景技術?哪些是解釋性語言,哪些是編譯型語言?哪些是基礎知識,哪些工具和架構?哪些是資料庫,哪些是web容器?等等。

這裡說到的第一個重點就是,合适的分類。

我個人更加推崇按技術類型劃分,比如:

基礎

OOP,GoF,tcp/ip,udp,java

前端技術

html,css,js,jquery,dojo,websockect

後端技術

jsp/servlet,nodejs

常用架構

spring,springmvc,mybatis

常用工具

dom4j,fastjson,svn,git

web容器

tomcat,weblogic

資料庫

mysql,Oracle,db2,mangodb

開發工具

ecilpse,idea

首先說明,做到了合适的分類,也還沒構成一份合适的技能表。

在這份分類裡,很多關鍵字是跨域的,你把git放到開發工具裡,tcp/ip放到網絡裡,又或者把前端背景都總結為web開發類技術,雖不嚴格,也沒有什麼人會反對。

是的,分類本身可以不嚴格,但不能出錯。如果前端技術裡出現了一個php,面試官也會迷之沉默吧。

第二個重點,合适的掌握程度。

對這些技能做一個了解程度的分級,說明一下常見分級在面試官眼裡的含義:

了解 也就是用過接觸過的程度。

熟悉 能靈活使用該技術,知道相關的基礎知識點,能搭建、配置,能解決常見錯誤。

精通 這個可不得了,你得有作為“專家”的自信才能如此填寫,也就是,不管你遇到沒遇到過的問題,問你,你就理所當然的要解決。

我這裡提出幾個原則:

但凡你有精通的技術,一定要特别突出的寫在最前面,勾引面試官提及相關問題。

但凡隻是你了解的技術,一個字都不要談,它們都可能是扣分的陷阱,當然它們并不是沒用,可以在面對面交談的時候自己主動提及,為什麼要被動的讓對面來提問?

但凡是你熟悉的技術,你得确定自己是否真正熟悉,有什麼好辦法呢?答案是寫blog,很多東西你以為你懂了,一旦下筆描述,就會遇到困難,寫blog也是個二次學習的過程,這個過程會讓你對原理性的東西有更多的思考。

懂得了以上,那麼,上面那份技能表我們可以做一個篩選,并加上描述。比如:

精通Java和面向對象程式設計及其設計模式

熟練掌握html/js/css前端開發技術,熟悉jquery及相關UI庫

熟悉servlet原理,熟悉ssh架構

熟悉tomcat

熟悉标準SQL文法,熟悉mysql資料庫,熟悉mangodb資料庫

熟悉dom4j,fastjson

做完了這些,技能表就精簡到了一定程度了。這份技能表達到合适了嗎?

第三個重點,合适的技能。

有一些技能,并不合适寫上去。

舉一個例子,我經常看到有人說,我熟悉XML。

XML,我們知道,它是一種描述性語言,在開發中我們長用來作為序列化工具使用,它僅僅是個“描述”而已,那麼,你到底是熟悉它什麼呢?

有人可能說了,我熟悉dom4j,也熟悉xpath,那麼這還稍微靠譜一些,xpath和正規表達式,我們都可以歸納入“基礎”一欄。但是拿dom4j出來說,就不大合适。

為什麼?因為它也僅僅是個用于解析XML的工具,一個合格的程式員,是要做到看一眼它的API就能自行使用的。

總結,它們使用起來太簡單,不值一提。

是以,不要提。

不過呢,凡事有兩面性,簡單的東西也說明其容易了解,如果能談出原理性,就又轉變為了加分項。

比如“熟悉XML設計規範”,至少就要求你知道<?xml ?>标記裡每一個屬性的含義和用處。

比如“懂得dom4j原理”,至少就得知道dom4j的模組化思路。

最後一個重點,漂亮的布局。

這裡我用了漂亮,不是合适,我們來看看上面的技能表,其實,“分類資訊”這一列,就很多餘,隻要你合理的排布,對方自然是知道這一欄的,“熟悉”“精通”其實又表達得很模糊,對于不同面試官,界定的方式可能又不一緻。這裡推薦五百丁的履歷模版,比如這張技能表:

基礎知識漫談(6):面試官在想什麼

b、把面試範圍控制在自己的主場

一般情況下,做到了上述部分,就算是劃好了道兒。

“我遇到個傻X面試官,老問我前端問題,我搞大資料的,問毛線前端!”

沒遇到過也聽說過這種事吧?

解釋一下這種情況的産生,面試官的水準不一定比你高,也不一定有很多招聘的經驗。于是,有那麼部分負責招聘的技術,就愛把問題往自己熟悉的方向去引,又或者,幹脆就是想問倒你。

面試官平時也就是個程式員,你所熟知的東西可能不是他的領域,如果讓他開口問你,難免會不歡而散。這裡提供一種溝通方式:“你說的這方面我不熟悉,我是做XXX的,要不我和你說說XXX和XXX?”

一般來說,如果不是傻,面試官是不會拒絕的,不管領域相距多遠,都還是會有思想上的相通,說得有理沒理都能展現出來。

做到這些,面試的節奏基本就握在了你手裡,對于你自己熟悉的内容,如果做不到侃侃而談,那,就是另外的問題了。

先解釋幾個了解上的誤區。

a、招聘應該看水準,而不是學曆

專科裡也有優秀人才,這是不可否認的,但是個人去應聘是個人的事,公司要招聘是統計學上的事。假設不同學曆的人才排布滿足正态分布的話,高學曆的峰值肯定是在低學曆的正方向的。

學曆門檻能用來節約面試精力,并不是針對個人。對于個人而言,如果沒有學曆,提高能力當然還是正事。

b、堆砌使用過的架構并不能增加你面試的好評

對于這些架構的了解才算。不要追求寬泛而全面,全面不是壞事,一旦被人問及了不那麼熟悉的東西,很容易被連帶着否定其他優點。深入解釋一個問題,比“我什麼都懂”是有優勢的。畢竟,能深入了解一門技術的,了解其他技術就很容易。反之不亦然。

c、形象和談吐,很重要。

這是個“看臉”的世界,如果沒有好的外表,請做到整潔幹淨,如果不擅長言辭,請放慢語速,清晰的有條理的表達。

是為了給面試官好印象嗎?不光如此,在技術達不到忽視一切的時候,幹淨的外在、清晰的表達,就不會被人質疑團隊融入能力。

d、不要怕談工資

但凡水準足夠,隻管開出自己期望的工資,工資估算方式之前已經提過了。如果怕工資談低,就不要說出會讓自己後悔的數字,如果怕談太高了找不到工作,正常的公司會對心水面試者回複“我們隻能開這個工資,但我們有XX獎勵,XX獎金,你看看能不能接受”。

e、畢業生基礎最重要。

在随意找工作之前,請打理好自己的基礎,做好萬全的準備。公司招不到人,和求職者找不到工作,是同時存在的。在全國各地,有大把的工作時間靈活、薪資豐厚的工作等着你們,不要急于一時,靜下心來,把學過的基礎知識概念背一背,談工資的靈活性就大些。

基礎不好的同學,請抛棄我很努力我學習能力很強,我可以不要工資,給我一個學習機會就好的想法。

基礎,是所有問題中最重要也是最簡單的一環,如果在學校時候沒有學好,要怎麼讓人相信你的努力和學習能力呢?

一個剛畢業的學生,如果基礎不紮實,對于公司來說,可能是負資本。一方面,需要一個老員工來做教育訓練,另一方面,成長性可能達不到期望。

一個教育訓練公司的教育訓練周期也就半年,如果隻是複習基礎,難道你的成果會比教育訓練公司那種什麼都教的要學得少麼?

話又說回來,畢業生請把握第一份工資,這不是錢的問題,而是會給開低價的公司不會認真培養你,你願意把社會生涯的第一年浪費掉麼?

這一條太重要,是以單獨放這裡說。對于不了解的東西,直白的說不懂就好了。

“有個誰,啥都不懂,靠吹就拿到了高工資。”

相信這種事情的,請不要做程式員了。

1、不要拿個例當整體;2、那是别人不是你。

如果不是基礎知識,一般是不會扣分的。有時候,是該公司要求“懂XX技術”,有時候是面試官的話術陷阱。最忌諱的就是說謊,猜中了沒事(猜的中嗎?),猜錯了,你覺着面試官會怎麼想?