我想跳槽了,該怎麼辦?

最近不知道怎麼的,忽然冒出來一個想法:我想跳槽了
總結了馬雲爸爸的兩句話:跳槽要麼是錢沒給夠,要麼是受了委屈前端

一.首先請思考一個問題:在你眼中「跳槽」包括哪些內容?

我給本身分析了一下,但願對有想法跳槽的道友有所幫助
不少朋友都想要跳槽,可是對「跳槽」的理解可能僅限於「寫簡歷、面試」。
程序員

在此次跳槽前,我也這麼認爲的。面試

那時候工做不順利,正好在一個羣裏看到有公司招聘,就發了簡歷過去,面完試本身感受良好,結果卻打了臉,讓人家拒了,理由是我要的工資過高了。算法

仔細檢討後,發現我準備的太倉促,或者說根本沒怎麼準備,只是寫了份簡歷,而後有面試機會就去了。面試過程當中有些項目細節答不上來,不少知識點也答得很差,讓人家感受水平通常。編程

痛定思痛,在後來的幾個月,我開始查閱各類跳槽、面試相關的資料,同時整理了重點複習知識點,按計劃一步步學習。設計模式

在兩週前,感受本身學習的差很少了,公司的狀況也基本看清楚了,就決定離開。數組

因而寫簡歷、投簡歷、面試,面了五家,拿到了五個 offer,最終選擇了對我目前來講最合適的一個。緩存

在這個過程當中,我對「跳槽」的認識逐漸加深。性能優化

咋一看「跳槽」就是寫簡歷、換工做,但要想獲得滿意的 offer,其實須要思考、準備的內容不少,大概有這麼幾點:網絡

  • 跳槽前要思考清楚
  • 掌握跳槽須要的知識點
  • 寫一份高質量的簡歷
  • 瞭解簡歷投遞的時機和方式
  • 拿到面試邀請要作好功課
  • 面試中要調整心態,努力表現
  • 面試後及時思考總結
  • 有多個 offer 如何選擇
  • 優雅的離職
  • 準備入職

這些應該是一次跳槽從開始到結束比較完整的流程了。接下來咱們將詳細瞭解每一部分。

二.跳槽前要思考的問題

個人如意工做是一個蓋世英雄,有一天他會拿着高薪股權來迎娶我,我猜到了開頭,卻猜不到這結局...


每一份工做都是以希冀開始,咱們心懷憧憬,但願在公司裏大展拳腳、作些成就。

然而是什麼讓咱們走到今天這地步,即將與它分手?

通常離職有兩個緣由:

  • 錢不到位
  • 心委屈了

2.1.錢不到位怎麼辦

業界一種廣泛的觀念是「跳槽漲工資最快」,這也的確是現狀。

爲何公司遲遲不給加薪,非得逼得咱們跳槽呢?

答案很簡單:由於公司沒有意識到你價值的增加。

咱們在入職時可能只是一個菜鳥,可是在工做一段時間後,因爲我的的努力以及業務的鍛鍊,水平已經有了很大的不一樣,本身內心以爲本身再也不是菜鳥了,但願能拿更高的工資。

但你可能一直在作一個項目,沒有承擔更多的責任,公司沒法瞭解到你如今能力到什麼程度了。

這個時候,若是領導比較好的話,你能夠先主動要求承擔任務,積極完成(就是加班加點),而後在一段時間後找領導談加薪。這樣就有理有據,讓人信服,領導通常都會贊成。這樣就不用跳槽了,省去準備面試題的繁瑣。Over。

若是領導不一樣意,那就沒轍了。

2.2.心委屈怎麼辦

員工離職的另一種緣由就是:待着不爽,內心委屈了。

一些被動的緣由好比領導更替、崗位調整、加班太多等,都會讓人內心不舒服。

拿我來講,公司業務轉型,作的工做不是安卓應用開發,作久了內心不踏實,就想離職了。

若是有條件的話,能夠跟領導溝通可否恢復原樣,若是無望,那就只好跳槽了。

但在真正提出離職以前,還須要思考幾個問題。

2.3.離職前的思考

If you don't like something, change it. If you can't change it, change your attitude. Don't complain.

有的朋友可能會說:別廢話,趕忙講面試知識點,我乾的不爽就跳槽了,還想什麼想?

非也,每次跳槽的成本其實很大,除去面試來回的時間不說,新舊環境的適應、業務的熟悉、代碼的掌握,都須要成本,若是兩次跳槽間隔過短,其實時間都花在了適應新環境上,真正學習、沉澱的內容不會太多,尤爲在剛開始工做,更忌諱這樣子。

所以,在肯定離職前,你須要先問本身 3 個問題:

  • 如今的項目沒有我能夠學習的內容了嗎?
  • 離開這裏我會失去什麼?
  • 到新環境能夠獲得什麼?

拿我本身來講,項目裏的代碼我沒有掌握太紮實,框架層不少設計思路還搞不清楚,出去面試一問就問倒了。這時若是真的換了工做,恐怕又要接觸新項目、新代碼,根本沒時間好好消化以前的代碼。

