日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android秋招秘籍,看我如何搞定BAT,Vivo,爱奇艺

發布時間:2024/1/8 Android 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android秋招秘籍,看我如何搞定BAT,Vivo,爱奇艺 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

碼個蛋(codeegg)第 697?次推文

作者: 厘米姑娘

原文:?https://www.jianshu.com/p/0f72ac621f82

前言


本篇先以日歷形式回顧秋招之路,方便各位參考某廠的處理進度;之后會簡單進行美團實習總結,也算給“美團實習”板塊文章畫上句號;然后是總結歸納春秋招Android面試題庫,時間原因后續再出個“有問有答”的系列;最后做個總結還有展望,開始新的征程~
  • 秋招日歷

  • 實習總結

  • 題庫大全

  • 一點感悟

1.?校招日歷

在美團實習的最后一周項目在提測,相比開發階段著實輕松了不少,所以開始改簡歷、投簡歷和復習,復習內容主要是個人博客和春招總結的筆記。

不過各廠子簡歷處理速度令我始料不及,在緊接的下一周就被各種面試狂轟濫炸,這波操作來得快去的也快,最終通過BAT、vivo、愛奇藝和一點資訊的全部面試流程,自此整個秋招以面試0error完美收官。

中途發生個烏龍,在牛客給頭條hr發過簡歷,結果竟然誤進了社招池,還發來了面試邀約......差點就去應聘Android高級工程師了emmm

以下就是從開始準備到等到offer整個秋招日歷表:

日期具體事宜
8.6(周一)修改簡歷、實習轉正口頭offer
8.7~8.9完成簡歷投遞、復習
8.10(周五)離職辦理

收到vivo的面試通知
8.11(周六)網易筆試
8.13(周一)阿里一面:電話40min
8.14(周二)收到百度、愛奇藝、頭條的面試通知
8.15(周三)百度一面:視頻35min

阿里二面:電話20min

收到一點資訊的面試通知

vivo一面:視頻25min
8.16(周四)百度現場面:二面60min、三面30min

收到網易的面試通知(放棄)

vivo hr面:視頻20min
8.17(周五)阿里三面:電話30min

收到騰訊的面試通知
8.18(周六)一點資訊現場面:一面40min、二面50min、三面20min

騰訊一面:電話35min
8.19(周日)vivo線下交流會
8.20(周一)愛奇藝一面:現場70min

一點資訊hr面:電話15min
8.21(周二)收到百度面試通過郵件+文化測評
8.22(周三)愛奇藝二面:視頻30min

收到vivo錄用意向書
8.23(周四)阿里hr面:視頻40min
8.28(周二)騰訊二面:電話20min
8.29(周三)愛奇藝三面:視頻30min

收到快手的面試通知(放棄)
8.30(周四)騰訊hr面:視頻15min
8.31(周五)一點資訊hr溝通意向
9.1(周六)收到阿里錄用意向書
9.7(周五)愛奇藝hr溝通意向
9.12(周三)百度hr溝通意向

收到騰訊錄用意向書

匯總:面試部門及全部流程

  • 杭州/阿里/數據技術及產品部:2輪技術面+交叉面+hr面

  • 深圳/騰訊/OMG/騰訊視頻:2輪技術面+hr面

  • 北京/百度/百度APP研發部:3輪技術面+文化測評

  • 北京/愛奇藝:3輪技術面

  • 深圳/vivo:1輪技術面+hr面+線下交流會

  • 北京/一點資訊:3輪技術面+hr面

2. 實習總結

兩個月的實習生活轉瞬即逝,也有幸得到部門老大的肯定和對留用的認可。本節對這段短暫但充實的實習生活做個簡短的總結,算是給“實習隨筆”系列文章做個收尾(想看面經的可跳過此節)。

實習單位:北京/美團/新零售事業群/ 閃購事業部/賦能業務組

a.工作總結

  • 參與完整的開發流程,從v1.0需求評審到上線v1.1,掌握多人協作必需的Git使用

  • 通過Code ?Review熟悉業務代碼,并刻畫頁面的類圖和活動圖,強化對MVP模式的理解

  • 協助推進項目的進展,如v1.0后期埋點、修改bug、APP打包和性能優化,使用Lint工具優化代碼質量、美團Metrics工具監測Crash情況等,并產出相應分析和優化建議文檔

  • 開發和維護v1.1新增的接入商家會員模塊功能,包括會員識別、用戶授權和短信驗證

  • 熟悉美團各種基礎框架庫并應用到項目中,如網絡Retrofit-mt、定位Locate、驗證服務Yoda

