此文希望能給那些想跳槽的朋友一些參考。
三沙網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站成立與2013年到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
我們隨著工作時(shí)間的增加和技術(shù)經(jīng)驗(yàn)的積累。原先的公司不一定能提供給你想要的發(fā)展空間與前景。說直接點(diǎn),家里還有老婆孩子還有老父母,我們需要更高的薪酬來讓他們過上更好的生活。所以跳槽是個(gè)不錯(cuò)的選擇。
夏末的時(shí)候我就有了跳槽的想法。然后就是不斷的跑了很多家公司面試。前后花了將近兩個(gè)月時(shí)間。拿到了華為,美團(tuán),去哪兒以及一些不太出名的公司的offer。首先是準(zhǔn)備簡歷,然后就是過一下面試題。
簡歷的編寫其實(shí)這里可能需要注意幾點(diǎn);
1.標(biāo)題的直接按照姓名-幾年工作經(jīng)驗(yàn)-應(yīng)聘崗位格式來填寫。例如 黃銘——四年工作經(jīng)驗(yàn)——Android開發(fā)高級工程師。因?yàn)橐?,HR篩選簡歷是非??斓?,你要在第一時(shí)間就讓他看到他想要看的信息。HR一開始最關(guān)心的就是工作年限和崗位,你直接在標(biāo)題欄用最大的字體寫出來會比很多人介紹了半天項(xiàng)目最后寫年限要好得多。
2.個(gè)人信息寫最前面。 個(gè)人信息欄其實(shí)不用寫很多東西,最主要的就是姓名、聯(lián)系方式、性別、如果學(xué)校是名校那么就寫上,如果本科學(xué)的是計(jì)算機(jī)專業(yè)也可以在這里寫上,如果都不是就最好放到最后去寫,因?yàn)樽钋懊娴臇|西永遠(yuǎn)是最先看到的內(nèi)容,也是你最有競爭力和賣弄的資本。
3.有技術(shù)博客和github開源項(xiàng)目的一定寫在最前面。 這是活生生的例子。我在面試華為的時(shí)候面試官就特意去看了我的csdn上的博客。然后說寫的還是不錯(cuò)的,給他留下了一個(gè)不錯(cuò)的印象,所以這點(diǎn)是絕對的加分項(xiàng)最好就是寫在最前面。
刷面試題這塊其實(shí)一開始我并沒有刷特別多,也就是簡單的看了下一些基礎(chǔ)性的知識點(diǎn)。因?yàn)槲沂冀K覺得看的越多越記不住,而且最重要的是你根本不知道面試官會怎么問,與其盲目的看知識點(diǎn)倒不如先出去找?guī)准倚」久嬖囌艺腋杏X,知道面試官會針對哪些地方詢問,再回來針對性的看。
由于我不是裸辭的狀態(tài),所以面試對我來說其實(shí)不是那么著急和有壓力。我陸陸續(xù)續(xù)的面試了差不多兩個(gè)月左右,面了十來家公司。當(dāng)然,前面面試的幾家公司完全是試試水的狀態(tài);每次面試回來我都要做一些筆記讓自己知道自己不足。所以這樣一來二去后面的狀態(tài)就越來越好了。針對android這塊的面試題目其實(shí)主要還是基礎(chǔ)性的原理之類的。
HashMap的內(nèi)部原理。 主要是內(nèi)部的hash碰撞、resize()等。還會與HashTable進(jìn)行對比,說出相同與不同點(diǎn)。作為延伸可能還會問concurrentHashMap的分步鎖問題。這里我寫過一篇關(guān)于hashMap的原理文章。
java中創(chuàng)建線程的方式有幾種。 一般而言很多人會回答兩種,Thread與Runnable。我最早面試的時(shí)候也是說這兩種,然后面試官問還有別的嗎?我當(dāng)時(shí)就沒答上來,其實(shí)還有一種叫Callable的。這里可能還需要理解下Callable與Runnable的區(qū)別以及使用時(shí)候的注意事項(xiàng)。
線程阻塞的方式。主要還是考察sleep、wait、yield與join的區(qū)別。
死鎖造成的原因、手寫死鎖。synchronized 關(guān)鍵字
線程池ThreadPoolExecutor的使用,內(nèi)部處理任務(wù)的過程以及四種線程池的區(qū)別。
Java中的四種引用以及使用的場景
java中GC回收算法以及年代區(qū)分問題等
java方面的問題印象中差不多就是問上面幾個(gè)問題,只要了解了這些java這段問題不是很大。
Activity的啟動模式、standard、singleTop、singleTask、singleInstance的區(qū)別。 這里需要重點(diǎn)注意的是singleTask啟動時(shí)候的回調(diào)onNewIntent以及不同棧之間的Activity如何跳轉(zhuǎn)。我在面試騰訊的時(shí)候就被問到過這個(gè)問題。
Service的啟動模式和生命周期,會延伸到Binder和IntentService,這里最好去看下IntentService的原理和源碼。看了源碼之后還會延伸到HandThread的問題。推薦我自己的博客文章,Service 、IntentService
Android消息機(jī)制Handler。這是常問也是必問的問題,除了要知道內(nèi)部原理和源碼以外還要清楚造成內(nèi)存泄漏的原因和處理方式。從源碼的角度來談?wù)劽嬖嚦?虷andler的內(nèi)部原理
事件分發(fā)原理。這里主要會問事件分發(fā)的流程以及進(jìn)行攔截時(shí)候onInterceptTouchEvent返回true時(shí)剩下的MOVE與UP如何走,onTouch、onTouchEvent、onClick的先后順序關(guān)系。談一談Android中的事件分發(fā)
AsyncTask內(nèi)部實(shí)現(xiàn)原理。 這個(gè)在平安人壽以及投哪兒網(wǎng)二面領(lǐng)導(dǎo)問道過。主要是AsyncTask內(nèi)部如何實(shí)現(xiàn)的,內(nèi)部處理多任務(wù)是串行還是并行處理,為什么是串行處理,如果讓其變成并行處理等。從源碼角度談?wù)凙syncTask的使用及其原理
LruCache算法如何實(shí)現(xiàn),內(nèi)部為什么要用LinkHashMap來實(shí)現(xiàn)。 談?wù)凩ruCache算法的底層實(shí)現(xiàn)原理及其內(nèi)部源碼
進(jìn)程之間的通信方式,IPC原理。 這里會延伸到AIDL和Binder。
進(jìn)程之間的優(yōu)先級。 前臺進(jìn)程、可見進(jìn)程、后臺進(jìn)程、不可見進(jìn)程與空進(jìn)程。騰訊面的時(shí)候還特意問了我進(jìn)程的?;畲胧?/p>
圖片的壓縮處理。 這里會問四種圖片格式的區(qū)別(ARGB888、RGB565、RGB444、Alpha_8),以及問給出一張以上格式的圖片如何計(jì)算圖片所占的內(nèi)存大小。
Serializable與Parcable的區(qū)別。 在什么情況下需要用到序列化和反序列化,Serializable中為什么要設(shè)置UID,設(shè)置UID與不設(shè)置UID值的區(qū)別和影響。
動畫總結(jié)。 重點(diǎn)是屬性動畫內(nèi)部實(shí)現(xiàn)原理,差值器和估值器的使用。
Android中斷點(diǎn)續(xù)傳的原理、熱更新的原理。 珍愛網(wǎng)面試我的時(shí)候問了這個(gè),當(dāng)時(shí)沒了解過,很遺憾的沒回答出來。
Android的性能優(yōu)化。 布局優(yōu)化(include、merge和viewstub標(biāo)簽的使用)、繪制優(yōu)化(不要在onDraw方法里面創(chuàng)建新的對象)、內(nèi)存泄漏優(yōu)化,檢測內(nèi)存的方式和內(nèi)存泄露造成的原因等。
網(wǎng)絡(luò)請求原理。 http與https的區(qū)別、三次握手和四次揮手,為什么握手一定要三次?為什么揮手一定要四次?http的響應(yīng)碼。http1與http2的區(qū)別等。
開源框架的使用和原理。 OkHttp內(nèi)部實(shí)現(xiàn)、glide的內(nèi)部原理、EventBus源碼和RxJava的使用過程注意事項(xiàng)等。
我印象中差不多就是問這些東西,其實(shí)都是很基礎(chǔ)的Android知識,只是問的比較深入,如果不明白內(nèi)部的實(shí)現(xiàn)原理很多問題其實(shí)是回答不上來的。所以還是要多看源碼才能了解本質(zhì)問題。
這是我們大部分面試者都會遇到或者都會被問到的問題。如果你回答 “ 沒有 ”,這往往被一些面試官理解為:你對應(yīng)聘公司、工作崗位沒有太大的興趣。可能會讓面試官產(chǎn)生誤解,而影響面試評判。
如果你回答 “ 有 ”,一時(shí)間又容易腦子短路,可能會不知道該問以下哪個(gè)問題:
問企業(yè)發(fā)展?怕面試官覺得這個(gè)人好虛,有點(diǎn)不切實(shí)際
問薪資待遇、假期福利?又怕面試官覺得這個(gè)人沒有事業(yè)心,入職了也不會呆太久的,整天就想著休息……
那怎么辦?
面試往往是互相了解過后,面試者處于被動狀態(tài),這個(gè)時(shí)候面試官將問題拋出,你必須把握住主動權(quán),讓面試官知道你是認(rèn)真對待這次面試,而不是敷衍的流水線面試。
那么,問什么呢?
不管面試官是HR、部門領(lǐng)導(dǎo),還是老板,以下問題都可以幫你輕松度過難關(guān),而且你還能從面試官的回答中得到很多意外收獲:
這個(gè)簡單的問題可以讓對方滔滔不絕的講述他一天的工作,面試官會說一些比較自豪和有意義的事情,同時(shí)也會有一些瑣碎的事情。在聽的過程中,你也能感受到未來工作中是否有你的興趣點(diǎn),以及最無聊的那個(gè)部分你是不是可以接受。同時(shí)也可以從中推估到你的未來發(fā)展,因?yàn)樯毢笠矔幸惶斐蔀樗N胰ヲv訊面試的時(shí)候就問了這個(gè)問題,然后他說了下他一天干的活,我才知道騰訊的加班是有多嚴(yán)重,我曾跟他說我每周一二四加班,本以為他會說你加班真多啊,結(jié)果沒想到他來一句說你加班也不多呀,我們很多都是十二點(diǎn)以后走的。我當(dāng)時(shí)就懵逼。這樣比你直接問他公司加班多嗎要好很多。
在實(shí)際運(yùn)用時(shí),要取決于公司的業(yè)務(wù)范圍。聽聽面試官的計(jì)劃,這可顯出你關(guān)注公司整體和未來的發(fā)展。同時(shí)也可以從他們的談?wù)撝辛私獾讲煌驹谕粋€(gè)行業(yè)的情況,對你準(zhǔn)備其他公司的面試也會有所幫助。面試一些小公司的時(shí)候我就喜歡去問這個(gè)問題,通過這個(gè)問題我就大概能清楚知道這些公司適合不適合我還有就是可以知道老板到底是喜歡扯淡還是真正的一個(gè)實(shí)干家。
注意!一般情況下,這個(gè)問題比較適合用在面試大公司的職位時(shí),當(dāng)然現(xiàn)在有不少創(chuàng)業(yè)公司也是非??粗仄髽I(yè)文化的。通過這個(gè)問題,你可以從面試官口中了解到公司的工作氛圍和一些非硬件的環(huán)境情況,同時(shí)也可以在面試官表達(dá)的過程中去留意他的肢體、感情的表達(dá)。如果從身體語言上都表達(dá)出認(rèn)同公司的文化,那說明該公司在企業(yè)文化建設(shè)方面做得不錯(cuò)。同時(shí)你也可以自我假設(shè)一下是否可以融入這種氛圍。
這個(gè)問題比較安全,也是一個(gè)可以引起面試官興趣的話題。一來這個(gè)問題不會暴露你對公司的不了解,二來也能讓你對未來工作的挑戰(zhàn)或困難有一個(gè)提前的預(yù)期。除此之外 ,這類問題用的好,會很容易增加印象分。特別當(dāng)面試官是外國或海歸人士時(shí),比較直接一點(diǎn)絕對不是壞事兒!
如果面試官將會是你的直屬上司,那么這個(gè)問題會讓你的利益相關(guān)者一開始就有一個(gè)感覺,你是一個(gè)非常在乎他或者團(tuán)隊(duì),并且愿意傾聽的候選人。這樣對于快速的培養(yǎng)起一段專業(yè)的合作關(guān)系是很有幫助的,同時(shí)也可以更理解他對你的期望值。也可以初步判斷出他是一個(gè)成果導(dǎo)向,還是過程導(dǎo)向的上司;是一個(gè)由上至下思考,還是一個(gè)下至上思考的領(lǐng)導(dǎo)。如果把握準(zhǔn)確會更會令面試官覺得:你是一個(gè)會做好準(zhǔn)備并且有同理心的人,這絕對是加分項(xiàng)。
這一問題也是要根據(jù)你面試的企業(yè)情況來定奪,如果面試的是大企業(yè),同時(shí)又是外企,那么合作對于他們來說是必須的,因?yàn)楹芏嗍虑槟阋粋€(gè)人是不可能完成,所以自然會非??粗啬銓献鞯膽B(tài)度。通過這個(gè)問題,可以讓面試官知道你有強(qiáng)烈的合作傾向。同時(shí)從回答中,你也可以感受到這個(gè)公司團(tuán)隊(duì)合作的情況如何。
這幾乎是我面試都會回問的問題。通過這個(gè)問題,我就能夠知道自己在他們眼里的不足之處,回去可以做好的修改。例如,我在面珍愛網(wǎng)的時(shí)候,他們給我的評價(jià)是基礎(chǔ)還行,但是深度不夠并且對自己未來的職業(yè)規(guī)劃不清晰。因?yàn)槲一卮鹆宋蚁胱龃笄岸?,然后轉(zhuǎn)管理。他們就覺得你一下想做技術(shù)一下又想做管理,這目標(biāo)不清晰。所以后來我就直接說自己想做大前端,就沒有說再后來轉(zhuǎn)管理的事情了。
通過不同的面試,記錄下自己的面試過程從而才能更好的提升自己的。
以下附上android面試相關(guān)的題目和答案,一般3-5年的把下面的題目搞懂了,面試應(yīng)該沒啥問題。
Android面試指南
Android2017-2018最新面試題(3-5年經(jīng)驗(yàn)個(gè)人面試經(jīng)歷)
我基本就是按照這兩套題目來刷的,發(fā)現(xiàn)面試中的問題在這里面基本上全部問遍了。祝你也能找到一個(gè)好工作。