除了代碼,人際關係也須要沉澱,在這個公司待了那麼久,看到了一些同事的優秀品質,學習、借鑑他們也須要必定的時間,若是忙着換工做,可能就失去了和同事深刻交流的機會。

所以在第一次面試失敗後,我把項目代碼好好研究了一個多月,也跟同事請教不少學習、規劃上的知識,爲後面的路作好鋪墊。

2.4.肯定要走時須要作的準備

在肯定要走後,儘可能不要裸辭,如今的行情你懂得,沒有準備就裸辭,等於斷了本身後路。

有的網友問我:辭職在家好好複習一個多月怎麼樣。我勸他仍是算了,都不是自覺的人,每天在家反而更學不進去。最好的狀態就是一邊工做,一邊蒐集要學習的知識點學習資料,下班路上、晚上、週末去學習,那樣精神壓力不會太大。

在開始複習知識點前,你須要確認如下 2 點:

  • 定位
  • 亮點
  • 定位

2.41.定位

「定位」 是指你要肯定本身所處的階段和想要的目標。主要包括:

目前是什麼水平
有什麼積累
工做項目裏有什麼難點
想找什麼級別的工做
好比我,給本身的定位就是:如今是中級水平,常見應用開發需求基本都能解決,開源框架使用沒問題,部分讀了源碼,工做項目裏主要是混合開發比較複雜,想找有利於本身成長的、大公司中高級安卓開發工做。

2.42.亮點

有的朋友可能對 「亮點」 的定義不是很明白。

「亮點」 其實就是可以把你和衆多應聘者區分出來的優秀品質。

程序員面試主要考察這幾點:

  • 技能水平
  • 學習能力
  • 團隊合做
  • 工做心態等

若是你在其中任何一個方面都有本身的優點,就趕忙找出來,寫到簡歷上,面試表達出來。

拿技能水平來講,根據作過項目的類型,肯定本身當前擅長的點,好比你作的是電商應用,那可能就擅長混合開發、自定義 View;作的是電臺應用,那可能就擅長後臺進程保活;作的是大用戶量應用,那可能就擅長監控、性能優化等等。

找到本身已有的或者該有的亮點,而後去努力掌握、精通。

2.5.行情怎麼樣

有的網友說早就想跳槽了,可是據說行情很差,不敢跳
創業公司的確死了不少,可是卻死了一大堆。

但活下來的又融了不少錢,也成立了不少新公司,也須要招不少人。

這個時候,招聘的標準就比前幾年要高一些了,去招聘軟件上看也能夠發現,大多要求 3 年以上經驗。這是由於如今安卓初級太多了,各類應屆生、培訓班涌入市場,前幾年會用 ListView 就能夠找工做的日子一去不復還。不過真正的高級,或者有潛力的中級,仍是很受企業歡迎的。

所以,咱們在想要跳槽時,不要被所謂的「差行情」攔住,而是要審視本身的水平,肯定本身的目標,到底是要找初級崗、中級崗,仍是高級崗。

面試前,面試官拿到你的簡歷,根據簡歷上的信息會創建第一印象。所以你想要呈現給對方一個怎樣的定位,有什麼亮點,都須要事先思考清楚。

肯定了方向後就要開始努力準備,下一節咱們介紹安卓跳槽須要準備複習的知識。

三.安卓跳槽須要複習的知識

在介紹面試考察內容前,先來看看我認爲的「中級安卓」須要掌握的知識點,這些是結合一些面經、本身實際面試以及請教前輩總結而來的,主要包括兩部分:

  • 基礎知識
  • 進階知識

面試中級及如下崗位時,在電話面試、一面、或者你簡歷沒有突出亮點時,通常都會先問基礎,目的是肯定你基本功扎不紮實。

若是基礎知識有太多不會的就危險了,必須好好準備,這是躲不過的。

電話面試、一面考察基本功過關後,就會進入下一階段 --- 問些進階的,看看你最高水平在哪裏。

這個階段有不會的很正常,由於對方正在肯定你的水平,但態度必定要積極主動,即便以前沒有研究過,也要結合一些經驗說出推測的結果,切忌直接說「我不會」。

3.1.基礎知識

基礎知識主要包括如下幾點:

  • Java 基礎
  • 併發/異步
  • 安卓基礎
  • 設計模式
  • 常見的數據結構算法
  • 網絡基礎

3.1.1.Java 基礎

雖然如今 Kotlin 挺火的,但我面了幾家大公司都沒問 Kotlin,問了不少 Java 。因此必定要保證當前知識掌握熟練了,再學習新知識,否則真成了狗熊掰苞米。

Java 基礎主要包括如下知識點:

  • 內部類、靜態內部類區別、使用場景
  • 抽象類、接口 實戰使用場景
  • 註解

    • 什麼是註解以及運行時註解的使用
    • 使用編譯時註解簡單實現相似 ButterKnife 的效果
  • 反射

    • 深刻理解 Java 反射:Class (反射的入口)
    • 深刻理解 Java 反射:Field (成員變量)
    • 深刻理解 Java 反射:Method (成員方法)
  • 泛型

    • [深刻理解 Java 泛型]
  • IO NIO

3.1.2.併發/異步

主要包括兩部分:

  • 安卓併發類
  • Java 併發知識