b.學習總結

  • 堅持寫周記的習慣,總結每周學到的新知識,以及記錄所見所聞所想

  • 讀完《深入理解Java虛擬機》重要章節,并做相應的讀書筆記

  • 學習主流的網絡框架Retrofit,并深入源碼

  • 鞏固基礎:Java、Android、JVM、操作系統、計算機網絡、數據結構等

c.收獲和成長

這是我第一次走出校園踏入社會,于我而言意義非凡,所以非常珍惜每個在美團的日子。

  • 從絲毫不了解新零售的井底之蛙到意識到這是新發展、大趨勢、刻不容緩,每個業務溝通會都給我格局放大、眼界放寬的成長;

  • 通過實際參與一個大的完整的項目,感受到不同于學校那些小項目的流程更規范、技術更強大;

  • 在美團,培訓制度完善、wiki知識庫無所不有、學習氣氛濃厚、分享會比比皆是,這些都讓我大飽眼福,技術也不斷在進步;

  • 當然也少不了各種生活福利,時不時就搞個小活動,樓下樓上好不熱鬧,吃喝玩樂,正應了美團的發展目標--"幫大家吃得更好,活得更好"。

總之在這里收獲的不僅有知識和技術,還有見識和人情味,我超喜歡這里的~


d.不足和反思

和實習前對自己的期望相比,現已完成大部分的計劃,也有部分未達到預期:

  • 原來一直想看外賣里一些基礎組件的源碼,最后也只是泛泛深入Retrofit-mt,還有很多自己感興趣的框架沒看,看源碼確實不容易但這是一位工程師的必會技能,優秀框架必然有其精彩絕倫之處,從"可以寫"到"寫得好"自己還需要走很長的路;

  • 實際寫項目也發現自己會有考慮不全的問題,性能優化的意識也不高,雖然理論知識足夠,但畢竟是紙上談兵,還需多實踐形成良好的編程習慣;

  • 之前給自己制定的寫文計劃基本落實,起碼沒有棄坑,不過仍有一些未總結,后續時間充裕定會補上。

