從面試角度談360和阿里的測試文化

從面試角度談360和阿里的測試文化
最近一年一直都在招聘測試開發,尤其是年後,在傳統的跳槽高峯推動下,面試的時間基本上佔了工作的一半。當然這其中也包含了很多吐槽和抱怨,對HR的抱怨,對候選人的抱怨,對各種奇葩的吐槽。通過朋友和獵頭的推薦,自己也體驗了一些其他公司的面試,一個公司的面試風格和內容,某種程度上代表着這個公司的文化,雖然自己工作的5年裏各種行業公司的面試和被面試都經歷過,但是這裏只談一下360和阿里的測試文化,因爲這兩個公司的測試文化自己相對了解一些,而且它們也具有代表性。

首先需要闡述一下自己的觀點:

1、儘管自己在360幹了兩年,面試和被面試很多次,也承認這樣的測試文化有獨到的地方,但是比較以前的經歷和其他公司,我並不推薦360的測試風格;當然這裏並不談論這個公司,只談它的測試文化;

2、自己去阿里,還是繼續在360待着,都是自己的選擇,並不能說明這兩個公司如何;

3、這裏是純粹的討論測試和測試開發的範疇,並不討論其他的東西,當然包括薪資——這些都是Open的,圈裏打聽一下都瞭解;

我習慣於不定期的去外面參加一些面試,雖然大部分情況自己並不打算換工作,一方面提醒自己跟緊點,別失去活力,一方面參考一下自己在行業中的水平,還有就是接接地氣,看看別人都是怎麼面試的。就我的瞭解,這兩個公司中,360以前的面試流程並不是很正規,我指的是和阿里相比。這種情況現在已經慢慢在好轉,畢竟360不可能以之前管理幾百人的方法去管理現在的幾千人,但是這種流程也有自己的好處,對於看得上的候選人,可以很快定下來,週期很短,也可以留住一些人才。阿里這類公司招聘的流程相對較長,甚至有些人以爲面試沒有結果,所以接受了其他的offer,反正財大氣粗,並不會在乎一兩個人的去留。360測試的面試流程,相對比較簡單,一般3輪面試就差不多了,有時候會有電話提前交流一下,大部分情況下幾輪面試可以合在一起,候選人一趟就可以了;阿里的話一般來說候選人一趟是不行的,而且有些負責人在北京,一些在杭州,怎麼樣也需要候選人跑兩次,算上一開始的電話面試,基本上是5輪。360一般是項目缺人就會有人頭,而且直接招人就要上手幹活,從這點上說,社招的時候360很少爲儲備人才考慮,從QA人員項目中借調就能看出來,還有就是360的校招跟社招很難聯繫到一起——校招並不是很完善,基本上是跟着BAT走的。測試在社招上,個人認爲很難實現突破——雖然360挖人很下本,但是測試這塊並不像開發和產品,畢竟不是創收型的職位,即便挖到了,在當下也很難做出東西。所以在測試文化上,360跟阿里比,並沒有傳承和積累,也沒有一個長久的規劃,這樣的環境適合個人英雄的凸顯,但是對整體測試團隊的建設來說,很難良性的發展,改革起來也很難。

舉一個簡單的例子,我知道一個360校招過來的畢業生,來公司以後被分到一個小組做手工測試,組長的價值觀就是用例寫的多,執行到加班爲止的就給高績效,後來這個學生實在忍受不了這樣的組長,覺得組長不光不懂技術,而且還不願意新的嘗試和提高,他說他們組長說的最多的一句話就是,如果怎麼怎麼樣,那麼只能說360不適合他。這個畢業生後來去了阿里,工資翻倍,現在乾的有聲有色。這個組現在的組員基本上全是女生,乖乖女,讓幹什麼就幹什麼的那種,基本上不懂技術,更不要說寫代碼了。360這邊,一般QA招人的要求就是工作年限多,態度好,肯喫苦,能加班,技術方面是次要的,QA的面試官也不一定懂技術,因爲公司本來就不是技術主導的。

