2020 Android 暑期實習面試總結(已拿4個offer)

暑期實習戰績

首先介紹個人基本信息

學歷信息:211本碩, 東農本科,成績排名:3.6%;北郵碩士,成績排名:18.5%
項目信息:天氣項目
實習信息:一段小公司的實習。

接下來介紹暑期實習的戰績

收到筆試的公司包括:完美世界、百度、快手、美團。

收到面試的公司包括:小米、蘑菇街、百度、快手、美團、阿里。

拿到offer的公司包括:小米、美團、快手、百度。

其中阿里是面試掛掉,蘑菇街是拒絕了二面,完美世界是沒有發起面試。

整體下來非常滿意,美團是很心儀的大廠,同時還是比較核心的部門。

面試官和mentor都很友善,可以說是非常期待接下來的實習了,希望能飛速成長!
在這裏插入圖片描述

如何準備

在說如何準備之前想給大家舉個小例子告訴大家不要盲目準備,要根據自身狀況來準備。

以DNF爲例,我們是冒險家,最終目標是想要通關團隊副本(公司),爆出想要的裝備(offer)。

  1. 基礎比面經更重要,面經是用來查缺補漏。

既然想要通關副本,自身屬性和刷圖技巧二者必不可少。毫無疑問自身屬性更重要(基礎),自身屬性(基礎)好的情況下,也需要了解每個副本的不同技巧(去牛客刷對應公司的面經)。

  1. 非科班或讀研期間所做的項目非找工作方向的同學(我就是)要找到自身亮點。

團隊副本固定都是要c和奶,那麼非C職業(跨專業)肯定會較難打一些。而非C職業(跨專業)也可以通過一些好的裝備(項目或實習經歷)來增強自身的競爭力。

  1. 刷題要日積月累,100-200 道最佳,刷題雖好,不要貪刷哦。

爲了刷100級史詩裝備,我們肯定要先做一套100級的傳說裝備去刷副本。LeetCode就是我們做100級傳說裝備的地方,但只要裝備齊了就不要再去刷這個副本了。

  1. java 基礎很重要,雖然是 Android 開發但 java 基礎問的真的很多,不侷限於 java 基礎還包括多線程和虛擬機。

武器(Android)肯定是對自身最重要的,但首飾(java)對自身屬性也有很大的提升。不能忽略首飾對自身的提升。而算法題則更像防具,爲我們提供防禦力,但卻不像首飾(java)和武器(Android)直接增加力量屬性。

  1. 一定要有一個項目,即使是個比較差的項目也比沒有好。但有了項目之後一定要擴展新的功能,同類項目面試官可能看了很多,一定要擴展功能來豐富自己的項目,並學習新的技術棧。

這個就更好理解了,我們有了裝備(項目)一定要強化和增幅,爲什麼旭旭寶寶比別人猛,因爲他增幅高呀。但你只要有神話裝備,肯定就比沒有神話的強。

在這裏插入圖片描述
6. 無論是做項目還是看書,建議記錄成博客,方便梳理思路和複習。最重要的是,當自己做的項目的確有人在看也做成畢設的話,真的是很有成就感的事情。

我做了什麼準備

  1. 從研一開始堅持刷題,博主刷了 467道 LeetCode 題,並寫了一個專題《一起攻克LeetCode》。
    在這裏插入圖片描述

  2. 跟着《第一行代碼》做了天氣項目,並將該項目進行擴展,擴展新功能以學習想掌握的技術棧。
    在這裏插入圖片描述

  3. 閱讀《Android 開發藝術探索》,《Java 虛擬機》,《Java 併發編程的藝術》,《圖解 HTTP》,
    《圖解 TCP_IP》,《java 核心卷》並撰寫博客記錄總結。

  4. 去牛客網刷面經查缺補漏。

  5. 不斷的改簡歷,主要是改項目描述和個人技能。項目描述一定要展示出技術棧或者成長,這是我的項目描述,僅供參考。

通過和風天氣提供的數據接口,編寫了一個天氣APP。首先根據定位找到當前所在城市,通過OkHttp+Gson庫實現對接口數據的獲取。之後展示當前城市的天氣信息,包括隔小時天氣、天氣預報、生活建議等。最後,通過自定義View+動畫的方式動態的展示當前城市的日出日落時間與空氣質量。

複習指南

Java 基礎

書籍推薦

  1. 《Java 核心技術》:這是一本工具書,只看第一本即可。使用方法是:根據面經考察的知識點再去翻這本書找到答案。

  2. 《Java語言程序設計-基礎篇(第10版)》:這是博主研究生上 Java 課的教材,講的也很好。

