第一部分是我當時准備的面試題
第二部分是我的心得
我重點在本文的第二部分說一下這次面試別人的心得體會。而關於第一部分的面試題,文中不提供答案(因為不是本文的重點)
第一部分:面試題
注意,下面這些題只是我准備的題庫。在實際面試的時候我會根據面試者的水平抽出相應的題目來出的。
技術基礎
中級Block
Runtime
類結構
高級
項目
學習
第二部分:心得
A、面試者千萬不要答非所問
如果讓我選一個讓面試官覺得印象減分的點,答非所問應該是首當其沖的。
B、面試者一定要知道面試官問的點是什么。
-
如果在知道面試官問的點,但是自己卻不知道答案的時候,可以提出思路,思考過程。其實有幾次面試者在我的引導下很容易就把答案說出來了,認清問題的點是解決問題的一半。
-
如果沒有理解好面試官問的問題,一定要事先和面試官確認好。
其實這也屬於溝通能力的一點:如果不能保證和對方溝通內容的一致性,自己弄個filter把對方的話都曲解了,以后合作的時候又怎能保證溝通好呢?
C、面試者一定不要來得太早
這里說的來得太早,是來得太早並告知面試官自己已經來了。
因為在約定好的面試時間之前,往往面試官還有別的事情在做,如果他知道你來的很早,就可能會擾亂他的計划。有一位面試者早來了1個小時,結果把我們的面試計划打亂了,而且正好是我的第一次面試,所以真的是有點措手不及。
求職者和公司定下來的時間屬於一個約定,約定是要遵守的。而且遵守約定同樣也是對對方的尊重。如果入職之前都沒能把握好,入職之后又如何能保證把握好呢?
D、實踐與理論的脫節,讓人很不安
能做出來項目,但是基礎知識很薄弱
幾乎每位面試者都能給我展示他做的一些app,雖然沒有很難的功能,但也都算是有板有眼。可讓我比較意外的是,雖然能做出有模有樣的app,但當我問到很多基礎的問題的時候卻答不上來,比如屬性和成員變量的區別,屬性的默認關鍵字,Designated Initializer的概念等等。。
這不禁讓我懷疑他們的代碼的穩定性,更懷疑他們治學,做技術的態度。
雖說技術活需要實踐的磨練,但和理論脫節的技術是鑽不深的。可能有人會說我的面試題過於理論,實際中用不到。但有些時候,在實際開發中遇到的一些問題往往就是因為一些很基本的東西沒有弄清導致的,相信你我都深有體會。
而且,我們都知道技術的提升是階梯式的。什么是階梯式的呢?就是可能我們會有比較長的時間才會有一個突破。但這個突破來的有多快,提升的有多高,是跟平時每個細小知識點的掌握程度是分不開的。
因為知識也是有復利效應的,准確地掌握越多的知識點,在以后的學習過程中,這些知識點相互之間想成的積極作用會越來越大:對新知識的理解更快,對問題的定位會更准,解決問題的方法也會越多。相反,如果你每個問題都得過且過,這些結果的復合作用就會導致你今后很難會有所突破了。
E、真的可能被簡歷騙到
上家的薪資很高,但是實際能力很不符
有一位面試者在簡歷里號稱上一個工作拿了15k,但當我問到NSString屬性使用strong還是copy作為關鍵字的時候他卻說是strong,甚至連delegate都拿不准使用strong還是weak,我就有些奇怪了。
看技術博客和技術書籍的人還是很少的
只依賴於公司里的項目應該是不夠的,畢竟不是每個公司里都有上乘的代碼和技術
面試了大概20個人,但是真正有看過技術博客和技術書籍的真的不多,更別提Github了。不過其中一位面試通過者是有github賬號的,並且有幾個小項目,印象非常好,加了不少分。
我相信在這一行的未來,簡歷里面github賬號和博客絕對會越來越受重視:
1、一方面簡歷真的是應接不暇,而且同時千篇一律,很難找出亮點。
2、另一方面,如果可以把自己的代碼和成長展示給招聘公司,就會使得自己的能力在公司面前變得更加純粹和透明,更有助於找到適合你自己的公司。
以上就是我上個月的面試心得,希望大家多交流,有說的不對的地方還請多指正。