舉這個例子並不是說360的測試團隊多麼差,這樣的團隊靈活性和凝聚力都是很高的,只是作爲一個想要崛起和發展的公司,不能只顧着扛槍打仗,保障也要有力。我和360的開發聊的時候,他們管開發和測試開發叫工程師,管QA叫QA——360的測試團隊裏,測試開發和手工測試是分開的,QA全是手工測試,分佈在項目組裏。對於開發這麼去對待QA,我表示理解——開發做了一個新功能讓QA去測試,要求測出了問題幫忙去定位,測試問開發如何定位,開發說跟蹤一下堆棧,測試說不懂,開發講了測試還是不懂,最終的結果就是開發讓測試隨便去點點算了。我身邊大多數QA都是這樣的,我不否認所有人,大多數QA是這樣的。我不認爲QA的能力差或者智商低,但是他們大多數人的水平,我個人認爲確實還不如一些公司的外包人員高。

在360我有過一段很痛苦的經歷,也可以說是一個適應的過程。360的測試組中,很少主動提出去自動化做測試,這需要從上往下去推動。Ok,領導給了任務去做自動化,但是QA人員沒有測試用例,測試開發人員需要追着QA去收集自動化的需求,最終就是沒有需求——既沒有用例,對具體產品特徵也說不清楚,這讓測試開發很難下手。沒辦法,只能自己研究產品,自己寫架構寫工具,自己找測試機;到環境和架構起來了,又糾結起來,自動化用例怎麼寫?QA不會代碼,那麼就留下一些腳本的接口,python或者lua的,抱歉,QA還是不會,那麼改成xml寫自動化用例,但是QA還是覺得不行。最終的QA的反饋是,如果讓他們自己寫自動化用例,他們情願自己手動點擊到加班。那段時間是我在360最痛苦的時候,當時的辭職信就在郵件裏,隨時準備發給領導。在我工作過的公司裏,一般都沒有QA(或者外包),測試組只有測試開發(SDET),大家在這方面都是有相同的意識去和開發對接,做自動化的準備和設計。我並不是說不需要手工測試,手工測試當然需要,但是需要像在敏捷團隊中的手工測試一樣,而不是像客戶驗收的這種測試,我並不覺得這是大部分QA人員工作的方式和水平,這跟開發一樣,搞內存的和搞字符串拼接的,就不是一個水平。在阿里面試的過程中,還有和一些阿里的同事交流的時候,完全沒有這方面的顧慮,大家有相同的意識,交流起來很輕鬆,這就是測試團隊文化上的差別,大的文化下,即便員工沒有晉升的機會,但是能夠做自己想做的事情,能夠更有效的溝通,能夠發揮自己的真正價值,也是很開心的;也就是我說的那種,給我一個合理的平臺,競爭輸了我也情願。這就是我不推薦360測試的原因,我不否定它的優點,我只是說說我看到的缺點。

筆試和麪試題方面,兩個公司的方式也和他們的文化有直接關係。360一般更看重候選人能不能上手幹活——這並沒有什麼貶低的意思,360整體的思路都是這樣,產品這幾年也都是什麼都抓一把,每個團隊各行其是,產品經理相互之間鬥來鬥去的,除了過時的安全以外,還沒有一個屬於自己的生態圈,這樣的環境下當然不願意投資去培養或者儲備全能技術人才,很多新開發寫的代碼一鍋粥一樣,安卓開發裏不懂虛擬機不懂彙編的大有人在。這和公司的結果導向分不開的,不管長久的看是否結果最優,但是短期是肯定要最好的結果。這方面確實花了不少錢挖人和做獎勵機制。相比來說,對測試方面的關心遠遠不夠,畢竟不是產出團隊。測試的筆試和麪試上,完全看面試官的人品了,有些QA的面試官自己本身就不懂技術,還要偷學幾招去噴別人。平心而論,哪個候選人能沒有缺陷呢?我不懂那些難爲別人的面試官是什麼心態,但是我相信一個好的面試官不會用一兩道自己知道答案的題去爲難別人,從而達到自己內心的平衡。但是總的來說,360這邊的招聘,更看重上手的工作能力和個人價值的體現,但是不同組和不同面試官會有所不同,就我個人而言,我希望候選人的綜合能力強一些,主要是學歷能力,夠聰明,溝通良好,如果不幸筆試遇到我出的題或者遇到我面試,也許一個題都答不對,但是我會讓候選人通過。

