招聘還是炫耀,設(shè)計(jì)模式是裝逼利器?
春天是動(dòng)物們交配的季節(jié),春天也是程序猿們跳槽的季節(jié)。根據(jù)上次吐槽的趨勢(shì),我們公司年后樹(shù)月沒(méi)有半點(diǎn)改善的趨勢(shì),甚至更糟,我還是審時(shí)度勢(shì),閃了。
都快奔三的人了,我還想著要轉(zhuǎn)技術(shù)方向,放棄多年的.NET,想去搞搞iOS,于是趁著躁動(dòng)的季節(jié),怒投了許多iOS職位,不過(guò)基本是石沉大海。最后廣撒網(wǎng),簡(jiǎn)單看看公司介紹,只要不是50人以下的公司或者交通實(shí)在不方便的都投。雖然我iOS的經(jīng)驗(yàn)不多,但是也會(huì)有些公司給我打電話,愿意給我個(gè)機(jī)會(huì)。這兩個(gè)星期來(lái),一共面試了8家,基本上都沒(méi)下文,還有一些不靠譜的,我早就皮了,但是今天這個(gè)讓我好生郁悶。
上年紀(jì)的人記性不好,以前我去面試,公司地址、行車路線什么的都是記在腦子里,但是今天我到了大樓底下的時(shí)候,居然TMD的忘了是什么公司,一點(diǎn)印象都沒(méi)有。然后,我就去了B座(應(yīng)該是A座)找找看,錯(cuò)過(guò)約定的時(shí)間大約10分鐘后,那邊HRMM給我去了電話,問(wèn)腫么個(gè)情況啊,我說(shuō)去錯(cuò)樓了,馬上就到。正好HRMM自曝家門(mén)的時(shí)候,我馬上就記起是什么公司了。
智力退化也許預(yù)示著今天的悲劇。這是一家搞IT培訓(xùn)的,不是大名氣的達(dá)內(nèi)青鳥(niǎo),里面裝修很干凈,我還疑問(wèn),不會(huì)是讓我當(dāng)老師吧,這不是誤人子弟嘛。既來(lái)之則安之,進(jìn)去填表,之后HRMM和我隨便聊了聊,雙方的會(huì)談在友好愉快的氛圍下進(jìn)行,原來(lái)他們還接外包,看來(lái)是當(dāng)不了老師了。再然后HR退場(chǎng),技術(shù)面試官入場(chǎng),我想這個(gè)面試官可能是個(gè)老師吧,他開(kāi)始考察我技術(shù),下面是我郁悶的回憶:
首先問(wèn)的是delegate是啥。delegate翻譯成委托,然后……老衲愚鈍,不知道考點(diǎn)是啥?我弱弱問(wèn),是UITableViewDelegate那種嗎?那邊確認(rèn)后,我說(shuō)delegate是Adapter模式的變種……
“不對(duì),這兩者沒(méi)有關(guān)系”
“我是在objective-c設(shè)計(jì)模式上看到的……”(應(yīng)該是Apress出版的 Pro Objective-C Design Patterns for iOS)
“沒(méi)有一點(diǎn)關(guān)系!”再次直接打斷我。
然后我有點(diǎn)急,臉上覺(jué)得一下就發(fā)燙了,當(dāng)時(shí)有生氣,即是書(shū)上說(shuō)的不對(duì),也可以理性的討論嘛,怎么跟訓(xùn)學(xué)生似的。
他又枴到了C#的delegate,問(wèn)我是啥,還問(wèn)我異步調(diào)用的,要傳個(gè)匿名委托,反正我是沒(méi)明白他的意思,而且objective-c中的delegate都是protocol,類似C#的interface,不應(yīng)該生搬硬套C# delegate的概念吧,恰恰說(shuō)明是adapter呀。
“notification有幾種行為”
“不知道” 這是我第一次說(shuō)不知道,前面還努力對(duì)付。
緊接著問(wèn):“抽象工廠模式是什么?”
“……”我也忘了我說(shuō)的是啥了,不過(guò)各位看官誰(shuí)可以在不看資料的情況下說(shuō)說(shuō)簡(jiǎn)單工廠,抽象工廠,工廠方法的區(qū)別嗎,順便畫(huà)個(gè)類圖?反正我說(shuō)不出來(lái),自從我知道工廠模式的時(shí)候,就開(kāi)始流行ioc框架了,我一個(gè)工廠類都沒(méi)寫(xiě)過(guò)。而且老衲記性不好,雖然以前看過(guò),此時(shí)也沒(méi)一丁點(diǎn)印象。
“為啥叫抽象工廠?”
“……”。我想說(shuō)是abstract翻譯過(guò)來(lái)的。
“不知道”
然后問(wèn)了問(wèn)單例模式的,不知道怎么又到C#的垃圾回收了,他說(shuō)要手動(dòng)GC,我說(shuō)一般不用手動(dòng)GC吧,他說(shuō)他已經(jīng)很有研究了,垃圾回收沒(méi)有想想中的強(qiáng),必須手動(dòng)GC才行。好吧……那本《c# via clr》確實(shí)沒(méi)看。然后老師說(shuō)曾用silverlight做過(guò)網(wǎng)游(我見(jiàn)識(shí)少,有成功的silverlight網(wǎng)游上線嗎?)
反正一塌糊涂,跟訓(xùn)學(xué)生似的讓我很不爽,而且由于第一個(gè)問(wèn)題,我下意識(shí)的認(rèn)為此人不過(guò)是裝貨,甚至有些排斥了。
老師試圖找一下我在.NET方面的亮點(diǎn),又問(wèn)用過(guò) iterator嗎?我說(shuō)就是foreach就是。那個(gè)時(shí)候我已經(jīng)懶得多說(shuō)話了,而且我認(rèn)為這個(gè)問(wèn)題很傻逼,寫(xiě)C#不可能沒(méi)寫(xiě)過(guò)foreach語(yǔ)言,怎么可能沒(méi)過(guò)呢。在老師的繼續(xù)追問(wèn)之后,我蹦了出語(yǔ)法糖,IEnumerator,Next啥的。期間回答了無(wú)數(shù)個(gè)不知道。
“在C#里用過(guò)指針嗎?”我說(shuō)沒(méi)有。難道老師察覺(jué)我是反叛的學(xué)生了嗎?然后開(kāi)始諄諄教誨,說(shuō)是為了效率。好像在C#里寫(xiě)指針很牛逼吧,難道這個(gè)老師其實(shí)個(gè)高手?其實(shí)我在C里寫(xiě)指針還行,只是C#里一般用不到,覺(jué)得大多數(shù)的性能問(wèn)題都可以通過(guò)合理的數(shù)據(jù)結(jié)構(gòu)和算法解決,除非像圖像識(shí)別之類的密集運(yùn)算,不過(guò)我懶得說(shuō)了。而且我是做互聯(lián)網(wǎng)開(kāi)發(fā)的,性能瓶頸在數(shù)據(jù)庫(kù)什么的,也沒(méi)機(jī)會(huì)接觸到這個(gè)。反正說(shuō)了記不清多少個(gè)不知道。最后,我問(wèn)老師是在什么項(xiàng)目在C#里面用的指針呢,他說(shuō)是網(wǎng)游,客戶端,服務(wù)器都用。然后老師說(shuō)我已經(jīng)了解你的情況了。沒(méi)等老師給我個(gè)臺(tái)階說(shuō)等通知讓我走人,我就自覺(jué)的拍屁股走了。
后記:之前都是自學(xué),難免知識(shí)結(jié)構(gòu)有欠缺,一些公司要招熟手我也沒(méi)意見(jiàn)。我覺(jué)得招聘程序員的關(guān)鍵是看思路,有沒(méi)有解決問(wèn)題的能力。因?yàn)榇蠹易龅捻?xiàng)目不同,大家掌握的知識(shí)結(jié)構(gòu)也是不同的,面試官與應(yīng)聘者應(yīng)該交流,引導(dǎo),甚至討論一些沒(méi)有確切答案的問(wèn)題。換句話說(shuō),我隨便出一些題目也絕對(duì)能考住這個(gè)老師,但是這個(gè)老師自始至終沒(méi)問(wèn)過(guò)我以前做過(guò)那些項(xiàng)目,而是像對(duì)學(xué)生一樣賣弄他的設(shè)計(jì)模式的“知識(shí)”。
通過(guò)貴人內(nèi)推,還是找到了一份全職的iOS開(kāi)發(fā)工作,待遇還略有提高,所以后來(lái)得到OFFER,工作中也能用上Mac,心情大好,本來(lái)想應(yīng)該還是回去干.NET的。
還有一家公司讓我復(fù)試,面試的時(shí)候除了問(wèn)一下iOS的基礎(chǔ),也是問(wèn)了問(wèn)一些數(shù)據(jù)結(jié)構(gòu)的問(wèn)題,我答的不錯(cuò),對(duì)于我iOS開(kāi)發(fā)經(jīng)驗(yàn)不足的情況,看來(lái)他們也是忍了,不過(guò)他們動(dòng)作有點(diǎn)慢,拖的時(shí)間有點(diǎn)久,我已經(jīng)答應(yīng)去貴人內(nèi)推的公司了。

浙公網(wǎng)安備 33010602011771號(hào)