安卓的主線程模型,要求咱們必須將耗時操做放到線程異步執行,不然會影響 app 的流暢甚至卡頓。

所以必須掌握安卓提供的 Handler, HandlerThread, IntentService, AsyncTask ,這是安卓爲咱們封裝好的異步類,從使用到原理,都要理解,面試常客。

接着就須要瞭解 Java 的線程、內存模型和 Java 併發包下提供的類了,這也是大公司考察基礎的常客。

除了面試,若是你去看過開源框架,會發現裏面有不少 ConcurrentHashMap, Lock, Condition,一開始看的你一臉懵逼,在掌握了 Java 併發知識後,再去看框架就會省力許多。

Java 併發主要知識點:

  • 同步鎖 synchronized與Lock區別
  • 什麼是可重入鎖
  • 線程通訊方法
  • wait 和 sleep區別
  • wait-notify 模型
  • 生產者消費者模型
  • 線程池

建議閱讀書籍:《Android 開發藝術探索》、《Java 併發編程藝術》、《Java 併發編程實戰》

3.1.3.安卓基礎

安卓基礎愛問的來來回回就那些點:

  • 四大組件,生命週期啓動方式等常見問題

    • Android 進階1:Activity 的生命週期
    • Android 進階2:Activity 的 Task 與啓動模式
    • Android 進階3:Intent 與 IntentFilter 匹配規則
    • Android 進階4:Service 的一些細節
  • 自定義 View 相關

    • 繪製流程
    • 事件傳遞
    • 滑動衝突

這部分是常見的,應該大多數人都掌握差很少了,書的話仍是看 《藝術探索》。

3.1.4.設計模式

我此次找工做,筆試裏出現了兩次寫單例模式,記得幾年前校招的時候就由於單例失去過一次好機會,單例模式的重要性,你本身掂量一下。

設計模式考察的也不算太複雜,知道經常使用的幾種設計模式使用場景,會手寫單例的關鍵幾種(靜態內部類 double-check 知道區別)就能夠了。

能夠去看看《大話設計模式》、《Android 源碼設計模式》。

3.1.5.數據結構算法

我此次面試算法問的比較少,隻手寫過插入排序,建議把冒泡、插入、歸併時間複雜度和實現熟悉熟悉,最好手寫下,否則現場手寫的時候容易出錯。

做爲一個有追求的程序員,這些數據結構、算法是須要掌握的:

  • 數組鏈表區別
  • 鏈表插入刪除
  • 棧及使用場景
  • 隊列及使用場景(有可能拓展到阻塞隊列)

這些是基礎,學好才能掌握其餘的。

紅黑樹、KMP、最短路徑、動態規劃、揹包問題這些都屬於進階了,問的比較少,瞭解下便可。

能夠再買本《劍指 offer》看看,鍛鍊下算法題的常看法題思路。《算法》就太科班化了,通常人也看不進去,有興趣的能夠看看。

3.1.6.網絡基礎

網絡其實問的也不算多,由於畢竟不用咱們本身去實現一個 HTTP Client,常見的網絡問題大概如下內容:

  • 七層模型
  • HTTP 內容
  • 常見響應碼
  • 緩存相關
  • TCP 三次握手、四次揮手
  • Socket 的使用

    • 進程通訊之 Socket (順便回顧 TCP UDP)

四.進階知識

在肯定你的基礎夠用後,二三面就會考察你的進階能力。就應用開發來講,進階知識主要有如下內容:

  • 框架原理:緩存、網絡、圖片
  • 性能優化
  • 架構模式
  • JVM
  • 插件化

4.1.框架原理

做爲有追求的安卓開發,怎麼可能只知足使用框架而不知其原理呢?

在面試時也常常會被問到:你熟悉什麼框架的源碼?

這個時候若是沒有準備就尷尬了,失去了給本身加分的機會。

如今主流框架是 RxJava Retrofit OkHttp Picasso/Glide EventBus3,你能夠選擇其中兩個左右熟悉一下源碼和大概流程,重要的是理解爲何要有這個框架,解決的問題,如何解決的。

建議閱讀書籍:《Android 進階之光》

4.2.性能優化

性能優化又是另一個高頻問題,通常主要問內存方面、UI 方面的優化。

常見問題:

  • 內存優化

    • 內存泄漏如何避免、檢測
    • 內存抖動怎麼辦
    • 有使用過什麼工具嗎?
    • 如何避免 OOM
  • UI 優化

    • 佈局卡頓怎麼辦
    • 如何判斷佈局是否須要優化
    • 有哪些工具

另外也能夠閱讀《高性能 Android 應用開發》。

4.3.架構模式

高級的安卓開發不只須要完成一個模塊,還須要負責整個項目的設計與開發。

常見的架構模式是按項目分層分,MVC MVP MVVM 這些,能夠選其中兩個進行學習、實踐,對比了解優點和劣勢就能夠了,網上文章不少的。

另外就是設計思想,OOP 面向對象開發的思想通常都知道,繼承封裝多態,何時用接口何時用抽象類,其實和設計模式相輔相成的。

還有 AOP,面向切面編程,大型項目通常都會用到,在不入侵代碼的同時添加功能,建議瞭解。