3.題庫大全

  • 之前說過我的復習范圍無非是個人技術博客還有整理的筆記,考慮到筆記是手寫版不利于保存,所以打算重新整理并放到網上,時間原因這里先列出面試問題,題解詳見:

    • 2019校招Android面試題解1.0(上篇)(https://www.jianshu.com/p/718aa3c1a70b)

    • 2019校招Android面試題解1.0(中篇)(https://www.jianshu.com/p/2dd855aa1938)

    • 2019校招Android面試題解1.0(下篇)(https://www.jianshu.com/p/168e52336b53)

    • 2019校招Android面試題解1.0(算法篇)(https://www.jianshu.com/p/9648e8dd5bdb)

  • 當然,我認為看面經主要是為了查缺補漏,自己也要有一定的知識儲備和學習體系,而不是臨時抱佛腳、試圖通過背題背答案方式應付面試,只有自己真學會的東西才能侃侃而談,更有自信。
    (注:部分重點有文字鏈接,表示有具體的文章講解)

a.Android

  • Activity

Q:說下Activity的生命周期?
Q:onStart()和onResume()/onPause()和onStop()的區別?
Q:Activity A啟動另一個Activity B會回調哪些方法?如果Activity B是完全透明呢?如果啟動的是一個Dialog呢?
Q:談談onSaveInstanceState()方法?何時會調用?
Q:onSaveInstanceState()與onPause()的區別?
Q:如何避免配置改變時Activity重建?
Q:優先級低的Activity在內存不足被回收后怎樣做可以恢復到銷毀前狀態?
Q:說下Activity的四種啟動模式?(有時會出個實際問題來分析返回棧中Activity的情況)
Q:談談singleTop和singleTask的區別以及應用場景
Q:onNewIntent()調用時機?
Q:了解哪些Activity啟動模式的標記位?
Q:如何啟動其他應用的Activity?
Q:Activity的啟動過程?

  • Fragment

Q:談一談Fragment的生命周期?
Q:Activity和Fragment的異同?
Q:Activity和Fragment的關系?
Q:何時會考慮使用Fragment?

  • Service

Q:談一談Service的生命周期?
Q:Service的兩種啟動方式?區別在哪?
Q:一個Activty先start一個Service后,再bind時會回調什么方法?此時如何做才能回調Service的destory()方法?
Q:Service如何和Activity進行通信?
Q:用過哪些系統Service?
Q:是否能在Service進行耗時操作?如果非要可以怎么做?
Q:AlarmManager能實現定時的原理?
Q:前臺服務是什么?和普通服務的不同?如何去開啟一個前臺服務?
Q:是否了解ActivityManagerService,談談它發揮什么作用?
Q:如何保證Service不被殺死?

  • Broadcast Receiver

Q:廣播有幾種形式?什么特點?
Q:廣播的兩種注冊形式?區別在哪?

  • ContentProvider

Q:ContentProvider了解多少?

  • 數據存儲

Q:Android中提供哪些數據持久存儲的方法?
Q:Java中的I/O流讀寫怎么做?
Q:SharePreferences適用情形?使用中需要注意什么?
Q:了解SQLite中的事務處理嗎?是如何做的?
Q:使用SQLite做批量操作有什么好的方法嗎?
Q:如果現在要刪除SQLite中表的一個字段如何做?
Q:使用SQLite時會有哪些優化操作?

  • IPC

Q:Android中進程和線程的關系?區別?
Q:為何需要進行IPC?多進程通信可能會出現什么問題?
Q:什么是序列化?Serializable接口和Parcelable接口的區別?為何推薦使用后者?
Q:Android中為何新增Binder來作為主要的IPC方式?
Q:使用Binder進行數據傳輸的具體過程?
Q:Binder框架中ServiceManager的作用?
Q:Android中有哪些基于Binder的IPC方式?簡單對比下?
Q:是否了解AIDL?原理是什么?如何優化多模塊都使用AIDL的情況?

  • View

Q:MotionEvent是什么?包含幾種事件?什么條件下會產生?
Q:scrollTo()和scrollBy()的區別?
Q:Scroller中最重要的兩個方法是什么?主要目的是?
Q:談一談View的事件分發機制?
Q:如何解決View的滑動沖突?
Q:談一談View的工作原理?
Q:MeasureSpec是什么?有什么作用?
Q:自定義View/ViewGroup需要注意什么?
Q:onTouch()、onTouchEvent()和onClick()關系?
Q:SurfaceView和View的區別?
Q:invalidate()和postInvalidate()的區別?

  • Drawable等資源

Q:了解哪些Drawable?適用場景?
Q:mipmap系列中xxxhdpi、xxhdpi、xhdpi、hdpi、mdpi和ldpi存在怎樣的關系?
Q:dp、dpi、px的區別?
Q:res目錄和assets目錄的區別?

  • Animation

Q:Android中有哪幾種類型的動畫?
Q:幀動畫在使用時需要注意什么?
Q:View動畫和屬性動畫的區別?
Q:View動畫為何不能真正改變View的位置?而屬性動畫為何可以?
Q:屬性動畫插值器和估值器的作用?

  • Window

Q:Activity、View、Window三者之間的關系?
Q:Window有哪幾種類型?
Q:Activity創建和Dialog創建過程的異同?

  • Handler

Q:談談消息機制Hander?作用?有哪些要素?流程是怎樣的?
Q:為什么系統不建議在子線程訪問UI?
Q:一個Thread可以有幾個Looper?幾個Handler?
Q:如何將一個Thread線程變成Looper線程?Looper線程有哪些特點?
Q:可以在子線程直接new一個Handler嗎?那該怎么做?
Q:Message可以如何創建?哪種效果更好,為什么?
Q:這里的ThreadLocal有什么作用?
Q:主線程中Looper的輪詢死循環為何沒有阻塞主線程?
Q:使用Hanlder的postDealy()后消息隊列會發生什么變化?

  • 線程

Q:Android中還了解哪些方便線程切換的類?
Q:AsyncTask相比Handler有什么優點?不足呢?
Q:使用AsyncTask需要注意什么?
Q:AsyncTask中使用的線程池大小?
Q:HandlerThread有什么特點?
Q:快速實現子線程使用Handler
Q:IntentService的特點?
Q:為何不用bindService方式創建IntentService?
Q:線程池的好處、原理、類型?
Q:ThreadPoolExecutor的工作策略?
Q:什么是ANR?什么情況會出現ANR?如何避免?在不看代碼的情況下如何快速定位出現ANR問題所在?

  • Bitmap

Q:加載圖片的時候需要注意什么?
Q:LRU算法的原理?
Q:Android中緩存更新策略?

  • 性能優化

Q:項目中如何做性能優化的?
Q:了解哪些性能優化的工具?
Q:布局上如何優化?列表呢?
Q:內存泄漏是什么?為什么會發生?常見哪些內存泄漏的例子?都是怎么解決的?
Q:內存泄漏和內存溢出的區別?
Q:什么情況會導致內存溢出?

  • 開源框架(略)

  • 谷歌新動態

Q:是否了解和使用過谷歌推出的新技術?
Q:有了解剛發布的Androidx.0的特性嗎?
Q:Kotlin對Java做了哪些優化?

b.Java

  • 基礎

Q:面向對象編程的四大特性及其含義?
Q:String、StringBuffer和StringBuilder的區別?
Q:String a=""和String a=new String("")的的關系和異同?
Q:Object的equal()和==的區別?
Q:裝箱、拆箱什么含義?
Q:int和Integer的區別?
Q:遇見過哪些運行時異常?異常處理機制知道哪些?
Q:什么是反射,有什么作用和應用?
Q:什么是內部類?有什么作用?靜態內部類和非靜態內部類的區別?
Q:final、finally、finalize()分別表示什么含義?
Q:重寫和重載的區別?
Q:抽象類和接口的異同?
Q:為什么匿名內部類中使用局部變量要用final修飾?
Q:Object有哪些公用方法?

  • 集合

Q:Java集合框架中有哪些類?都有什么特點
Q:集合、數組、泛型的關系,并比較
Q:ArrayList和LinkList的區別?
Q:ArrayList和Vector的區別?
Q:HashSet和TreeSet的區別?
Q:HashMap和Hashtable的區別?
Q:HashMap在put、get元素的過程?體現了什么數據結構?
Q:如何解決Hash沖突?
Q:如何保證HashMap線程安全?什么原理?
Q:HashMap是有序的嗎?如何實現有序?
Q:HashMap是如何擴容的?如何避免擴容?
Q:hashcode()的作用,與equal()有什么區別?

  • 并發

Q:開啟一個線程的方法有哪些?銷毀一個線程的方法呢?
Q:同步和非同步、阻塞和非阻塞的概念
Q:Thread的join()有什么作用?
Q:線程的有哪些狀態?
Q:什么是線程安全?保障線程安全有哪些手段?
Q:ReentrantLock和synchronized的區別?
Q:synchronized和volatile的區別?
Q:synchronized同步代碼塊還有同步方法本質上鎖住的是誰?為什么?
Q:sleep()和wait()的區別?

  • Java新動態

Q:是否了解Java1.x的特性嗎?
Q:談談對面向過程編程、面向對象編程還有面向切面編程的理解

c.計算機網絡

  • 基礎

Q:五層協議的體系結構分別是什么?每一層都有哪些協議?
Q:為何有MAC地址還要IP地址?

  • TCP

Q:TCP和UDP的區別?
Q:擁塞控制和流量控制都是什么,兩者的區別?
Q:談談TCP為什么要三次握手?為什么要四次揮手?
Q:播放視頻用TCP還是UDP?為什么?

  • HTTP

Q:了解哪些響應狀態碼?
Q:get和post的區別?
Q:Http1.0、Http1.1、Http2.0的區別?
Q:HTTP和TCP的區別?
Q:HTTP和HTTPS的區別?
Q:HTTP和Socket的區別?
Q:在地址欄打入http://www.baidu.com會發生什么?

d.JVM

Q:JVM內存是如何劃分的?
Q:談談垃圾回收機制?為什么引用計數器判定對象是否回收不可行?知道哪些垃圾回收算法?
Q:Java中引用有幾種類型?在Android中常用于什么情景?
Q:類加載的全過程是怎樣的?什么是雙親委派模型?
Q:工作內存和主內存的關系?在Java內存模型有哪些可以保證并發過程的原子性、可見性和有序性的措施?
Q:JVM、Dalvik、ART的區別?
Q:Java中堆和棧的區別?

e.操作系統

Q:操作系統中進程和線程的區別?
Q:死鎖的產生和避免?

f.數據結構&算法

Q:怎么理解數據結構?
Q:什么是斐波那契數列?
Q:迭代和遞歸的特點,并比較優缺點
Q:了解哪些查找算法,時間復雜度都是多少?
Q:了解哪些排序算法,并比較一下,以及適用場景
Q:快排的基本思路是什么?最差的時間復雜度是多少?如何優化?
Q:AVL樹插入或刪除一個節點的過程是怎樣的?
Q:什么是紅黑樹?
Q:100盞燈問題
Q:老鼠和Du藥問題,加個條件,必須要求第二天出結果
Q:海量數據問題
Q:(手寫算法)二分查找
Q:(手寫算法)反轉鏈表
Q:(手寫算法)用兩個棧實現隊列
Q:(手寫算法)多線程輪流打印問題
Q:(手寫算法)如何判斷一個鏈有環/兩條鏈交叉
Q:(手寫算法)快速從一組無序數中找到第k大的數/前k個大的數
Q:(手寫算法)最長(不)重復子串

g.設計模式

Q:談談MVC、MVP和MVVM,好在哪里,不好在哪里?
Q:如何理解生產者消費者模型?
Q:是否能從Android中舉幾個例子說說用到了什么設計模式?
Q:裝飾模式和代理模式有哪些區別?
Q:實現單例模式有幾種方法?懶漢式中雙層鎖的目的是什么?兩次判空的目的又是什么?
Q:談談了解的設計模式原則?

h.數據庫

Q:數據庫中的事務了解嗎?事務的四大特性?
Q:如何理解數據庫的范式?

i.hr問題

Q:請簡單的自我介紹一下
Q:談談項目經歷,為什么會做,怎么做的,遇到的難點?
Q:談談實習經歷,做了什么,收獲有哪些?
Q:談談學習Android的經歷,有哪些學習方法和技巧?
Q:是否會考研?/為何不保研?
Q:成績怎么樣?獎學金情況?
Q:學過哪些課程?那門課印象最深刻/最有意義/學的最好/最不喜歡?為什么?
Q:近x年的職業規劃?
Q:為什么想來我們公司?/為何不轉正留在xx?
Q:對公司/部門是否有了解?
Q:為何會選擇做技術?/對女生做開發的看法?
Q:學習生活中遇到什么挫折,如何解決的?
Q:還投過那些公司,進展如何?如果xx和xx都給你發offer會如何選擇?
Q:家是哪里的?是Du生子女嗎?從小的家庭環境如何?
Q:平常有哪些興趣愛好?大學參加了哪些校園活動?
Q:有男/女朋友嗎?未來有什么規劃?
Q:評價一下自己的優缺點?/用x個詞形容你自己。/別人都是怎樣評價你的?
Q:覺得自己博客寫的最好的文章是什么?為什么?
Q:覺得自己的優勢是什么?
Q:如何看待加班?
Q:意向工作城市是哪?/是否會考慮在xx發展?
Q:對于薪酬有什么想法?
Q:有什么問題想要問我?

j.項目相關、實習相關技術問題(略)

Q:使用那些版本控制工具?Git和SVN的區別?
Q:了解Git工具嗎?用過哪些命令?解決沖突時git merge和git rebase的區別?

(持續更新...)

另:點擊此處見Android學習筆記清單(https://www.jianshu.com/p/c44d7a106302)

4.一點感悟

其實到現在還覺得一切不太真實,沒想到已然結束了令我心驚膽戰許久的秋招,回望過去,不由得感慨,大概真的是越努力越幸運吧。

從最開始我的目標就很明確,而且一路腳踏實地,不曾動搖,用一年多的時間來積累資本豐滿簡歷,學基礎、寫博客、做項目、去實習,也不忽視在校的學業,成績一直很穩定,唯獨沒什么競賽和論文,因為大學前些年一直沉迷于培養興趣愛好,各處舞蹈排練和比賽,也算是大學里最豐富多彩的一段時光吧。

當然我深知現在不過是暫且告一段落,前方依舊任重而道遠,要學的還有很多,努力加油吧丫頭!

碼仔悄悄說

面試題作為進入公司的敲門磚,大家也不能忽視呦。社群里的小伙伴們整理了很多面試題(項目地址:https://github.com/codeegginterviewgroup/CodeEggDailyInterview),周末的時候大家可以多多關注哦。

近期文章:

  • Android常問面試題,趕緊收藏一波

  • Activity、View、Window關系,進程間通信,責任鏈模式,Https,數據存儲

  • 今日份的面試題目:抽象工廠、Android常用布局、Java重入鎖、守護線程、 SharedPreference存儲大小

日問題:

只要基礎好,大廠都能進。你的基礎還好嗎?

專屬升級社區:《這件事情,我終于想明白了》?

總結

以上是生活随笔為你收集整理的Android秋招秘籍,看我如何搞定BAT,Vivo,爱奇艺的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。