三年百度,五年阿里,阿里p8架構師淺談:我是如何順利進入BAT
說來慚愧,也不怕你們笑話。做開發8年多,到目前還是一名不折不扣的掃地僧。年前的辭職,到現在還在家靜養中。其實也沒什麼,就是回家總結一下自己這些年來在外工作與面試等做一個簡單的總結與反思。做一下自己後面一個人生規劃。不過在家每天也是在擼碼,還有就是複習與學習現在的架構知識點,學習使人進步嘛!不是麼?畢竟技術還是不能落下。
前些天在我群裡認識了以為挺有意思的老哥,他也是工作8年多(技術和麵試都不差),最近也是在找工作,是從京城來魔都的,也和他撈了不少。聽他說是面試了很多廠,但還是找不到合適的,畢竟像這個工齡段的找工作,去小廠的話,“自己”也看不上,到看上了的薪資又不是很滿意。這也是非常尷尬的一點。所以當時我也是給了他一個很好的建議。要不,去面試大廠試試吧,雖然說年齡不小了,但就當是進去鍍層金吧。
目前那老哥已經在準備面試了,也是投了上海的阿里螞蟻金服等大廠,在這裡也希望他能順利通過吧!
不囉嗦那麼多了, 現在直接進入正題,相信在今年的金三銀四跳槽面試中,相信大家肯定也是遇到了很多很多面試官的各種刁難等難題。也相信也都有很多小夥伴們沒有找到心儀的公司,或者是還在找公司當中,也有的是隨便找了些公司先將就著先的都有~~
不過,今天這篇文章,我相信你看了後,對往後的面試,相信你也是有把握拿下offer。今天,我會在文中寫有最近幾月的各大廠的面試題,和自己個人的心得總結等,相信可以幫到大家。
注意:前方高能,文章內容有點小長,希望你能耐心閱讀,面試題答案獲取方式:加群1017599436免費獲取。還有更多包括電子書,PDF文件以及視訊精講可以分享給大家。
文章內容簡要
- 面試題
- 如何選擇一家公司
- 如何提高面試成功率
- 怎樣跳槽最有利於自身發展
- 認知這五步,你可以輕鬆應對面試,輕鬆拿到offer
- ..........
面試題
alibaba中介軟體團隊
一面:
- 自我介紹
- 擅長哪方面的技術?
- Java有哪些鎖種類?(樂觀鎖&悲觀鎖、可重入鎖&Synchronize等)?
- 比較重要的資料結構,如連結串列,佇列,棧的基本理解及大致實現?
- J.U.C下的常見類的使用。ThreadPool的深入考察;BlockingQueue的使用?
- Java記憶體分代模型,GC演算法,JVM常見的啟動引數;CMS演算法的過程。?
- volatile關鍵字有什麼用(包括底層原理)?
- 執行緒池的調優策略?
- spring cloud的服務註冊與發現是怎麼設計的?
- 分散式系統的全域性id如何實現?
- 分散式鎖的方案,redis和zookeeper哪個個好,如果是叢集部署,高併發情況下哪個效能更好。
二面:
- 參與的專案,選一個,技術難度在哪裡?
- Collections.sort底層排序方式?
- 負載均衡的原理?
- 設計模式與重構,談談你對重構的理解?
- 談談Redis相關的叢集有哪些成熟方案?
- 再談談一致hash演算法(redis)?
- 資料庫索引,B+樹的特性和建樹過程。
- mysql相關的行鎖,表鎖;樂觀鎖,悲觀鎖?
- 談談多執行緒和併發工具的使用?
- 講講Redis的架構和元件?
- Redis的資料一致性問題(分散式多節點環境 & 單機環境)?
- docker容器?
三面:
- 高併發情況下,系統是如何支撐大量的請求的?
- 接著上面的問題,延伸到了中介軟體,kafka、redis、rocketmq、mycat等?
- 設計思路和適用場景等?
- 最近上過上哪些技術站點;最近在看哪些書。
- 工作和生活中遇見最大的挑戰,怎麼去克服?
- 未來有怎樣的打算?
- HashMap和Hashtable的區別?
- 實現一個保證迭代順序的HashMap?
- 說一說排序演算法,穩定性,複雜度?
- 說一說GC?
- JVM如何載入一個類的過程,雙親委派模型中有哪些方法?
- TCP如何保證可靠傳輸?三次握手過程?
四面:(HR)
- 主要交流為什麼選擇來阿里,未來的打算等,交流挺愉快。
螞蟻金服
一面:
- JVM資料儲存模型,新生代、年老代的構造?
- java GC演算法,什麼時候會觸發minor gc,什麼時候會觸發full gc?
- GC 可達性分析中哪些算是GC ROOT?
- 你熟悉的JVM調優引數,使用過哪些調優工具?
- Java 有什麼鎖型別?
- 描述下執行緒池的處理流程?
- 類載入機制,一個類載入到虛擬機器中一共有幾個步驟,這些步驟的順序哪些是固定的,哪些是不固定的,為什麼不固定
- hashmap是執行緒不安全的,concurrenthashmap是執行緒安全的,怎麼實現的執行緒安全?
- volatile關鍵字解決了什麼問題,實現原理是什麼
- 併發容器有哪些,併發容器和同步容器的區別
- 說說HaspMap底層原理?再說說它跟HaspTable和ConcurrentHashMap他們之間的相同點和不同點?
- 講講jdk1.7和1.8的區別?
- 幾種內建的執行緒池
- MySQL事務隔離級別以及MVCC機制
- Redis快取雪崩、快取穿透以及如何解決?
- 分散式架構簡單介紹
- CMS收集器和G1收集器最大的區別在哪裡?
- 有實際的JVM效能優化經驗?重點應該監控哪些指標,以及如何來調整引數?
- Java執行緒鎖有使用過哪些?比如樂觀鎖、悲觀鎖類似這樣使用區別?
二面:
- 在工作中,SQL語句的優化和注意的事項
- 哪些庫或者框架用到NIO
- Spring 都有哪幾種注入方式,什麼情況下用哪種,ioc實現原理
- 如何定位一個慢查詢,一個服務有多條SQL你怎麼快速定位
- 聚集索引和非聚集索引知道嗎?什麼情況用聚集索引什麼情況用非聚集索引
- Nosql引擎用的什麼儲存結構,關係型資料庫和NoSQL各自的優劣點是什麼,如何技術選型?
- 微服務架構下,如果有一個訂單系統,一個庫存系統,怎麼保證事務?
- 分散式一致性協議raft,paxos 瞭解嗎
- Zookeeper中的ZAB協議,選主演算法
- 熟悉哪些NIO框架,以及談談你對NIO、BIO、AIO的認識?
- 談談Java執行緒池的執行機制?
- 常用的中介軟體有哪些?Dubbo、RocketMQ、Redis..
- 然後繼續隨著中介軟體開始深入,RocketMQ的核心元件,以及如何解決訊息去重?
- MySQL和Redis的快取如何解決資料一致性?
- Redis是單程序單執行緒的?為什麼Redis高併發快?
三面:
- 自我介紹
- 參與的併發專案,從設計到部署,按照流程講一遍。
- 專案相關你用過redis,用在什麼場景,怎麼使用的?
- mysql同步機制原理,有哪幾種同步方法
- 資料庫主從同步如何實現,事務如何實現
- 談談你對SOA和微服務的理解,以及分散式架構從應用層面涉及到的調整和挑戰。
- 阿里系中介軟體metaQ及原理與現有的kafka有什麼異同
- 有了解過什麼中介軟體嗎?實現原理?與其他開源訊息佇列有什麼特點?
- 介紹最有挑戰的專案?技術難度在哪裡?
- 畫一個典型的分散式架構圖,從前端負載均衡到中介軟體,以及後端資料庫,整個流程?
- SOA和微服務有什麼關聯?以及你對微服務的理解
- 隨著這個話題談到了Dubbo的架構設計?
- 秒殺的設計思路?
- 個人平時怎麼提升技術?
- 為什麼選擇換公司?
- 三年到五年的職業規劃?
- 你有想問我的?
四面:(HR)
- 基本就是走流程,聊人生、談未來、以及薪資要求了。
京東
一面(基礎面:約1個小時)
- 自我介紹,主要講講做了什麼和擅長什麼
- springmvc和spring-boot區別
- @Autowired的實現原理
- Bean的預設作用範圍是什麼?其他的作用範圍?
- 索引是什麼概念有什麼作用?MySQL裡主要有哪些索引結構?雜湊索引和B+樹索引比較?
- Java執行緒池的原理?執行緒池有哪些?執行緒池工廠有哪些執行緒池型別,及其執行緒池引數是什麼?
- hashmap原理,處理雜湊衝突用的哪種方法?
- 還知道什麼處理雜湊衝突的方法?
- Java GC機制?GC Roots有哪些?
- Java怎麼進行垃圾回收的?什麼物件會進老年代?垃圾回收演算法有哪些?為什麼新生代使用複製演算法?
- HashMap的時間複雜度?HashMap中Hash衝突是怎麼解決的?連結串列的上一級結構是什麼?Java8中的HashMap有什麼變化?紅黑樹需要比較大小才能進行插入,是依據什麼進行比較的?其他Hash衝突解決方式?
- hash和B+樹的區別?分別應用於什麼場景?哪個比較好?
- 專案裡有個資料安全的,aes和md5的區別?詳細點
二面(問資料庫較多:約五1個小時)
- 自我介紹
- 為什麼MyISAM查詢效能好?
- 事務特性(acid)
- 隔離級別
- SQL慢查詢的常見優化步驟?
- 說下樂觀鎖,悲觀鎖(select for update),並寫出sql實現
- TCP協議的三次握手和四次揮手過程?
- 用到過哪些rpc框架
- 資料庫連線池怎麼實現
- Java web過濾器的生命週期
三面(綜合面,約五十分鐘)
- 自我介紹。
- ConcurrentHashMap 在Java7和Java8中的區別?為什麼Java8併發效率更好?什麼情況下用HashMap,什麼情況用ConcurrentHashMap?
- 加鎖有什麼機制?
- ThreadLocal?應用場景?
- 資料庫水平切分,垂直切分的設計思路和切分順序
- Redis如何解決key衝突
- soa和微服務的區別?
- 單機系統演變為分散式系統,會涉及到哪些技術的調整?請從前面負載到後端詳細描述。
- 設計一個秒殺系統?
四面:(HR面)
- 你自己最大優勢和劣勢是什麼
- 平時遇見過什麼樣的挑戰,怎麼去克服的
- 工作中遇見了技術解決不了的問題,你的應對思路?
- 你的興趣愛好?
- 未來的職業規劃是什麼?
百度
百度高階Java一面
- 自我介紹
- 物件相等的判斷,equals方法實現。Hashcode的作用,與 equal 有什麼區別?
- Java中CAS演算法?
- G1回收器講一下?
- HashMap,ConcurrentHashMap與LinkedHashMap的區別
- 如何在多執行緒環境下使用Map,ConcurrentHashMap原理,ConcurrentHashMap如何加鎖。
- 多執行緒併發的同步實現,有兩個方法,每個方法裡有a部分程式碼和b部分程式碼,我要讓兩個執行緒分別執行兩個方法,並且讓他們執行完a部分程式碼再一起向下執行,如何實現。
- TCP連線中的三次握手和四次揮手,四次揮手的最後一個ack的作用是什麼,為什麼要time wait,為什麼是2msl。
- aio,nio,bio的瞭解
- ReetrantLock和synchronized的區別。
- Java有哪些悲觀鎖的實現?
- Java有哪些類實現了樂觀鎖?
百度高階Java二面
- Spring兩大特性?AOP和IOC
- Spring的初始化過程?Spring bean的生命週期?
- 多個RPC請求進來,伺服器怎麼處理併發呢?
- MySQL的索引實現原理?聚合索引和非聚合索引的區別?
- MySQL有哪幾種join方式,底層原理是什麼?
- MySQL的引擎講一下,有什麼區別,使用場景呢?
- 資料庫的事務,四個性質說一下,分別有什麼用?
- 常見的分散式事務解決方案有哪些?
百度高階Java三面
- 介紹專案,以及畫相關的分散式架構圖
- 資料庫的備份和恢復怎麼實現的,主從複製怎麼做的,什麼時候會出現資料不一致,如何解決?
- Netty的實現原理?
- 分散式下Redis如何保證執行緒安全
- Redis怎麼做持久化?兩種持久化的區別?
- MongoDB、Hbase、Memcached、Redis各自的應用場景和區別
- Docker平時怎麼使用的?
- 併發mysql的場景,查詢優化怎麼做?
- 設計一個高併發高可用的架構方案,關鍵核心設計?
美團
一面
- 執行緒池用過哪些,執行緒池有哪些引數,然後問我幾個常用執行緒池的用法和實際場景問題。
- 集合框架的知識,hashmap,ArrayList,LinkedList原始碼相關知識,基本整個介紹了一遍,與hastable,concurrenthashmap相互的關聯和區別
- 說幾個垃圾回收器,cms回收器有哪幾個過程,停頓幾次,會不會產生記憶體碎片。老年代產生記憶體碎片會有什麼問題。
- 講講快速排序,分析一下時間複雜度?
- 雙親委派模型介紹一下
- java中同步、volatile關鍵字
- jvm記憶體分割槽,為什麼要有新生代和老年代
- 有做個JVM記憶體優化嗎?
- 資料庫索引 主鍵和唯一索引有什麼區別
- 聚集索引和非聚集索引的區別?
- MySQL儲存引擎innoDB和MyISAM的區別?
- innoDB的B+樹索引葉子節點的Data域儲存的是什麼?MyISAM的B+樹索引葉子節點的Data域儲存的是主鍵還是實體地址?
二面
- MySQL innodb的b+樹索引,主鍵索引,聚簇索引有什麼區別。
- 資料庫四大特性
- 事務的四大隔離級別
- jvm場景問題, 標記清除多次後老年代產生記憶體碎片,引起full gc,接下來可能發生什麼問題。
- MySQL裡有哪些鎖,行鎖表鎖,樂觀鎖呢
- MySQL的死鎖怎麼產生的,舉了兩個例子。
- dubbo裡的zookeeper是做什麼的
- aio,nio,bio的瞭解,NIO的核心概念有哪些?
- 常用的NIO框架有哪些?優劣勢
三面(總監面)
- 分散式下redis如何保證執行緒安全
- redis持久化的方式以及區別
- zookeeper如何實現分散式鎖、其他分散式鎖怎麼實現
- kafka的架構,如何用kafka保證訊息的有序性
- 資料庫的優化包含哪些?MySQL的優化,談兩個你優化的例子。
- 最有技術難度的專案,介紹下相關核心設計流程。
- 工作中,遇見了技術瓶頸無法解決,你的解決思路?
- 未來你的職業規劃是怎麼樣?
如何選擇一家公司
不管是剛畢業的大學生還是工作幾年的職場朋友,每個人都會面臨選擇公司和行業的困擾,我也相信每個人都還記憶猶新你的第一份工作以及讓你無比難忘的一家公司。有時候我們也盲目的所求,其實,偶爾停下來思考下你真想去的地方,再出發,也許結果將迥然不同。今天,給大家聊聊,如何選擇一家公司。
BAT
應屆畢業生和工作3-5年階段技術人員,優先推薦期間進入BAT較好。BAT裡大家的共識是分為三類:技術優先進百度,運營進阿里,產品進騰訊,這個共識對很多人其實是沒有意義的,因為你甚至一家都進不了,何談選擇。
下面我談下個人經驗,也許能給你帶來點思路。我是在工作第3年加入阿里淘寶,截止到現在,淘寶這個階段我還是認為這個階段為自己打下了堅實的基礎和視野,成長最快的還是在這個階段,這是我個人的一個體會。
在早期階段,你需要為自己打下堅實的基礎,這個基礎包含:技能、態度、溝通,還有一點至關重要,那就是“視野”,這一點的重要度,很多時候被職場的名利所忽視。視野聽起來很寬泛,但如果你仔細辨認,其實一目瞭然,當你身邊都是一流的人才的時候,你自然會學到很多,這其中的某些學到的品質,會影響你很久。
簡要概括幾點重點:
- 有機會快速認識很多牛人。
- 視野開闊很多,不僅僅在技術。
- 每次專案,你會接觸潛在很多關於產品、運營、設計的知識,類似這些知識算是長期積累的過程,是經得起驗證的知識體系。
- 早期進入,你的壓力一定會很大,但成長也會很快,在裡面鍛鍊幾年你會比外面工作十年的厲害很多。
- 不管你是繼續在BAT還是你準備以後離開,都是一個很好的信用背書,前提是你在裡面做的還不錯。
- 任何職場都有潛規則,但這個階段你需要做到專注,專注提升自己的實力,潛規則放在一邊,這個階段需要專注提升。
- 如果你實在受不了太多的限制於約束,或者你完全可以獨擋一片,當然你可以不進BAT,我只是告知你發展階段的一種途徑而已。
成長型公司
這裡我不區分是一線網際網路企業還是創業型企業,統稱為成長型公司。怎麼區分成長型公司?一般過了A輪,初步你可以理解為成長較快。在職場早期如果你很難進入BAT,你可以考慮進入成長型鍛鍊。人生就是這樣,很有可能,你會失之東隅收之桑榆,鍛煉出來比在BAT還厲害的多,而且心智更全面,特別適合以後創業。有一種思維叫風險與收益成正比,你的風險相對於公司的風險,你的風險還是偏小。所其思考有什麼風險呢,還不如安心專注提升自己。
我簡要概括幾件重點:
- 做好功課-選擇行業你首先需要做好功課,選擇行業。不管你是網際網路+(網際網路改造)、網際網路企業、+網際網路(偏傳統),他們都對應一個行業屬性。行業屬性在以後比例會逐漸上升,很有可能你幹著技術的活,很多人需要來請教你行業的知識。
- 建議選擇公司-心中有順序優先選擇網際網路企業,其次網際網路+(網際網路連結),再次+網際網路,再次傳統企業和國企。邏輯很簡單,如果你是做技術的,你可以看見哪家公司,技術是核心部門。沒有哪家公司不對自己的核心部門長期投入的事。技術的利用在網際網路企業裡,使用者基數更大,這個時候技術才能發揮作用。
- 認清優勢-不斷積累因為除了做技術,你很有可能還需要兼職產品,甚至運營的工作。如果你某一天要走上創業這條道路,那將幫助你不少。如果你只是通過該公司成功踏上類似BAT這條船,也不錯。希望今天的內容能對你帶來點思考。
總之,畢業選擇加入一家公司,首先的有自己的一個基本判斷,進入什麼樣的行業以及對應的職位,首先需要過濾清楚,然後再行動。沒有說哪一條是最好的,但至少結合你的當下的情況,你可以選擇當下最優。
如何提高面試成功率
很多人說到面試,頭一下就大了,各種不自信,是實力不夠還是信心不夠?面試除了你平時不斷積累實力,另一方面也需要講究面試方法和技巧。我特別喜歡一句話:不打沒有準備的戰。
1·第一步:快速聚焦崗位職責
凡事講究方法,多用心、多動腦、多動手。
1.至少職責先匹配上吧
重點關注面試職位的崗位職責,結合該崗位需要的知識體系,開始準備,這樣聚焦。知識體系的匹配。很簡單,自己上網搜,各種題庫、各種解藥。
2.凡事都要有針對性
儘量多瞭解相關公司所屬行業地位和實際情況。根據成熟型公司或者創業型公司,進行適當調配重點。
第二步:準備你的亮點
崗位能匹配了,至少證明你能幹活了,關鍵的來了。
你需要準備你的成功案例
不管你是做技術的、產品、運營,你有一件是你自己特別自豪,特別牛的案例?拿出來,給我們分享下。關於亮點,很多人不以為然,講故事是一種很強的本事。如果你能很有邏輯的把一件事在10分鐘內說得很清楚,這難道不是一種很強的溝通能力?
反覆講述你的案例
關於亮點的講述,方法很簡答,反覆覆盤。最好的方法就是不斷練習,練習從頭到尾的邏輯性,以及記錄下你講述的案例重點。再次練習。
第三步:展示你強大的自信
很多我面試過的人,有部分能力差一點的,最後讓他們通過。很重要的一項:你的自信心。
從自我介紹開始,全程保持微笑
微笑的力量非常巨大,誰能拒絕一個愛笑的人呢?微笑,它可以快速縮短你與面試官之間的心理距離,為後續深入溝通,創造了一個和諧的氛圍。
眼神不要飄忽,講述平緩一點
還是聚焦,先聚焦面試官的眼睛珠:),這是一種最基本的尊重,也是展示你自信的一種方式。
最後,記得與面試官互動
如果你到了這裡,請記得為面試官點個贊。如果他認可了你,一定會給你分享他的故事。
總之,想提高面試成功率,需要硬實力和軟實力的同時提高。
如何選擇offer
之前很多應屆生諮詢我如何選擇offer,某某公司的面試我是否應該參加,某某公司的Offer我是否應該拒絕?
大家困惑的地方有幾點:
- 第一是薪資問題。
- 第二如何選擇公司。
薪資問題
剛畢業幾年不要看薪資,除非薪資的差距是在數量級間的差距,如果只是幾千塊的差距這個不算差距,現在的工資並不代表你未來的工資,學會投資自己看未來,成長性好的員工未來的收益差距是在數量級,比如幾年後,同學A的薪水比另外一個同學B的薪水高上百萬都是非常正常的。
其次要學會比較薪水。收到Offer時,首先要知道薪酬福利的組成,比如月薪,年終獎,期權,商業保險,補貼等。不要單純的比較月薪,而是綜合比較年薪和福利。A同學月薪比B低幾千,但是A同學年薪和福利加在一起可能比B同學高好幾倍。除了期權外,福利上主要關注以下幾點:
公積金,等你買房或退休的時候可以取出來,這個我認為可以算在薪水裡。國家規定公司和個人都要繳納12%,但是有些企業繳納的公積金只有8%,因為他們只繳納基本工資的12%,比如我曾就職的一家企業的工資=基本工資+崗位工資+績效工資,基本工資只有65%,然後按照65%的工資繳納%12的公積金,這樣無形中比同樣月薪的人低了4%的收入。
補貼。不同的公司補貼不一樣,大致有住房補貼,異地補貼,汽油補貼,餐補等。如果你從A城市去B城市上班有遷移成本,可以諮詢下公司是否有住房補貼。另外補貼有個期限,是一年還是幾年,這個也要問清楚。
商業保險,過節費等。
如何選擇公司
我自己也經歷過幾個不同型別的公司,小型私企,大型私企,網際網路企業。從我的經歷來看,如果你想學技術可以選擇網際網路公司,外企和創業公司,如果你想做管理,可以選擇創業公司和中大型私企。
怎樣跳槽最有利於自身的發展?
跳槽不只是純粹的“跳”,跳前的思考,跳前的準備,跳前的判斷從何而來
主動求發展
我把這一類放在第一項,主動出擊求發展,這類屬於已經有很明確的職業發展目標。
清楚得失,知道自己應該去哪,可以暫時忍受薪資降低。
補充一個例子,我認識一個朋友在深圳,為了敘事方便,暫時稱為A先生。A先生是一個家創業公司的技術經理月薪在3萬左右,之前做了一個決定,離開技術這個行業,加入一家創業的金融公司做銷售。從技術直接轉崗到另一個行業的銷售,這個跨度很大。據後面A先生描述,前3個月一個單子都沒有出,薪資只有底薪,從每月3萬到每月1000元,甚至這1000元都快沒了。A先生早期面臨了很大的壓力,為了活下來,A先生給自己定了一個小目標,再幹3個月,為自己的最後的自損線,再不行就回去。據A先生描述,剛好他的第4個月出業績了,後來信心來了,不斷改進,越做越好,第5個月做到了他們公司第一。
最近聽他分享了部分心得:很滿意這次轉型,從眼見到成熟度,再到個人性格塑造,再到薪資,都有了很大的進展。
當然,不是每一個人都能有這麼好的結局,但是,如果你能承受這件事壞的方面,這樣的嘗試何樂而不為呢。畢竟,為你人生開啟了一扇窗,一條更精彩的路。
發展遇到瓶頸
技術崗位的發展瓶頸比較多,如果你遇見了瓶頸,請認真思考諸如此類問題,跳槽後能否解決。
- 準備轉管理,思維沒跟上。
之前純做技術崗位,如今準備往管理髮展。從最早做好自己,到現在需要幫助別人成就自己,這是第一次思維方式的大轉變。
- 溝通能力比較差,經常被同事嘲笑情商低。
任何人經常與機器打交道,疏於人打交道,交流溝通肯定會弱化,這個是不爭的事實。接受現狀,偶爾自嘲自己,然後再改進,是最好的辦法。
- 技術在公司沒有得到尊重,毫無話語權。
每週例會,技術部經常被同級部門擠兌,自己毫無辦法,甚至老闆也這樣覺得。其實並不是你不行,而是你讓他們覺得你不行。學會發聲,你真做好了,誰敢擠兌你,很多技術人覺得發聲很難,還是老話,多練習。
- 安於現狀,一件事情能重複做5年
一個業務模組做了5年,你說還有個哪個產品經理比你更懂。稍微有點產品意識的,早轉產品了,那你還抱怨說你沒機會。
遇見不靠譜老闆
- 承若的事情,不兌現
老闆年初的時候,信誓旦旦的說,我們今年完成什麼目標,我給你們獎勵…,當你完成目標後,最後他拒絕履行若言。
- 拒絕承擔責任
按照老闆的思路上線了一款產品,上線後效果達不到預期,把責任推卸到產品、技術部門。
- 過河拆橋
早期與公司一起創業走來,不想,老闆很快請來空降兵。架空你的權利,各種讓你在公司不爽,逼你走。美其名曰:你跟不上公司的發展。
- 吝嗇
職位名稱越來越好,薪資和待遇不見漲,美其名曰:我給了你機會,你就應該這樣回報我。
- 喜歡權術
擅長厚黑學,把員工看成個人資產,毫無尊重而言,每天需要員工揣摩聖意。
- 任人唯親
不以結果為導向,只憑個人喜好用人。只要你聽話,我就用你。不管你做出了多大的成績,如果你想晉級,抱歉,只要我在,你就不可能。
自私
- 從不從員工角度思考問題,只考慮自己。
這些都是不靠譜的老闆,你所要做的就是遠離。
最後
你只有吃透你的跳槽訴求,再排除部分不靠譜的干擾,我想一定會比上次選擇的更好。
學會這五步可輕鬆應對面試
一 :什麼是好的簡歷
簡歷是突出自我亮點的工作或學習經歷和自我介紹。所以寫簡歷要把握兩個重點,工作經歷要突出重點,自我介紹要寫全。
二: 如何寫簡歷
1:簡歷的內容
簡歷至少應該包含以下幾部分:
基本資訊:必填項有姓名,年齡,是否已婚,手機號,常用郵箱,目前所在地,工作經驗。目前所在地關係到是進行電話,視訊面試還是現場面試。選填項有部落格,個人完整,github,英語讀寫聽能力。
應聘資訊:應聘職位,求職地,職位和求職地都可以寫多個。
自我介紹:用事實介紹自己的亮點和擅長技能。
教育背景:畢業院校,畢業時間。
工作經驗(由近至遠):在哪些公司任職過,任職時間。好的公司會讓面試官有好感。大學生的實習經驗也算工作經驗。
專案經驗(由近至遠):寫亮點專案,或最能體現自己技術能力的專案,不要把所有專案經驗都寫上,專案經驗是可以引導面試官問問題的方向。
獲獎資訊和證書:寫最能提現自己能力的獲獎資訊,寫多了也沒用。證書比如CCNA,CCIE等。
2:自我介紹
自我介紹是簡歷中最重要的。自我介紹要用事實描述,不要用觀點描述,比如我有10年Java開發經驗,這個是事實,我崇尚團隊合作,學習能力強,這個是觀點。事實可以證明,而觀點很難,所以事實描述比觀點描述更有說服力。自我介紹主要是對自己經歷的一個亮點總結,比如張三有十年的Java開發經驗,其中有兩年的Linux操作經驗,兩年的專案管理經驗。張三有自己的個人技術部落格http://XXX.com,經常翻譯國內網文章並在XX網站發表,主導或參與XX開源專案。曾經在XX比賽中拿過三等獎。當然類似於學習能力很強的觀點描述也可以寫,但是要舉例子,比如曾經在2周內學習完IOS,並開發了XX應用。
3: 簡歷的大小
簡歷至少要寫兩頁。舉個有趣的事例,我之前公司的同事在面試前篩選簡歷的辦法是,10K以下的簡歷直接不看,10K的簡歷一般是一頁左右,原因是他認為應聘這麼重要的事情,連簡歷都不願意好好寫的人,估計能力也不行。
4:簡歷的格式
簡歷一定要美觀和簡潔,不要讓面試官一眼看過去全是密密麻麻的字。
提供PDF或WORD版本的簡歷,不要提供txt,HTML,ppt格式的簡歷。
簡歷的標題。如果你是社招生,寫姓名簡歷_XX經驗_應聘XX崗位。如果你是應屆生,寫姓名+XX大學+應聘XX崗位。
我曾經見過最讓我震撼的簡歷是用PPT寫的,然後匯出成PDF,看得出這個應聘者很用心在寫簡歷。
三:建議
期望薪水不要寫。因為薪水的計算很複雜,期望薪水是稅前還是稅後呢,是否包含年終獎呢,是否包含其他個人所得獎金呢。我的建議是根據面試狀況最後再談期望薪水。寫上期望薪水萬一薪水比面試官還高,面試官可能拿自己的能力來要求你。
不要頻繁跳槽。每年換一次工作的求職者簡歷會不好看,面試官會認為他的職業規劃想不清楚,招進來後可能很快又會跳槽。
四:如何選擇求職渠道?
進入BAT有兩種途徑,校招和社招。下面我會分別介紹下校招和社招的流程和基本要求,最後分享幾個面試小竅門。
校招的流程:一般提前一年就開始了,需要應屆生留意下BAT的招聘官網和官方微博。校招是由集團統一管理的,所以各個事業部不能隨時招聘應屆生和實習生。選擇內推。最好找靠譜的師兄和內部同事進行內部推薦,內推的好處是可以選擇應聘部門,面試節奏也快點。
校招的要求:BAT傾向於招聘TOP院校的TOP學生,並且專業對口,當然如果能力非常優秀也肯定能進來的。能力上的要求有三點,優秀的基礎,很好的學習能力和有自己的作品。一般情況下,這三點滿足兩點就能通過面試。面試流程是簡歷篩選+電話初面+電話終面。
社招的流程:你幾乎每時每刻都可以參加BAT的社招,只是有些部門可能有head count的限制,在那個時間點可能不能應聘該部門。一般P6的社招面試流程是電話面試(異地兩次)+現場初面+現場復面+HR面試,如果級別越高面試流程會越多,基本規律是每高一級多兩個人面試。
社招的要求也比較高,傾向於招年輕的最優秀的人才。最基本的要求是能夠獨擋一面,來了就幹活,不需要太多培訓成本。為什麼要年輕?年輕意味著有激情,不安於現狀,會嘗試影響周圍的人。為什麼招聘最優秀的人?喬布斯說在軟體行業優秀的人和普通的人能力上差距可能是兩百倍,傳統企業沒有那麼大差距。所以BAT的招聘原則是越優秀越好,可要可不要的不要。有激情的優秀人才會創造無限大的價值。
社招選擇年底應聘。年底跳槽的人少,各部門的head count必須用完,所以要求可能會相對低些。所以年底相對於年初和年中比較容易進入BAT。
做好面試準備。面試前準備一個自己做的最能體現技術能力的事或專案。瞭解BAT價值觀和應聘部門的業務。
利用初面官通過復面。在初面快結束時,面試官出於禮貌會問你有什麼想問我的嗎?這個時候很多人都不問或者問不關鍵的問題。我建議詢問面試官自己的不足,針對這些不足如何提高,以及自己最得意的專案有哪些不足,如何改進,拿著這些建議和準備去參加復面會更容易通過。
準備好了再投簡歷。不要亂投簡歷,我看有的人都有30次投遞。因為面試不過你的面試記錄會記錄下來。如果有很差的評價,以後簡歷很容易評估不過,都不能進入電話面試。
選擇內部推薦。自己投簡歷可能進入公海,可能不會被人發現。
五:如何準備面試
如果你收到某公司的面試邀請,那就應該開始準備面試,打一場有把握的仗。
需要準備幾件事,自我介紹,亮點技術或產品,職業規劃,這幾件事情並不是臨時抱佛腳就能完成的,而是要靠平時在工作中的積累,面試進更好的公司只是一個水到渠成的過程,能力到了自然就能進。
準備多久?當時帶著強烈想進入BAT的動力,電面準備了幾周,復面準備了一個多月。
第一關,自我介紹
大部分面試官一般都會讓應聘者首先做個自我介紹,自我介紹回合是應聘者最主動的一個回合,因為在這個回合主要是應聘者說,面試官聽,所以我認為這個回合非常重要,如果介紹的非常好,不僅可以為後面面試官提問做伏筆,還可以讓面試官對你有好感。所以建議準備一個十分鐘時長的介紹,我聽過很多應聘者的自我介紹一分鐘都不到。
自我介紹首先描述自己的基本情況,其次是描述自己的技術亮點,做過的亮點專案或產品。如果沒有做過有技術亮點的事,每天都在做增刪改查功能或重複性的工作,需要好好反思下,這樣下去技術上沒有多少增長。如果工作中就是做這個怎麼辦?可以考慮利用業餘時間參與開源專案或自己做一些工具或框架。
第二關,介紹做過的產品
介紹產品時面試官會考察應聘者的溝通能力和思考能力,我們大部分情況都是做產品的一個功能或一個模組,但是即使是這樣,自己有沒有把整個系統架構或產品搞清楚,並能介紹清楚,為什麼做這個系統?這個系統的價值是什麼?這個系統有哪些功能?優缺點有哪些?如果讓你重新設計這個系統你會如何設計?
第三關,技術面試
技術面試主要考察一個人的技術能力,溝通能力和學習能力。不同的面試官的問題不一樣,沒有規律可循,所以首先在網上搜下該公司主要的面試題,必考的肯定是基礎,好的面試官會考察你擅長的技術,看看你是否有很強的學習能力和技術能力。有的面試官會問自己擅長的技術,這樣對面試者的要求就更高,所以你要準備的更加充分,在技術的寬度上學習下。深度優先,廣度次之。
最後一關,HR面試
HR面試主要考察一個人的價值觀,潛力和職業規劃。所以進入這一關之前請想清楚幾個問題。
為什麼想加入這家公司?你需要了解下這家公司的文化和氛圍。
為什麼離開上一家公司?錢少,不能實現夢想,還是有哪些不爽的地方。如果是換工作為了實現夢想,那麼你的夢想是什麼。不爽的地方如果在新公司再遇到怎麼處理。
你的職業規劃是什麼?
當你遇到瓶頸的時候你怎麼辦?
這些年你每年的成長是什麼?怎麼能體現你的進步?
總結
以上內容大部分都是幫助進入BAT等一線網際網路公司的方法。成長還有很多別的方法和渠道。在創業公司你一樣可以鍛鍊的很出色。但是按照機率來講,早期進入一線網際網路企業,更有利於未來的發展,特別是做技術開始的。
最後,除了以上部分,談談我個人的建議
任何是事情要學會先思而行,不僅僅適用於工作選擇,更適用於發展。沒想好,沒想透不要緊,但一定要有這