重點題目

  1. Java 面向對象編程的四大特性與含義

  2. String a="" 和 String a=new String("") 的的關係和異同?(要詳細到哪些存在棧中,哪些存在堆中)

  3. Object的equal()和==的區別

  4. 異常

  5. 反射

  6. Java 基本類型

  7. Java IO

  8. 抽象類與接口

  9. 四種引用類型

  10. 淺拷貝與深拷貝

虛擬機

書籍推薦

《Java 虛擬機 第二版》:面試必看,如果時間緊張的話只需要看2、3、7、12、13章即可。

重點題目

  1. 虛擬機內存分佈
  2. 各種 GC 算法
  3. 類加載過程與雙親委派機制
  4. 內存模型

多線程

書籍推薦

  1. 《Java 多線程編程核心藝術》
  2. 《Java 併發編程的藝術》

重點題目

  1. sleep 與 wait 區別
  2. 線程安全(涉及的較多包括:關鍵字、數據結構、多種鎖)
  3. 線程的狀態
  4. java開啓線程的方式
  5. 線程池
  6. 線程間協作的一些方法
  7. 死鎖

源碼

  1. HashMap 源碼
  2. ArrayList 源碼
  3. LinkedList 源碼
  4. concurrentHashMap 源碼

Android

書籍推薦

  1. 《第一行代碼》:這是我入門的一本書,包括一個天氣項目。

  2. 《android 開發藝術探索》:面試必備面試必備面試必備。如果不知道學哪幾章,去看我的博客,我博客總結了那幾章你就看哪幾章。

注意

  1. 開發藝術沒有涉及 Fragment、BroadcastReceiver、Service 的基礎,這些可以看《第一行代碼》。
  2. 最好短期內擼一個項目出來。至少是有開發經驗,同時可以引導面試官問一些項目相關的技術點。

設計模式

書籍推薦

《Android 源碼設計模式解析與實戰》:主要在於理解和與所學習過的源碼相結合。舉個例子,比如說你讀過OkHttp 或 View 事件分發的源碼,那麼就可以理解責任鏈模式。

重點題目

  1. 單例模式(DCL、靜態內部類)

  2. 觀察者模式

  3. 工廠模式

  4. 生產者消費者模式

  5. MVP、MVC 框架

算法

  1. 劍指 offer
  2. LeetCode Hot 100
  3. 二分查找
  4. 快排、歸併、堆排、選擇排序
  5. 二叉樹的前序後序中序層序旋轉
  6. 筆試 dfs 和 dp 較多,而面試較少,面試考察基礎算法

面試手撕代碼一般較爲簡單,LC medium 及其以下,因此刷題切忌刷太多,100-200 道是最佳面試題量,在於精而不在於多。

計算機網絡

書籍推薦

  1. 《圖解 HTTP》

  2. 《圖解 TCP_IP》

重點題目

Http

  1. 狀態碼
  2. HTTPS
  3. HTTP 1.0、1.1、2.0 的區別
  4. GET\POST\PUT 的區別

TCP

  1. TCP 的四層結構

  2. TCP 報文

  3. TCP 的三次握手四次揮手

  4. TCP 的流量控制與擁塞控制

  5. TCP 與 UDP 的區別以及適合於什麼場景

  6. 七層結構

複習鏈接

1.很好的android知識點彙總與學習(Java基礎)

2.2019Android秋招提前批面試總結(已拿BAT等6家offer)(Android面試題)

3.我的個人博客(主要包括我面試準備的一些知識點總結以及源碼分析以及 Leetcode 刷題指南,對於準備android 面試肯定有很大幫助)

展望與總結

  1. 實習開始後,向一直在看的釐米姑娘博主學習,每週都要寫彙總博客來記錄實習工作;
  2. 好好學習 js 和 RN,以及閱讀retrofit源代碼撰寫文章記錄;
  3. LC 每日一題和周賽不要落下;
  4. Java 併發掌握較差,從頭認真學習;
  5. 實踐一般,對於需求要以工程師的角度思考問題;
  6. 參與撰寫一個算法學習的開源項目,歡迎大家 star 項目鏈接

寫在最後

首先我也不是什麼大神,寫這個主要是記錄和分享。希望能對明年找工作或者準備暑期實習的同學們有所幫助。

我知道這個過程真的很艱難,但我相信人類的智慧都彙總成一句話:等待與希望

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章