還有路由,如今都流行組件化,組件化的一個問題就是組件間如何依賴,如何通訊,這些都須要有良好的架構設計思想。我本身也在摸索中。

這部分的知識屬於我的經驗,不一樣的人不一樣的體會,沒有適合全部人的相關書籍,須要本身多寫、多總結出來。

4.4.JVM

在去一家公司面試時,隔壁屋也在面試一個後臺,在等待面試官時我偷偷聽了下他們的對話。其中有一段對話記憶深入:

  • 請介紹下 CMS 垃圾收集器。
  • 額,對不起,我只畢業一年,這方面瞭解的比較少。

JVM 的知識究竟須要工做幾年再瞭解呢?

不一樣的人有不一樣的見解,個人見解是:儘量早。

JVM 主要內容大概有這些(來自《深刻理解 Java 虛擬機》):

  • JMM(Java 內存模型)
  • GC(垃圾回收策略)
  • 虛擬機性能監控、調優
  • 類文件結構
  • 類加載機制
  • 程序編譯優化

這些內容可能聽起來比較遙遠,不少人以爲我就開發業務,須要瞭解這麼多嗎?看起來都沒什麼用。

理解這些內容,對咱們平常的業務開發有極大地促進做用:

  • 瞭解 JMM 後,你對內存分配、OOM 的理解就不會只停留在表層
  • 瞭解 GC 後,對性能優化的理解也會更上一層
  • 熟悉類加載機制後,對你學習插件化也會有很大幫助
  • 瞭解虛擬機對程序的優化,就會明白一些併發原語的做用及意義

而這些也是面試時常常問的問題,知道的越多,對你的加分就越多。

建議閱讀:《深刻理解 Java 虛擬機》

4.5. 插件化

插件化這麼火,各大公司都在研發本身的插件化,這不只僅是對業務的支撐,同時也顯示出他們安卓研發的技術深厚。

有的朋友可能會說了:我如今的項目用戶這麼少,用這個有什麼用。

不說學了有沒有用,在學習的過程當中,能夠對你現有知識體系有極大的提高,要開發插件化,須要掌握的內容大概有這些:

  • 類加載機制
  • 四大組件啓動流程
  • 資源加載
  • 動態代理

看到了吧,它是對一些疑難知識點的應用,經過有目的的學習,可讓咱們對基礎知識掌握的更加醇厚。

面試時若是你說本身有主動學習這方面的知識,還能說出一部分知識點,不只顯示出你的技術能力,還體現了你的主動學習性和學習能力,大大的加分!

進階知識是我本身經驗所得,若是有遺漏,歡迎補充。不喜勿噴

五.不一樣公司側重內容不一樣

有朋友可能會問了: 基礎的內容太多了吧,我可不能夠直接準備高級的。

首先你直接學高級很費勁,容易誤解不說,硬記下來沒多久也就忘記了;其次面試時的提問順序我上面也說了,都是從基礎開始的,基礎不紮實,活不過兩集。

這裏再嘮叨一句,若是一家公司靠投機取巧就能夠進去,那進去的投機取巧者豈止你一我的,那樣的公司氛圍是你想要的嗎?若是想進入一個理想的大公司,仍是踏踏實實地一步步走吧。

掌握了知識點後,接下來就要針對各公司側重內容重點複習了。

各大公司面試考察的知識點,網上相關的資料很多,我平時也在關注一些面經,看看裏面有什麼是本身欠缺的,而後找時間補上。

首先不一樣崗位的知識點不一樣,你們都知道,安卓開發有應用開發、音視頻開發、底層開發、SDK 開發等等,若是去應聘音視頻開發,那就要掌握 NDK 編解碼之類的。因爲我從事的是應用開發,因此這裏的知識點主要針對應用開發的同窗。

除了崗位方向,不一樣規模的公司、不一樣階段的項目關注的知識點也不一樣,對安卓開發,我總結了這麼 2 種分類:

1.成熟的大項目

  • 項目比較穩定,須要進行拓展、維護、監控
  • 須要面試者掌握:原理、設計模式、性能

2.初期的項目

  • 項目剛開始不久,須要完成業務快速迭代
  • 須要面試者具有:語言基礎、常見框架的使用、UI 方面

所以咱們在面試不一樣公司時,先根據 JD 瞭解重點招聘要求,然而最好再瞭解到招聘崗位對應的項目狀況,針對性地多多複習。

六.簡歷如何寫

俗話說,酒香也怕巷子深。

饒你十八般武藝,基礎進階全都掌握,過不了簡歷篩選這關,也是枉然。

這節咱們來了解如何寫簡歷,讓它能夠順利經過 HR 篩選、讓用人部門看着喜歡。

6.1.簡歷的一些常見問題

有關注我公衆號的朋友可能知道,我前段時間在公衆號發出了幫網友修改簡歷的活動,在這個過程當中,發現了不少問題,大概有這麼幾點:

6.1.1.樣式不過關
簡歷過於簡單或者過於花哨

6.1.2.關鍵信息不足
基本信息、聯繫方式、學歷、工做經歷、項目經歷、具有技能,檢查下這些都有沒有

