高階ios工程師和初級工程師的區別

2021-07-04 07:44:32 字數 1456 閱讀 6017

不管對於招聘和應聘來說,面試都是很重要的乙個環節,特別對於開發者來說,面試中的技術問題環節不僅是企業對應聘者技能和積累的考察,也是乙個開發者自我檢驗的好機會。對於ios和mac開發來說,因為本事還算比較新,企業對於這方面的開發者需求也比較大,所以面試時的要求可能並不是很高,一般能知道一些cocoa和oc的基本知識也就認為可以了。但是對於乙個希望擁有技術力基礎的企業的ios或者mac開發來說,兩到三個頂尖的熟練技術人員,帶領一些還較為初級的開發者,共同完成專案應該是比較常見的構成。

那麼,面試開始。

1.你使用過objective-c的執行時程式設計(runtime programming)麼?如果使用過,你用它做了什麼?你還能記得你所使用的相關的標頭檔案或者某些方法的名稱嗎?

3.core開頭的系列的內容。是否使用過coreanimation和coregraphics。ui框架和ca,cg框架的聯絡是什麼?分別用ca和cg做過些什麼動畫或者影象上的內容。(有需要的話還可以涉及quartz的一些內容)

4.是否使用過coretext或者coreimage等?如果使用過,請談談你使用coretext或者coreimage的體驗。

5.nsnotification和kvo的區別和用法是什麼?什麼時候應該使用通知,什麼時候應該使用kvo,它們的實現上有什麼區別嗎?如果用protocol和delegate(或者delegate的array)來實現類似的功能可能嗎?如果可能,會有什麼潛在的問題?如果不能,為什麼?(雖然protocol和delegate這種東西面試已經麵爛了…)

7.既然提到g.c.d,那麼問一下在使用g.c.d以及block時要注意些什麼?它們兩是一回事兒麼?block在arc中和傳統的mrc中的行為和用法有沒有什麼區別,需要注意些什麼?

9.對於objective-c,你認為它最大的優點和最大的不足是什麼?對於不足之處,現在有沒有可用的方法繞過這些不足來實現需求。如果可以的話,你有沒有考慮或者實踐過重新實現oc的一些功能,如果有,具體會如何做?

10.你實現過乙個框架或者庫以供別人使用麼?如果有,請談一談構建框架或者庫時候的經驗;如果沒有,請設想和設計框架的public的api,並指出大概需要如何做、需要注意一些什麼方面,來使別人容易地使用你的框架。

以上10個問題對於初級或者剛接觸ios的開發者來說,肯定是過於難了。想要答出全部問題,可能需要至少兩到三年的cocoa/cocoatouch開發經驗。而如果想要有所見地的回答,可能需要更長的時間和經驗。這些問題對於技術的積累會是乙個很好的考察,因為如果沒有對這些問題中涉及的內容有過實際使用和體會的話,是很難較完整和全面回答這些問題的。同時,因為這些問題並不像abcd的客觀題有標準答案,表現的是應聘者的理解,所以提問者也必須具備必要的材料或者知識,以應對可能的討論。

在為團隊尋求高階別的開發工程師或者leader類的職位時,這些問題的回答會是對應聘者技術深度和廣度的乙個有效的考察。同樣地,如果你的團隊在cocoa/cocoatouch上比較偏重,但是技術團隊的no.1的工程師卻不能很好地回答這些問題的話,可能也會是需要檢討技術層的乙個訊號。

測試工程師VS開發工程師 打敗開發工程師

測試空間旗下大頭針 出品 今天賀老師組織了一次內部培訓,目的是為了使我們帶領的兩位測試人員盡快的進入公司的專案組 參加部門會議的大多都是新員工,他們公司剛剛找了乙個專門開發 的程式設計師。首先賀老師給我們講解了dms的體系結構。公司產品結構挺有意思的,有終端機 支援gprs的sim卡,gis卡,gp...

devops工程師 DevOps工程師的認證

devops工程師 devops的團隊欣賞使用devops的過程 尤其是在多 和混合雲基礎架構,原因是多方面的。一方面,devops打破了障礙,使敏捷軟體開發和it運營的持續交付成為可能。它在企業中也很流行,因為它可以通過數位化轉型幫助加速業務成果。隨著敏捷實踐和流程深入企業內部,具有擴充套件框架知...

目標Android高階工程師

現在你是初級工程師,但是你想當個高階工程師,所以,你就要給自己定個目標,即 我是要成為高階工程師的男人。有了這個定位,並且努力朝著這個目標去努力,然後內心深處就會有乙個感覺,這個感覺就會成為你的b格,也就是說,雖然我現在是小菜,但是我不是一般的小菜,從而內心有一種自豪感,而這種自豪感會給你提供正能量...