一篇關於我春招的記錄git
歷經 33 天,我終於找到了工做。這一個月對我來講多是一次相當重要的一段時期,因此我有必要好好的記錄一下。固然,這裏也有不少乾貨,有關 Android 面試的一些細節問題我也將努力的經過回憶陳述出來。可能篇幅很大,廢話較多,但一樣細節也會不少,若是看這篇文章的人是最近要找工做的程序員,那麼我以爲這篇文章有你想知道的東西,特別是工做經驗不是不少的 Android 程序員。程序員
由於我這一次是一次自做主張的裸辭,因此這一個月壓力仍是很是大的。不過通過努力仍是找到了本身比較滿意的工做,還有 3 個月的試用期,但願能再接再礪,經過本身的努力能在公司立足下去。具體我離職的來龍去脈和本身的想法請參考我以前的一篇博文:github
不過,在說到 3 月份這段找工做的經歷以前,我想先用這篇文章回顧一下另外一件極其重要和有意義的事。算法
實際上在 12 月的時候,我已經接到過一次面試了,並且是一次很不通常的面試,一來是由於算上最後的終面,一共有 4 輪技術面試,難度很是大,技術範圍特別廣,我雖然被千虐萬虐,但更多的是收穫。但致使此次面試很是不通常的緣由還有一個:數據庫
面試個人公司是 「小米」,面試個人人是我關注挺久的一個大牛**「Gityuan」**。編程
當時在無錫項目組,項目已經上線,事情也不是不少,因此我就把 「某聘」 下載下來,把本身的簡歷和一些信息上傳了上去,但也沒有投簡歷,由於是我第一次用這個軟件,並且當時也沒有下定決心要換工做,因此填好信息後就沒有管過了。設計模式
使人驚訝的是,過了兩天,小米那邊主動打電話了,但願能作一下進一步的溝通。我當時驚呆了,後來我才知道是由於那些互聯網招聘軟件是一個雙向選擇的軟件,若是有企業經過搜索以爲你符合要求,也會主動聯繫你的。緩存
不過怎麼說,當時知道消息的我很是驚喜,但更多的是緊張,由於這徹底出乎個人計劃,當初實際上我給本身定了一個比較具體的複習計劃,準備等本身準備好後再主動投遞簡歷,這下好了,人找上門了,並且是個大戶,本身卻一點準備都沒有,但也不能隨便就鴿了別人,畢竟這麼好的機會在臉上怎麼說都得嘗試下,並且打電話在週四,第一輪電話面試在下週一,臨時抱抱佛腳也不是不能夠,因此後面幾天我就找了一些 Android 的常規面試題看了看,順便看了一些「數據結構」和「Java」相關的知識。網絡
同時,我也具體的看了下此次「小米」招聘崗位的具體要求,發現崗位是作 「MIUI系統」的相關開發的,而且「算法」和「數據結構」有比較高的要求。看來,有可能會問到一些「Framework」相關的知識,我不由有點失落,老實說,那時候我對這方面徹底沒有深刻過,天天在趕項目,就算是學習也是學習了不少應用層的一些用法方面的知識。對於源碼,一來個人能力尚未達到;二來個人確是沒時間研究這些和項目關係不是很大的知識點了,試想當時天天加班到那麼晚,項目時間實在太緊,不容許我抽時間去學這些東西,通常只會在作項目過程當中遇到問題纔去現學現用。
就這樣稀裏糊塗複習了幾天到了週一,由於約好了在下午 2 點的電話面試,我特地和經理請了假,而後中午吃完飯後就在寢室等待。爲了讓本身保持專一,我特地帶了個耳機插在手機上,而後就這樣坐着等,那時候感受每一秒都是那麼煎熬,由於那即將是我第一次技術面試。
2 點整,電話來了,一個擁有很成熟聲音的人打來的,一聽就是一個作了多年技術的老手,他先讓我自我介紹了下,而後問了下我如今在作的項目的業務,針對這個項目的一些具體功能提出了一些問題,好比框架怎麼搭建的,由於我說了用 MVP 模式,因此又問我了一下具體的搭建思路,我就把我對 MVP 的理解,和搭建過程當中各類層之間的綁定操做說了下。整體來講感受第一輪電話面試技術上具體的問的不是特別多,大可能是針對當前項目的,或者是瞭解下你在項目中扮演的角色。
問完了技術上的,他又問了一些關於離職緣由的問題,我大概說就是我比較但願能在南京穩定發展,外包公司沒有歸宿感,我不是很適應,隨後又隨便聊了一些有的沒的,整體的氛圍比較輕鬆天然,而後他就讓我等通知了。
看了下手機,通話時間 50 分鐘左右。
掛了電話後,我就去上班了,而後大概到了 4 點,我又接到了電話,電話裏說但願我作一份筆試題,筆試題待會發到我郵箱,時長 30 分鐘,作完直接把答案回覆到發送郵箱便可。
能讓我作筆試題,至少證實我剛剛的電話面試應該算經過了。不過,這種筆試方式難道不怕作題人上網查資料做弊嗎?
我心中產生了疑問,我決定先看看題目作試試,若是作不出來再查查,可能對方會給出一個很是難的問題,就是想讓你不會,而後考驗一下你的應變能力和解決問題能力也說不定呢。
過了兩分鐘,郵箱收到了題目:
「請寫出代碼計算二叉樹的最大深度,分別用『遞歸』和『非遞歸』的方式實現」
好吧,不是很難,主要就是定義二叉樹類和一些成員變量,遞歸的話比較簡單,非遞歸能夠用層次遍歷思想,配合隊列進行循環操做便可。寫了 20 分鐘左右,最後小修小補了下,就把郵件發過去了。
到此,一面算結束了。
筆試題發了後,大概過了 3 天,我才接到二輪面試的電話。當時由於過了好幾天都沒接到通知,我都覺得已經沒但願了,因此後來都快淡忘這個事了,因此此次接到電話又是一個措手不及。當時還在工做呢,因此我趕忙跑到一個樓梯口來進行電話面試了。
這個時候大概是下午 1 點 40 左右。
打電話過來的聽起來是個很是有活力的小夥子,聲音很是嘹亮,充滿自信。一開始幾個問題和上次電話面試差很少,自我介紹以及項目上的一些架構問題。問完這些後,他可能也感受此次問的可能問過了,因此他開始問一些純技術問題了。
首先是一個觸控問題,「如何實現多點觸控」,而後又設定了一個場景,「若是 3 個指頭同時向下滑動,3 個指頭的速度若是有誤差該怎麼辦,用什麼辦法來肯定這個監聽事件」。由於當時我確實沒有接觸過這方面的知識,因此也實話實說我沒有研究過,沒想到的是,他好像反而更但願聽到我沒接觸過,接着問我
「那麼,你想一想若是是你,可能會用什麼辦法來處理呢?」
聽到這個問題,我當時在電話那頭當真是一臉茫然,頭腦飛快的思索着,並說出了本身的想法,他也時不時的「嗯,嗯」兩聲做爲迴應,而後針對個人想法也提出了一些問題。整個過程很是緊湊,思考時間很是短暫,加上又是本身不熟悉的領域,因此回答的支支吾吾,同時胃部也由於緊張劇烈的翻涌着。
這不是面對面的面試,電話面試若是你一直沒聲音低頭思考,你本身都會以爲很是尷尬。因此這種高強度的電話技術面試考察的是你的解決問題以及應變問題的能力,同時也會考察出你的思惟敏捷度。
這個問題結束後,後面還問了幾個很是有質量的問題,列舉下:
最後他又問了兩個「數據結構」的算法問題,一個是鏈表逆序,另外一個是求二叉樹兩個節點最短路徑。特別是第二個問題,他給了很是多的限定條件,總感受好像有意給我製造了難度,而後考察一下個人思惟方式,這個問題上也探討了很是久。
通話總共用時 1 小時 30 分鐘,自我感受回答的不是特別滿意。
第二輪感受面試官更偏向於考察你解決問題的能力,以及一些思惟活躍度和應變方面的能力。同時,還考察了一些平時開發時候是如何優化應用的,技術上,更偏重基礎,沒有問任何的第三方工具的使用。
後來和幾個同事討論了下,發現的確如此,作移動端的若是基礎好,應用層各方面的知識你將會學的很快,第三方工具或者代碼庫的使用確實沒什麼值得問的。
通過了一段緊張刺激的電話面試,我當時的心情是很是複雜的,還沒緩過來,正準備和同事分享一下剛剛的面試經歷,又一個電話來了,第三輪面試就這樣開始了。
好吧,還沒坐下來又去了小走廊,打來電話的是個女的,聲音聽起來比較嚴肅,問的問題沒有像剛剛第二輪那樣範圍那麼廣,探討的地方也不多,大多數是那種讀文檔式的出題。不過感受對方仍是很是有氣場的,老是一而再的問我「是這樣嗎?」,「你肯定?」,搞得我有時候本身原本肯定後來都拿不定主意了。
幾個印象比較深的問題有:
這輪面試雖然來的很忽然,但節奏仍是比較快的,你問我答,會的會,不會的就不會,心態可能由於通過了這麼多輪了,倒也比較平靜。
通話時間 40 分鐘左右,而後晚上吃飯的時候,給我打電話說下週會給我作終面。一切好像還算比較順利。
終於,終面來了。依然是電話面試,但我此次作了準備,提早在一個沒人的小會議室等着了。
此次是兩我的同時面試,一個聲音有點像二輪那樣很自信的那種,一個比較沉穩,感受是個很是厲害的人。
開始跟我聊的是那個很自信的那我的,聊了一些技術問題,但不是不少,多是由於前面技術面試通過了 3 輪,差很少我啥水平也瞭解了,他主要問了一些我離職緣由,而後職業規劃和技術上的發展規劃。
而後就到了第二我的,後來我才知道,他是 「Gityuan」,不過當時我沒想到,後來也是由於我去他博客看到他第一篇文章就是分析ANR的,當時問個人一個技術問題也是這個,各類緣由結合我才意識到是他。
他問了幾個很深的技術問題,都是跟 Framework 相關的,畢竟他就是研究這方面的真正大牛。而後就問了我幾個常規問題,但這幾個問題對當時的我來講並不常規:
這幾個問題質量很是之高,當時我就感受到,到終面了,這幾個問題可能直接影響到個人成敗。
事實也證實了,個人失敗可能和這幾個問題有着極大的關係,正是我在其中問題答得很是很差。
自我價值那個問題,我就說的有點語無倫次,把本身一些性格上的優勢列舉了下就草草了事,對方確定不想聽到你這樣的回答的,這種話誰均可以說,但不必定就是你的價值。這樣的互聯網公司,更多看中的多是「發展潛力」、「事業心」以及「態度」。
提問那個問題,我問了不少一些和本身切身利益有關的問題。後來我仔細的想了下,這些問題問了沒問題,但若是不問一些相似技術提高,技術發展這樣的有關自身提高有關的問題,可能不太好。要讓企業感覺到你來這上班不必定是爲了那點工資的。
而後,薪資問題我以爲我過於失敗了,我直接說了一個他招聘信息上工資範圍的最低數額,但實際上他這個職位給的是工做經驗 3 年左右的人的,我卻天真的覺得他這樣開,我就應該這樣報。後來我才愈來愈感受到,我能經過那麼多輪,甚至最後有一些機會成功很大的緣由正是由於我經驗很少,但幾回面試下來面試官感覺到了個人學習能力,以爲我對技術有追求,有激情有衝勁,這纔不斷的賦予我機會。
但我當時沒有察覺,自覺得是本身能力強理所應當獲得的待遇。的確,我當時沒有正確的認清本身。
後來,我收到了面試未經過的通知。說不失落確定是假的,面對這樣的一個企業,面對這樣的一個機會,我甚至已經快要達到了,卻在臨門一腳被踢回來,這種感受着實很差受,固然,此次面試的難度和嚴格是最高的,甚至算上以後 3 月份的全部面試,此次「小米」的面試依然是質量最高的。
此次「小米」的面試經歷很是寶貴,讓我全方位的審視了本身,我認清了本身如今處於什麼階段,並瞭解到了本身技術上的不足也明確了本身之後努力的方向,也第一次的近距離接觸了大公司的面試,知道了大公司對於人才具體有哪些能力上的要求。
小米麪試結束後,工做了兩週左右就放假了,2 月 2 號回無錫上班。
整個 2 月份過的仍是很舒服的,由於幾個小夥伴全住在公司提供的宿舍裏,項目又不太忙,因此天天下班回來和週末的時候,全部小夥伴都會彙集在一個屋子的客廳裏一塊兒 LOL 。
我那會有時候陪他們玩遊戲,有時候躺牀上看書。整個 2 月份我讀了 4 本「東野圭吾」的書,看了一本「唐史」,還有一本闡述生活理念的書「斷舍離」。
老實說,工做空閒能看書是我最大的奢望,因此當時在無錫能夠看這麼多書,講真仍是真的不錯的,實際上我對項目組自己仍是很是滿意的。
但在外包公司,你永遠是被動的。月底,銀行轉變了對項目的購買模式,轉變爲人月項目,原來十幾我的的項目只買了 5 我的,甚至 iOS 開發一個都不留,他們找了一個銀行內部技術人員徹底接手了 iOS 代碼。最後,咱們幾個沒被買進去的人,就要各奔東西,去往別的城市的項目組了。
來無錫以前,領導承諾 12 月能夠調回南京,最後拖到 2 月底,此次調整,又決定把我送往蘇州。因此,各類緣由下,我就離職了。更多離職詳細信息能夠參考博客「一次不妥協的離職決定」。
回到家,我列了一下計劃,複習兩週,而後找工做。考慮到 3 月是找工做的高峯期,因此計劃 3 月底前儘可能能找到工做。前兩個月實際上進行的也不算太順利,心理上,執行力上都有一些波動,這也在博客裏了,參考「還算充實的一週」,這裏就很少說了。
3 月 15號開始,我開始投簡歷,首先我把各大投簡歷平臺的 App 都下到手機裏了:「某直聘」、「某鉤」、「某無憂」、「某聯」、「某聘網」... 好像下載了有 6 ,7 個,不過最後感受比較靠譜的是前三個。有幾個你投了簡歷,要不就沒回復,要不就回復的都是培訓機構,甚至還把你的我的資料泄漏了而後天天會有一大堆招聘廣告發到你手機上,不厭其煩。
簡歷上我寫的比較常規,本身懂什麼技術寫什麼技術,用過什麼寫什麼,項目經驗從什麼時間到什麼時間。沒有任何的誇張成分。這裏須要特別強調下,對某一項技術,描繪你的掌握程度必定要用詞穩當,仔細思考你真實掌握狀況。好比,若是你平時只是用過「Retrofit」、「RxJava」,那你就別寫「精通」這類字眼,面試官會針對你的技能棧進行深刻。我剛開始寫精通,後來一位面試官直接問我源碼上的問題,我就直接懵逼了,後來才針對本身的掌握狀況修改了描述方式。
我記得 15 號是週三,個人投遞模式是海投,就是把軟件上符合我搜索條件的職位所有投遞。大概到週五的時候,只有一家通知我去面試,其餘回覆無一例外,全是說我年限過低,不符合要求,因此不給面試機會,當時的壓力有點大,我高估瞭如今的大環境,實際上如今 Android 程序員的確有些飽和了,初級崗位魚龍混雜,企業就算須要人,可能也會把年限卡死,因此面對我這樣年限這麼短的人,能給面試機會的公司天然少之又少。但這就更須要我把握每一次珍貴的面試機會,儘可能準備好,不留遺憾。
剛剛說到了週五有家公司通知我去面試,那家是國內某大型外包公司,過去後,發現會議室大概坐了有 30 來人,HR 給了我一份 Android 考卷,就讓我進去作題了,題目不是很難,不過考察的範圍挺廣的,有些我接觸的比較少的也的確不會,好比好像考到了「SurfaceView」、「OpenGL」,其餘就是一些比較基礎的 Java 和 Android 問題,好比生命週期那些,四大組件那些。
交完卷子就在會議室等了,過了一會一個 HR 帶我去一個小會議室聊聊,她大概說,試卷作的不錯,你學歷也不錯,是 211 ,他們幫我看看公司有沒有項目須要 Android ,還給我說有沒有興趣轉 Java 開發,由於最近 Android 不是很火了。而後隨便聊了聊就讓我回去了。
自己也不可能去外包公司,只是須要面試一次看看狀態試試水,沒想到從頭至尾也沒技術面試,就連 HR 也知道 Android 最近環境很差,我心裏真是急躁的不行,那段時間的壓力可想而知,甚至都有點後悔這麼草率就裸辭了。
週末的話,企業休息,因此週六週日兩天都沒有消息,實際上對於當時的我來講,雖然明白是這個道理,但這種毫無消息,投遞無果卻只能白白乾等的感受着實噁心,我記得那個週六,我學習的時候,每次看完一個博客或者看完一段視頻,都會去用手機去一個個打開招聘軟件,肯定下有沒有公司回覆我,那時候心態的情況可想而知,個人自我調整那幾天也很是很差,甚至睡覺都不太安穩。不過那段時間,我爸爸由於每隔兩天就來一趟南京辦事,晚上會住我那,她看我心態有點不穩重,那幾天一直在開導我,給我心理上帶來了很大幫助。他認爲「每一個人總有一段這樣的挫折須要你去克服,找工做不須要太急,只要你手上有本事,總會碰上伯樂的。」總而言之,若是不是萬不得已,在你上班的城市找工做的話,如今仍是儘可能不要裸辭。若是裸辭的話,也千萬不要急躁,急躁沒有任何用。
這個週末我做了一些針對性的複習,主要是「網絡編程」方面的,以前 stormzhang 在小密圈回答一個圈友問題談到了網絡這塊須要掌握的一些知識點,因此針對這些知識點,經過博客和一些視頻(我全是用1.5倍速放,節省時間)來複習。又把 Android 端一些經常使用網絡框架的基本使用用法和原理大概看了下,好比「OkHttp」、「HttpURLConnection」這些知識點。
這裏重點說一下複習相關的,我寫過一篇「短時間複習計劃」,有具體個人複習思路和方向,固然每一個人不一樣,不過我當時很是重視把平時學習過程當中的總結、代碼儘可能的上傳到 CSDN 博客和 GitHub 上,我總感受技術面試應該最單純粗暴了,你若是平時每天寫技術博客,GitHub 上的提交時間圖被填的滿滿的,面試的時候你把你的這些連接一貼,面試官進去看一看就大概知道你的學習能力、學習態度、技術棧範圍以及針對每種技術的深刻程度,大概就把你啥狀況搞清楚了。不只如此,自己你常常寫博客,玩 GitHub 自己就是一種優點,不只是一個好的 Coder 所必須有的習慣,並且也是對本身最好的能力展現,是公開的簡歷。
週一開始,個人手機就開始有聲音了,陸陸續續有很是多的電話打了過來,這裏面不乏有一些被我過濾掉的,好比一些培訓公司、外包公司,還有一些公司信息都不是很全的那些,到後來,面試太多了,每一個半天就得跑兩家,我甚至可能會由於有些公司離得太遠就鴿了。
實際上 18,19號兩天週末我還參加了兩個學校的校招,事實證實校招對於我這樣的非應屆生做用不是很大,有的公司對我特別滿意,但最後都沒通知我,最後參加了一個公司的筆試和一個公司的面試,但都考慮到我不是應屆生,也就沒聲音了。
我下面只把這周我印象比較深的幾回面試列舉下。
週一參加了剛剛說的兩個校招時候面試的公司,其中一個公司作的筆試,筆試內容範圍很是廣,不過若是你是計算機專業學生,這些卻是都學過,但可能會由於時間長記得不清了,或者像我這樣大學就知道玩歷來不學的,總之作的不是特別好,涉及到 Java 基礎,數據結構,操做系統,計算機網絡,Android 上考的很少,好像就兩道題,不過有一道題我看了我就一口老血噴出來了:「Android 系統的啓動過程」,老實說若是你平時沒有特別研究過,那這道題仍是老老實實找個網上描述的比較清楚的背一下吧。
而後那個面試的公司,是個雲計算相關的公司,作的最多的是嵌入式,當時面試 Android 的就我一個,我就被他們公司的一個 Android 開發帶到一邊面試了,面試內容大可能是針對我作的應用來問的,說實話,技術含量不是很高,我都感受對方技術也沒高到我哪去。面試完就是一個男 HR 來面我,特別嚴肅,問了一些很奇怪的問題,好比,問我以前在銀行工做時候銀行的項目主管叫什麼名字,他當場打電話過去給銀行問,多是用來檢測我簡歷的真實性吧。後來他跟我說,其餘人都是來面試實習的,你是來找工做的,老闆在開會,今天可能面不了你了,回去等消息吧。反正大致意思就是沒戲了。因此後來我也就不考慮校招了。
週二那天一共面試了 4 家,早上有一家外包,大老遠跑過去後,他啥也沒問,扔給我個需求書,說你看看這個項目你能不能作,要多久。而後技術也沒問,估計對方都不是作 Android 的,稍微聊了會就讓我回去等通知了,還說不論過不過都會在軟件上通知我,實際上最後也沒給我說過沒過,哎,不靠譜。
下午去了一家初創的產品公司,這家工做環境很不錯,並且離我住的地方特別近,面試個人人特別厲害,技術水平很是強,氣場也強,聊的過程當中也感受到了他身上壓力也比較大,畢竟初創企業,身上擔子應該不小。此次的技術問題很是有質量,應該能排到我全部面試中僅次於「小米」和最後我去的那家公司的水平。技術上大多圍繞平時開發中最多見的問題,但這方面我瞭解的也不是很好,只是大體看過,不深刻,好比:
他還給出了一些場景問我怎麼解決,我聽着總感受是他們本身開發的時候遇到的問題,順便問問個人思路,好像的確有的公司面試會把本身平時遇到的難解決問題拿出來問問。
後來收到面試沒經過的消息,的確此次技術面試比較失敗,但他問的方面個人確掌握的很差,因此沒啥以爲遺憾的,回去把他問的知識點補了補也沒多想。
當天晚上去南大參加了一個宣講會,而後面試的時候一直在給我強調,「Android 項目不是不少,並且也不太缺人,你對轉型 Java有沒有興趣?」...
大概有 5,6 家勸我轉 Java,Android 沒崗位... 亞歷山大。
週二週三作了幾個線上筆試,也參加了幾回面試,比較值得說的是一家國企,這家國企作的石油方面的 App,公司離得特別遠,在南師大仙林那邊,我特麼坐地鐵倒來倒去都坐了 1 個半小時。過去後,去了個會議室,裏面已經來了 4,5 我的正在作題,有一我的在被兩我的面試,而後我去了後領了一份 Android 的題目就作了起來,題目就一張 A4 正反面,第一道題讓你論述你作過的項目,並說說這些項目的優缺點;第二道題是對他們如今作的 App 的一些見解和建議,來以前我已經下過他們 App 並體驗了,老實說不是很複雜,設計的也通常般,亮點不是不少,我也就老實說了。後面幾道題全是給你一個頁面圖或者一些效果問你怎麼實現。最後一道題是談談對 Android 的見解,說一下優缺點。
寫完後有個面試官就看起來了,另外一個面試官就針對基礎狀況問我了一些問題,好比我以前項目中的責任,用的技術,離職緣由,指望薪資,我針對他們公司的問題這種。後來那個看我卷子的面試官問我,針對這卷子有沒有什麼想問的,我就問了幾個題目說我這種實現思路怎麼樣,我不少都是直接繼承 View 和 ViewGroup,而後重寫那些繪製方法,再把算法寫在這些方法裏,我感受這樣寫很突出本身的能力。
但他都說實現太複雜了,Android 原生有某某方法,能夠直接調用。我有點無語,這種直接方法或者庫使用上的東西有啥好考察的,知道就知道不知道就去查唄,應用層正是由於有這種特性,因此如今初級工程師才這麼多,Android 應用層開發的可替代性才這麼強,因此當時我就沒有往那方面去答題。想不到人家還恰恰還就往這方面去考察了。
不過這家工做環境也是特別好,在一個創意園內,樓都設計的很是好,周邊環境也美滋滋的,樓裏面的設計也特別棒,這家公司同樓還有一家「騰訊衆創」在這,並且是國企,若是能在這,實際上也是不錯的。面試官說週五給消息,也說,週五以前,無論成功與否,都會告訴我。
固然了,又沒通知我。
週五下午 4 點我來到了這家公司,一家產品公司,作金融的,我上家提及來也算是金融互聯網公司。說來也巧,剛開始我在「某鉤」投遞的時候,沒多久就給我標記不合適了,但過了幾小時,又給我打電話了,說感受簡歷特別匹配,仍是但願能來聊聊。因此我仔細的看了下應聘要求:
崗位職責: 一、負責目前業內最火的移動互聯網金融 APP 的設計與研發。 二、持續優化業內最強產品,將您的研發專長,作到極致。 三、研究新技術,參與軟件架構設計。 四、堅持把本身當成產品主人,而不是純粹寫代碼的碼農,對待產品如同初戀。 五、除此以外,作您最願意作,最爽的事!
職位要求: 一、1年以上 Android 平臺開發經驗,能根據產品設計獨立進行應用開發。 二、有社交、即時交互、UI/UE 等方面的開發能力。 三、對面向對象思想有深刻的理解,瞭解經常使用的設計模式。 三、對待產品如同初戀,追求細節,追求極致。 四、有金融軟件經驗加分、有開源社區貢獻加分、有技術博客加分、有本身的做品加分。
而後看了下福利:14薪、六險一金、週末雙休、午飯補貼、交通補助、一年很多於兩次旅遊、免費零食、下午茶、團隊活動、生日party。
OK,一看就是很是有活力的公司,並且對待產品的態度很是吸引我,感受很滿意,當時就有一種強烈的預感,頗有可能就是它了!
去了公司,HR 很是熱情,讓我進去會議室作了張筆試,而且把我手機很友好的收了。題目質量還能夠,考察了幾個比較不錯的問題,列舉出來其中幾個:
後來交了卷,等了一會,來了一位很是帥的帥哥,溫文爾雅的,介紹了下,他是公司的 Android 負責人,而後他就開始問我一些問題了,先自我介紹,而後針對我作的項目和剛剛作的題目問了一些問題。而後他又問了幾個質量比較高的問題,好比 Java 中堆內存和棧內存的區別,弱引用軟引用區別,Serializable 和 Parcelable 的區別,ListView 的實現原理,Java 中同步方法。還問我看過什麼源碼,我就說了個事件分發和 Handler ,還說了一個在非主線程更新 UI 的可能性的問題,而後他就問了一些系統優化的問題,問了我作過什麼系統優化,我就說了一些內存優化還有緩存和流量上面的優化,而後還說用 Freeline 插件提高編譯速度,他說他們如今也在用,感受還不錯。
技術聊了好久,大概有 3,40 分鐘,而後就開始說一些職業上面的問題了,好比問了個人職業規劃,和技術上有什麼樣的追求,問了我一些大學的時候的事情,說到這個地方的時候我還說了我大學那段電競時光,他表現的挺感興趣,這方面問了我不少問題,因此我就把我當時訓練、打比賽、當會長辦活動那些事和他聊了聊,他對我辦過一些活動的具體細節問了一些,而且還很是驚訝我當時居然能大包大攬的一我的承擔一個協會。
他又問我對團隊有什麼要求,或者說我指望什麼樣的團隊,我就說我比較喜歡沒有那種明確上下級關係的那種團隊,而且有充分的學習機會,團隊之間各成員可以常常交流學習,最好還能夠多一些能增進下團隊成員之間感情的團隊活動。
咱們聊得很開心,後來他還問我對工做有什麼要求,我表示我對薪資這些不是頗有要求,主要是渴望獲得一個工做機會,同時但願能在一個企業文化很棒的公司工做,這對我來講比較重要。
他提問的差很少,就問我有沒有什麼問題,我就問了一些做息、福利、晉升以及我的和公司協同發展方面的問題。問完後,他針對我剛剛說的一些指望作了一些解釋,好比他會給我說公司的團隊正是像我期待的那樣,氛圍很棒,並對他們公司狀況作了一些概述,告訴我他們是一個產品公司,對待產品態度很認真,對技術也會要求嚴格,如今公司的發展狀況也是正處於高速上升期,並闡述了一些企業文化方面的東西。
最後他表示,他作 Android 也有 5,6 年了,在北京這些城市也工做過,他以爲,工做這麼多年,走過很多公司,以爲這家公司是他經歷的全部公司中最「酷」的,在南京,也算得上很是「酷」的,在這工做,真的很棒。
我喜歡「酷」這個詞,與個人期待不謀而合。
後來咱們談到了一些關於南京的東西,我表達了我對南京的喜好,以前在南京工做的時候每週都會騎單車在南京處處逛,他說以前不少離職的人都是由於不想在南京,不知道爲何我這麼喜歡。我想了一會,回答了一句很裝逼的話:
我感受,南京有一種憂鬱的氣質。
Android 負責人大概和我聊了一個多小時,而後就讓我稍等片刻,由於 CTO 在開會,可能不能馬上過來面試我,因此以前接待我那位特別活潑的 HR姑娘就來先陪我聊了會,她很是興奮的給我講述了在這家公司是多麼開心,這裏全是 85 後,這裏福利多好多好,1 月份的時候還集體去越南旅遊,下午茶很是豐盛,蛋糕,麪包,咖啡,飲料,披薩每次都不帶重樣的,看她美滋滋的那個樣子,我確定是信了,至少證實,這家公司的確是很是有活力的,並且很是注重團隊文化的建設,有這樣的保證就夠了。
過了大概 10 分鐘,CTO 來了,很是年輕,大概就 88,89 年這樣,很厲害。拿了紙筆,邊問邊寫。問的節奏很快,總結起來就是考察我有沒有主動解決問題和探索新技術的能力,還問了個人 GitHub 和 CSDN的狀況,總之感受他更關心的是我對待技術的態度。
最後他問了下指望薪資,我說了一個和上家同樣的數字,由於我很渴望能在這工做,因此待趕上反而真的沒有要求了。
他說讓我回去等通知,他和 HR 明天要出差,可能週一纔會給我答覆,我就先回去了。
回家後,HR 加了我 QQ,跟我說實際上明天應該就會告訴我結果,讓我耐心等待。次日,我看她在空間發了一個說說,我就有意點了個贊,而後她立馬 QQ 給我消息:「哎呀,忘了跟你說了,恭喜你,面試經過了!」
27 日週一我拿到的 Offer 郵件,而後29號正式入職,辦理了一些手續。HR 帶我到各個部門熟悉了下,而後就把我交給了以前面試個人 Android 負責人,我叫他嘉哥。公司給我新配了一整套電腦,處理器是 i5-7500 的,簡直是飛通常的感受,我把一些基本環境配好後,嘉哥把我和其餘 Android 程序員叫到辦公室,讓咱們互相認識了下。有兩位實習生和兩位和我一屆的,但感受他們技術都很是棒,看來之後要多多加油了啊!
嘉哥下午的時候把我帶到會議室,把公司的開發流程和項目的代碼大概的順了一遍,而後讓我本身這段時間先熟悉熟悉,次日,讓我多看看某個方面的內容,由於如今這個模塊代碼有點耦合,但願我能夠研究研究,而後想辦法抽離出來。
這個任務對我來講仍是頗有挑戰性的,由於項目的代碼體量特別大,我還得熟悉一段時間,抽離模塊的任務實際上就是封裝一個模塊,而且和業務解耦,是代碼優化和框架優化上的工做,比起之前那些寫寫頁面這樣的工做來講,當真很是有挑戰性,我不只有壓力,並且也很興奮。
而後週三下午茶是披薩,清明放假前一天,舉辦了 3 月的生日會,你們一塊兒唱生日歌分蛋糕的情形甚至讓我想到了大學生活。
在公司才待了 3 天,但感觸不少,總結下。
由於之前在外包公司,代碼都是本身弄,因此代碼規範很不理想,在產品公司,感受他們的代碼很是嚴格,文檔很是全面,全部模塊和功能的文檔都寫的很清楚,而且有專門的代碼規範文檔,細節到每一個類和方法的命名,某個組件調用的方法,甚至強制規定某些代碼必須怎樣寫。並且,團隊還規定每次代碼提交後須要互相之間 review 代碼,有問題直接 fixme 指出來。而且,不少工做都是代碼優化上的,有時候是模塊抽離,有時候是組件化統一。總而言之,在這工做個人代碼規範和工程能力必定會極大提升。
而後,之前工做上我用的版本管理是 SVN,只在 GitHub 上用 Git,平時提交代碼的時候,主要也用的 AS 自帶的 Git 插件。嘉哥跟我說最好要用指令,我一開始不理解,認爲用插件不是更方面嗎,後來才發現,項目中由於模塊分離,不少項目會統一用一個子模塊,因此若是不用指令,項目和子模塊指針管理就會出問題,並且 Git 指令操做更清晰明確,因此這 3 天我也花了很多功夫學習了指令。
我如今還在看代碼,由於還沒正式上手工做,因此仍是有一些茫然在裏面,但願本身能更加努力,多溝通,儘快融入到這個你們庭中。
通過這一個月充滿壓力的裸辭找工做這段經歷,我收穫了不少感悟。
歡迎關注個人公衆號
我最近在維護的一個開源項目,歡迎 star:WeaponApp 徵文連接:https://juejin.im/post/59af60acf265da24701ee7da