6.1.3.方向不明確
面試安卓,簡歷裏安卓相關佔比太少,會前端後臺固然好,可是不能描述比例比安卓還多吧,你究竟是想找哪一個方向的工做
office ps 什麼的能夠考慮別寫了

6.1.4.亮點不突出
項目經歷、專業技能都太平凡,沒有核心亮點
回到 「跳槽前要思考的問題」 那節好好思考一下

6.1.5.誇大其詞
專業技能寫的很牛逼,各類前沿技術,插件化、熱修復、Kotlin... 實際上只是據說過或者寫太小 demo,說不出原理
接觸少的能夠去掉,有學習過原理的,能夠寫清楚,是正在學習

我見過有的朋友項目描述寫了估計有 500 字,其實沒必要那麼詳細,一句話概況項目功能就行了,關鍵是描述你用到的技術、框架,還有你在其中負責的任務,作了哪些高質量的操做。這些是面試官在乎的東西,會就這些內容提問。

其實在寫簡歷時咱們就發現了,若是平時只是寫寫業務代碼,簡歷上不知道該怎麼寫,這就要求你倒逼本身了,平時要作些業務以外的東西,好比優化,好比重構,作久了,這些就成了你的亮點。

另外項目裏某些模塊(好比基礎框架)即便不是你實現的,只要花點心思瞭解實現原理,也能夠厚着臉皮寫成你實現的,嘿嘿。前提是掌握的差很少了哦,否則被問住就尷尬了。

項目經驗修改建議:

  • 最好加上遇到什麼問題、怎麼解決的、有沒有學習到新技能
  • 突出招聘公司要求上的關鍵字,也就是說你的簡歷要針對性修改
  • 例如對方要求熟悉第三方支付接入,那你就要突出這個
  • 若是對方說了解前端開發優先,那就要突出 H5 JS

在寫技能時,還要把握好 「瞭解」、「熟悉」、「掌握」、「精通」的度,自戀如我,也不敢寫一個精通,由於我以前試過,只是大概看了下源碼,就得意地寫了個精通,結果被問的臉都發紅,之後不再敢了 -。-。

若是你的技能內容太多,試着這樣修改:

  • 去掉一天就能學會的技能,尤爲是非 Android 的
  • 對技術的掌握程度適度修改,能說出 WHAT WHY 的纔算「熟悉」,知道 HOW 的纔算「掌握」
  • 最好有研究過一兩個第三方框架源碼

「自我評價」 就算了,太過主觀,沒什麼說服力,我這裏用 「其餘」 代替,寫一些客觀信息,有理有據,讓人信服。

七.簡歷怎麼投

知識點準備的差很少了,簡歷也修改過了,萬事俱備,只差投簡歷了。

有的朋友會說:我這就投他百十來家,還不信沒有面試?!

7.1. 渠道和時機

前兩天跟一個業內知名大佬聊天,這個大佬有多大佬呢,這麼說吧,若是個人能力影響力是青銅,那他就是磚石!

這麼牛逼的大佬,去年投簡歷,竟然被一個公司拒了!

這是怎麼回事?HR 視力有問題?

哈哈,其實也不是,真實的緣由是那個崗位只招一我的,這邊 HR 剛發出去,那邊就有人找內推,搶佔了先機。大佬雖然是大佬,但也沒得辦法。

這其實反映了一個問題,簡歷投遞的渠道和時機。

若是你想去的是知名大公司,走外部渠道,就要作好和不少人競爭的準備,除了簡歷競爭,還有面試競爭、薪資競爭要求等等,這是供與求關係決定的。

可是若是走內推,簡歷第一時間到用人部門,就省事多了。

因此說在想去大公司時,最好事先找好內推渠道,通常這些公司內推都有獎金,員工也都比較樂意。

除了渠道,時機也很重要,「金 3 銀 4」、「金 9 銀 10」 爲何有這種說法呢,有一部分緣由就是這事加薪季,有的員工對加薪結果滿意,就跳槽了,A 跳 B,B 跳 A,漲工資的同時促進了招聘、獵頭的生意,你們都發財,因此就這麼叫嘍。

正是這個時候大公司的空缺比較多,咱們進入的機會就大了幾成。

要是選擇年末,機會就少了些,畢竟辛苦一年,怎麼也得拿了年終獎再走啊。

7.2.投遞的策略

在選擇投遞簡歷時,有的朋友喜歡隨便投,一投幾十家,姜子牙釣魚,願者上鉤。

這種廣撒網策略,對於水平差點的還能夠,面試機會少、選擇也少,就去了;但要是水平還能夠的,邀請面試機會一多,被坑的其實仍是本身。

首先人的激情是有限的,你不可能面了幾十家還保持同樣的心態,到後面不免疲憊。前幾家面試的,若是有公司先對你拋出橄欖枝,有可能你就選擇了他們;若是好點的公司被排到後面面試,極可能你就懶得去了。

拿我來講,找人內推了兩個很知名的公司,沒有等多久就又從拉勾上投了簡歷,結果拉勾上投的發了 offer 很久了,那兩個公司纔給我打電話邀請面試,我就懶得去了。