手工測試的職位我不太瞭解,但是測試開發基本上跟開發是差不多的,很多時候對基礎知識和廣度的要求,比開發要高,不過基本上就是數據結構,算法,環境配置,網絡技術等。

阿里的面試,相對來說更成熟一些,更強調候選人的綜合能力。一般來說會先有一個電話的溝通,大概瞭解一些候選人整體的技術情況和經驗;接下來的一面會以技術爲主,相關技術和開源的技術一般都會問到,聊之前的項目實現,設計等等,一般都會當場寫一些代碼,也會較深的技術的討論,這輪通常都是職位的直屬leader面;接下來的一輪一般都是職位所在的項目負責人,純技術的東西會少一些,更多的是項目上的東西,包括不同問題的解決方案等等,這時候業務相關的東西會多一些,有沒有筆試的話,主要看是不是視頻面試;接下來一般還有一輪交叉的綜合面試,大體上跟上一輪差不多,可能內容也會覆蓋到前面兩輪,但是不會面試特別精細的東西,有沒有筆試依舊看是不是視頻了。

阿里的這幾輪面試我還算順利,也沒什麼準備,就是臨時發揮。電話面的時候我正好在醫院幫別人看孩子,孩子太鬧也沒辦法調整思路,基本上說說以前的項目,聊了一些底層api,簡單聊了一些技術,最後問了一些東西的實現,用到的函數忘的差不多了,只好簡單說了一下思路,面試完了就把這事忘了;後來HR來通知面試,那天正好休假回來,就直接過去了,主要聊的就是GUI自動化原理,瀏覽器模型,插件原理等等,簡單的寫了一些多線程同步異步和文件數據讀取處理的代碼,聊的挺開心的,也學到了不少;然後沒有休息直接下一輪面試,問了一些業務的東西,還有一些項目的解決方案,視頻的,所以也沒寫代碼,這兩輪基本上從1點半一直到5點;終面是在半個月之後,基本上也是爲了一些GUI的東西,問了一些項目的情況和自己換工作的理由等等。

上面就是我瞭解的阿里和360測試的文化和麪試的一些東西,再深入的東西就不能說了。基本上360的測試文化並不適合測試開發的長久規劃和成長,但是機會多一些,屬於“造英雄”的,對於技術一般但是推動力強的人是個好的選擇,當然會叫的孩子有奶喫,另外360是一個從上到下的管理方式,所以一定要和領導處好關係,在360過得好不好完全取決於你跟哪個領導;阿里的測試基本上屬於國內公司裏最好的了,個人規劃和發展都很好,比較適合於想在測試領域深入發展的人,另外一些技術很牛的測試人才,如果不願意管人或者管項目,阿里也是一個很好的選擇。

最後,送出兩條面試的技巧:

一個是面試的時候要適當的表現自己,對於只有一輪的面試(比如挖人),一般該怎麼表現就怎麼表現,發揮到最好就可以;但是多輪面試的時候,一般第一輪都是技術,而且都是直屬領導,這時候不能表現的太好,因爲有些面試官不希望候選人太牛,但是又不能表現的不好,不然定級會低;後續的幾輪可以放開了發揮;當然這只是技巧,並不一定都適用,很多第一輪的面試官還是不錯的;

第二個就是揚長避短,自己不會或者不熟悉的東西儘量別寫到簡歷上,或者儘量別提;我的簡歷上基本沒有寫過linux和性能測試,面試官問我對linux是不是熟悉的時候,我一般都直接說不熟悉,只做過半年linux的開發,只會用常用命令跟vim,其他像redis什麼的配置都是隨用隨查;問我性能測試的時候,我就說沒做過性能測試,只幫助QA寫過一些併發和性能測試的工具。

基本上這個話題就能談這麼多了,算是吐槽也算是總結吧。完全個人的感受和看法,對兩個公司沒有針對性。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章