大公司簡歷處理比較慢,所以投遞時最好按公司規模、待遇從大到小按順序投,一波投完等幾天,沒有反饋再投下一梯隊的,不要太心急。

並且面試時間不太密集,也便於你面完一家總結複習。

7.3.公司選擇

有的朋友會問了:我想去的公司太多了,也不在意公司大小,只要給的錢多,無論哪一個公司都行。

嗯,這其實也是一部分人的選擇,各有所好,不可能人人都喜歡去大公司。

在選擇公司時,除了規模、待遇外,建議也看看這些因素:

  • 行業
  • 前景
  • 公司地址

行業

挑一個喜好的行業仍是比較重要的,前面也提到了,一我的的能力除了說技術能力,還有業務能力。

選擇一個你喜歡的行業,長期的從事下去,到必定程度上,你能夠承擔產品經理的責任,想升官發財還不容易 ?

行業比較多,o2o,醫療,電商,外賣,音視頻,下載一些對應的 app,看看你平時都喜歡玩哪一個,而後在投遞時重點投遞。

前景

在創業公司工做過的朋友可能知道,一個公司從興盛到降落,會致使公司福利、員工心態、團隊氛圍的各類變化,若是你不想經歷傳說中的「發不出工資」,就要慎重選擇。

什麼樣的公司有前景呢?

其實最操心這個問題的應該是投資人。

咱們做爲程序員,在選擇公司時,先了解對方公司信息(規模、盈利模式、主營產品),瞭解到靠不靠譜,去了能不能好好幹幾年。

儘可能選擇成熟、穩定的,B C D 輪甚至上市的,必定短時間內倒不了。那些剛起步的,儘可能選擇有實體行業背景、硬件產出的公司,畢竟純互聯網很容易跨,有實體、硬件支撐還能多玩會兒。

公司地址

若是選擇了 IT 公司密佈的地段,就要作好早起的準備。傳說中的「人潮 9 號線」,能夠去體驗體驗。

另外也能夠從這些方面肯定要不要投遞這個公司:

  • 過小的不去(10-50人)
  • 工資太少的不去
  • 有惡劣小道消息的不去
  • 加班多、拖欠工資

八.面試前須要準備什麼

曾經有份真摯的面試擺在個人面前,我沒有珍惜,等到失去的時候才後悔莫急,人世間最痛苦的事莫過於此,若是上天在給我一次機會,我會對那個面試說「我必定作好準備」,若是要給這個準備加個期限,我但願是三四天。

在焦慮又心急的等待中,你迎來了一個陌生的電話,當電話那邊的說出「我是某某公司的 HR....」,你渾身一顫眼眶發紅:面試,我終於等到你了!

掛了電話後你心裏激動、摩拳擦掌,彷彿已經來到了戰場。有了大量準備的你意氣風發,心想憑個人水平,還不是所向披靡佛擋殺佛鬼擋殺鬼風風火火恍恍惚惚?

而後就接着發呆、打遊戲,狀態好點的會把知識點再複習一下。

看起來一切都很完美,萬事具有隻待東風。

面試是雙方相互瞭解的過程,對方不只須要瞭解你的硬實力、軟實力,還須要瞭解你對這份工做的態度(敲黑板,這是重點)。

試問有兩個候選人,技術或者其餘各方面水平差很少 ,一個對公司瞭解更多,表現出來的興趣更濃厚些,另外一個則「我不知道大家公司是幹什麼的,但選我沒錯的」,你會選擇哪一個呢?

答案很是明顯,那怎樣可讓對方以爲你對公司、崗位頗有興趣呢?

有朋友會說了:那還不簡單,網上搜搜這個公司的介紹,瞭解瞭解主營業務,再記住他們的什麼企業文化,哇,我已是很努力的面試者了。

NO NO NO!

公司介紹、企業文化這些應該是在投簡歷階段就瞭解的,稍微有心的人就會作到。咱們想在衆人中脫穎而出,就要更進一步!

這裏列出我常常作的準備:

  • 作功課,瞭解產品
  • 反編譯,ClassShark 查看主要使用的類庫
  • 重點要求技能
  • 準備一個展現本身水平的內容,亮點

首先就是了解公司的業務,招咱們去作什麼項目,網上若是查不到,好,記錄一下,面試時提問他們。

而後瞭解公司的研發團隊規模,安卓多少人,網上若是查不到,好,記錄一下,面試時提問他們。

接着反編譯下對方的項目,看看主要使用了什麼類庫,而後把用到的庫挑一兩個好好研究研究,面試時能夠提問「大家有用到 XX 庫嗎?」對方確認後,能夠好好的裝一逼,哈哈哈,想一想就很爽!

另外就是項目重點要求的技能,除了 JD 上說的,還有根據項目類型判斷、作準備,若是是投資、股票類的,那可能要求畫圖表、K 線,你最好準備準備自定義 View,而後面試時主動介紹,哈哈,又是加分項!

總之,面試前要儘量多地瞭解對方,表現出你的興趣,把一些沒法瞭解到的做爲問題,也能夠避免人家讓提問時沒問題的尷尬。

九.面試中的注意事項

前面提到了,程序員面試主要考察:

  • 技能水平
  • 學習能力
  • 團隊合做
  • 工做心態等

要在短短几個小時內肯定這些內容,面試者必定要儘量地表現本身。

咱們主要注意這些方面:

  • 着裝禮儀
  • 氣勢
  • 筆試的態度
  • 面試互動

9.1.着裝禮儀

有的朋友平時喜歡大褲衩、拖鞋上班,我有時候也這樣,舒服,尤爲是下雨的時候,水中隨便跑,哈哈哈開心。

但面試時要還這樣那就是二傻子,在第一次見陌生人時,咱們必定會「以貌取人」,快速創建第一印象。

一旦第一印象創建了,後面就是對它的確認和微調,沒有人會願意主動認可本身錯了。

若是第一印象是「沃日,這人真邋遢」,後面你稍微表現差一點,對方就會想「又邋遢又表達能力差」,明白了嗎?開頭的失誤會致使方向性地錯誤;若是第一印象是「嗯,這小夥還能夠,乾乾淨淨,長得還有點帥」,有了好感後他就會主動來確認本身的想法,即便出點小問題也不會影響太多。

因此儘量地穿戴整齊,頭洗的乾淨點,眼鏡擦乾淨,見面微笑,表現得天然大方,印象分就會不錯。

面試先後來個握手,肉體接觸,喔,好感又加一分,勝利更近一步哈哈。

9.2.氣勢

面試實際上是個雙向瞭解的過程,咱們沒必要把本身姿態放到過低。就跟戀愛同樣,一旦你低微到塵埃裏,對方就會不珍惜你。

因此要調整本身的心態:我就是我,不同的煙火,不卑不亢,此處不留爺自有留爺處!

有了這樣的想法後,氣勢就會好一些,腰桿也挺直點。

9.3.筆試的態度

不少公司喜歡讓人寫筆試題,其實我也是不想作的,但若是這公司的確不錯,仍是老老實實作吧。

大學畢業後好久沒作卷子,拿到卷子可能會有些手生,不要緊,就這樣想:跟着感受走。

事實上你寫的卷子沒有人去一道道批改,有的公司甚至都不看,差點把我氣死。

通常負責任的面試官會在面試時大概看下你寫的筆試題。尤爲是手寫算法,或者畫圖的,須要好好寫,這些是重點關注對象。

像那種考察 API 使用、判斷代碼輸出結果的,我見過幾回,基本都隨便寫寫,這種題不知道有什麼好考的。從筆試題其實也能夠看出一個公司的水平,若是筆試題都是基礎概念、API 的做用,網上一搜一大把那種,仍是當心點吧。

9.4.面試的互動

遇到了解的問題自信一點,嘴角微翹,淡定地說一句「哦,這個啊,我研究過」,會多少說多少,儘可能拓展到本身熟悉的知識點。

遇到不會的問題,不要「我不會」一口回絕,這讓你這道題一分都拿不到,還容易尷尬。誰也不免有不會的,正確的操做是:歉意一笑,「對不起,這個我沒研究過,我思考一下」,而後眉頭微皺,集中精力想一想本身腦子裏有什麼能掛上邊的,思考個兩三分鐘後,跟對方把你想到的和根據經驗猜想的說出來,這樣起碼不是交白卷,也能夠體現你解決問題的思路。

若是碰到算法題這些,先確認問題,而後確認輸入輸出參數,不肯定就問,不要很差意思。

若是想不出思路,臉皮厚點,問問可不能夠提醒一下,上社會臉皮薄會吃不少苦,趁早變厚。

在對方輸出一些問題的解決方案時,最好主動反問,讓對方多說一點,我有次面試,四十分鐘下來感受是對方一直在我,我根據他說的問些問題,而後就這麼經過了,搞的我一臉懵逼。

對方說得越多,其實他對此次面試就越承認。不過這取決你提問的技巧,要問到他 G 點上,不要問些不相關的、基礎的問題,反而讓人厭惡。

面試中的經典問題

面試中,面試官和 HR 會有一些經典問題,好比:

  • 你以爲和同齡人相比本身優點在哪裏呢?
  • 你的職業規劃是什麼?
  • 你瞭解咱們公司嗎?
  • 你有什麼問題須要問個人嗎?

這些問題基本就是在前面準備階段我提到的,要準備的內容。若是沒有提早準備好,不容易答出優點。

9.5.面試結束後作什麼

有朋友問我了:面試了幾輪讓我回去等消息,這都幾天了還沒聯繫我,怎麼回事,過沒過啊?

借用一句網絡語:面試的怎麼樣,你內心沒數嗎?

通常面試是三四輪,若是沒進行到最後、沒談薪資,就讓你回去,就說明基本掛了。

不要泄氣,就當是一次免費學習,找到本身的不足和問題,趕忙查漏補缺。

面到最後結果不肯定的,也別心急,對方可能有好多面試者要對比,你心急也沒用,不如安安心心開始下一個面試的準備。

通常我面試完會思考這些問題:

  • 都問了哪些問題
  • 哪些問題明明有印象,但就是沒回答上來
  • 哪些問題以前沒了解過
  • 面試官水平怎麼樣
  • 去面試了一圈,感受這個公司怎麼樣

不會的問題趕忙去看看,不必定下一個面試就問了。會的沒想起來,是否是隻瞭解概念,儘可能寫點代碼練習練習。

在雙方互動時,咱們也能夠大概瞭解面試官的水平,若是運氣好遇到問問題比較簡單的,你就要想一想,是本身的簡歷寫的太簡單了嗎?仍是他水平就這樣。

若是面試官問的你都會,不要光顧着驕傲,有可能這家公司水平就這樣,若是決定去,你要作好填坑的準備。

十.如何選擇 offer

人啊,老是發愁。

水平差,面試結果很差,發愁;照着前面的內容努力作了很久,通過幾天的奔波,拿到了一些 offer,又開始發愁,選哪一個好呢?

若是已經拿到心儀的 offer ,後面再面試薪資就多要一些,要一個可以讓你放棄如今的價,那樣就不會像我同樣在兩個 offer 中間糾結好久。

在對比 offer 時,第一步先了解 offer 內容:

  • 月薪,餐補,多少薪,計算年薪
  • 平臺
  • 五險一金,按多少錢交的
  • 技術氛圍
  • 工做內容
  • 晉升和調薪的機會
  • 特殊福利
  • 商業保險、年假、加班餐、打車等
  • 上下班時間,加班怎麼算

通常主要考慮的是前兩點:錢和平臺。

前兩點基本能過濾掉大部分。

剩下的少有幾個差很少的,就須要考慮其餘因素了,好比:

  • 自我規劃
  • 行業
  • 興趣

自我規劃

自我規劃是指你對本身的發展方向,好比我,近幾年的規劃是走大前端混合開發路線,那就要考慮我要進入的項目的技術棧,是否可以讓個人學習目標得以實踐。

以犧牲長期發展爲代價,去選擇一個只是當下不錯的機會,無異於二傻子。

若是多個選擇在這方面差很少,就得再往大看了,行業!

行業

技術是爲了業務服務,咱們在一個公司工做,不只要提高本身的技術能力,還要提高對行業的認識。

行業對咱們的影響大概有這麼 2 點:

  • 增長對社會的認識
  • 選擇下個工做時能夠複用的業務、技術經驗

所以在選擇行業儘可能選擇貼近生活的、熱門的、能夠盈利的,好比電商、音視頻這種。

若是你計劃未來本身作些什麼,更要考慮每一份工做能夠給你積累的業務經驗,好比我第一份工做是汽車電商,就瞭解了主流汽車的一些價格狀況,還有購車渠道。

興趣

除去上面的硬性條件,興趣也是一個比較重要的選擇內容。

若是你喜歡一個產品,你可能天天都會使用,有使用不爽的地方能夠去找產品、老大反映,領導會以爲這個小夥子很積極主動,升職加薪還能少?!

玩笑歸玩笑,但作本身有興趣使用的產品,主動性的確會高不少,若是作的不錯,也會有自豪感不是麼!

十一.如何優雅地離職

最後再補加一節:如何優雅地離職?

在肯定 offer 後,就要跟現公司提離職了,離職時注意如下內容:

  • 社保繳納
  • 交接工做
  • 社保繳納

社保是很重要的一個內容,無論辦居住證仍是未來買房,都有要求,萬一斷了就很差搞了。

因此在離職前要和上下家 HR 溝通好,究竟這月社保哪家繳納。

一個通用的規則是:15 號前離職下家交,15 號後離職上家交。因此選擇合適的離職日期也很重要。

交接工做

雖然心已經在新公司,但作爲有操守的程序員,咱們仍是要盡到本身的責任,把本身負責的工做交接好。

在交接工做時,有如下幾步:

  • 理清責任內容
  • 寫文檔、畫流程圖
  • 手把手指導

人非草木,畢竟在這家公司待了這麼久,在走以前就再負責一次吧!

爲了留下足夠清晰的資料,就須要咱們寫些文檔、圖表,把本身手上完成的、未完成的、須要特別注意的內容都寫清楚,給接盤的哥們足夠友好的資料,若是這個哥們態度還能夠,能夠手把手指導下,順便送我的情。

十二.總結

人生的路仍是要本身走,別人最多給些方向,平時但行好事,莫問前程,一步步地努力終將獲得回報的!

但願你看完文章後能夠努力執行,給未來的本身一個感謝如今的機會!

最後整理了一波平時本身學習的學習資料,須要的能夠加個人QQ交流羣:892872246
整理了一些關於平時開發中會用到的知識點。須要更多相關的代碼源碼等等的能夠討論哦 本專欄爲那些想要進階成爲高級Android工程師所準備。 從初中級轉向高級工程師須要從技術的廣度,深度上都有必定的造詣。因此本專欄就主要爲你們分享一些技術,技術原理等。 包含源碼解析,自定義View,動畫實現,架構分享等。 內容難度適中,篇幅精煉,天天只需花上十幾分鍾閱讀便可。 你們能夠跟我一塊兒探討,有flutter—底層開發-性能優化—移動架構—資深UI工程師 —NDK-人工智能相關專業人員和視頻教學資料 。後續還有最新鴻蒙系統相關內容分享。
圖片描述

相關文章
相關標籤/搜索