網(wǎng)站上的洗衣液瓶子做花瓶怎么材質(zhì)互聯(lián)網(wǎng)廣告代理商
微信Android一面涼經(jīng)(2024)
筆者作為一名雙非二本畢業(yè)7年老Android, 最近面試了不少公司, 目前已告一段落, 整理一下各家的面試問題, 打算陸續(xù)發(fā)布出來, 供有緣人參考。今天給大家?guī)淼氖恰段⑿臕ndroid一面涼經(jīng)(2024)》。
面試職位: 微信-客戶端開發(fā)工程師-基礎(chǔ)功能(廣州)
Android/iOS終端小程序、小游戲以及公眾號、微信搜索、以及其他的創(chuàng)新業(yè)務(wù)的開發(fā)。
技術(shù)一面
- 面試形式:視頻面試
- 面試時長: 110min(提問80min + 代碼15min + 反問15min)
- 代碼考核: 20.有效的括號
- 崗位地點: 廣州
面試問題(80min)
- 自我介紹, 是否在職
- 哪些項目比較有亮點能體現(xiàn)你的個人能力的
- RN頁面打開速度優(yōu)化
- 改成RN的目的?
- 最終能媲美原生?
- 除了預(yù)載還做了什么, 能達到媲美原生?
- 如果不做視圖預(yù)熱, 這個頁面打開過程中, 有哪些路徑、節(jié)點是性能瓶頸?
- xx業(yè)務(wù)的自定義View邏輯比較復(fù)雜是吧?為什么不讓這個View異步地去渲染, 拿到數(shù)據(jù)再加載出來?
- 視圖預(yù)熱包括幾個階段?總共做了幾個事情?
- 視圖預(yù)熱場景深入的技術(shù)研究, 改造相關(guān)的技術(shù)難點?
- 怎么去做?
- 每個業(yè)務(wù)去做預(yù)熱都需要知道你們的這個xx機制。有沒有想過能力下沉, 在框架層做掉?讓業(yè)務(wù)更少程度去感知這個事情
- 這個方案, 多了xx內(nèi)存。第二個業(yè)務(wù)增大也會有xxM嗎?
- 有沒有想過在保持預(yù)熱后快速打開頁面的效果的同時再把內(nèi)存降下來?
- 升級中有沒有遇到什么困難?
- 你上面說的是事實, 針對這些問題, 你們做了什么?
- 頁面內(nèi)優(yōu)化?
- 有沒有不能batch的請求?
- 我這邊體驗下來, 你們app的這個頁面在小米14Ultra上滑動卡頓, 觸頂反彈會卡.這塊有優(yōu)化嗎?
- RN基建有沒有做相關(guān)的監(jiān)控?
- RN沒有首幀渲染的回調(diào)嗎?
- 除了首幀還有其他嗎?
- 內(nèi)存占用怎么做的?什么時機拿內(nèi)存數(shù)據(jù)?通過什么上報?
- 播放優(yōu)化
- 做策略的依據(jù)?
- 經(jīng)驗值or有依據(jù)?
- 策略動態(tài)下發(fā)?
- 拉線上數(shù)據(jù), 根據(jù)數(shù)據(jù)支持做方案?
- 音質(zhì)提升方案從遠(yuǎn)端遷移到本地會不會導(dǎo)致音質(zhì)降低?
- 遷移過程中涉及什么難的、深的技術(shù)?
代碼考核(15min)
20.有效的括號
進階: 以代碼上線的標(biāo)準(zhǔn)要求自己, 將代碼寫好。包括但不限于: 命名規(guī)范、合理的約束、代碼可讀性、可維護性、拓展性等。
public class Main {private static final List<Character> LEFT = List.of('(', '[', '{');private static final List<Character> RIGHT = List.of(')', ']', '}');public static boolean isValid(String str) {final Stack<Character> stack = new Stack<>();for (int i = 0; i < str.length(); i++) {final char ch = str.charAt(i);if (LEFT.indexOf(ch) != -1) {stack.push(ch);} else {if (stack.isEmpty() || ch != RIGHT.get(LEFT.indexOf(stack.pop()))) {return false;}}}return stack.isEmpty();}public static void main(String[] args) {System.out.println(isValid("()")); // trueSystem.out.println(isValid("{[()]}")); // trueSystem.out.println(isValid("(")); // falseSystem.out.println(isValid("{(]}")); // false}
}
反問問題(15min)
崗位負(fù)責(zé)內(nèi)容
業(yè)務(wù): 小程序、小游戲、公眾號、搜索。
技術(shù):
- WebView(渲染小程序前端視圖)、
- 小游戲(游戲引擎(unity、自研引擎)、移植游戲(比如: 仙劍)引擎性能調(diào)優(yōu))、廣告(朋友圈、訂閱號/服務(wù)號/公眾號)。
- matchbrush渲染框架(廣告動態(tài)化))
- 公眾號(timeline、flutter、c++邏輯和UI跨平臺)
不確定具體做哪一塊, 根據(jù)招人情況和候選人意愿。
跨平臺是這幾年在主推的一些方案: - H5
- flutter
- 游戲引擎
- c/c++
- 小程序
招聘崗位候選人的要求, 技能專精或其他方面的考量?
對項目的技術(shù)要點是否有深刻的理解。除了做了,是不是會理解里面的邏輯。比如播放器可以理解得更加深入。
不局限自己做的事情, 需要了解產(chǎn)品層面, 或者技術(shù)更底層的, 或者合作方的東西。
這樣可以更好cover整個項目, 可以考慮得更加周到。
對不同工齡的同學(xué)的要求不同。剛畢業(yè)、畢業(yè)1-2年、畢業(yè)3、4、5、6年。
技術(shù)深度+技術(shù)廣度+工程能力
工程能力:
- 性能,
- 全程cover思考
- 做方案前周全考慮
- 落地怎么把代碼寫好
- 發(fā)布后怎么追蹤數(shù)據(jù)
- 業(yè)務(wù)優(yōu)化閉環(huán)
面試順利的話, 多久會通知下一輪?
2-4天。
面試量比較大。很多簡歷, 面試壓力也很大。偶爾可能會稍晚一點, 看下一位面試官安排。
是不是HC比較充足?
充足不代表會降低標(biāo)準(zhǔn)。整個團隊都比較充足。
微信本來就是一個精兵模式, 不會招很多人。
目前微信只有5、6千人, 但是CDG(企業(yè)發(fā)展事業(yè)群)、其他事業(yè)群可能會有2-3w人
我們現(xiàn)在有需求, 所以會招多一點人。
能過我們這邊OK, 不能過也可以更好地準(zhǔn)備其他部門的面試。機會都很多。
今天表現(xiàn)還不錯, 要有信心。
總結(jié)
- 據(jù)說WXG是騰訊所有BG里最難進的, 也可以考慮先進騰訊其他部門, 再內(nèi)部轉(zhuǎn)崗到WXG。據(jù)說這樣會比直接社招輕松些 -> 《我是如何拿到微信 offer 的?》
- 面試問得非常細(xì)節(jié), 面試官真的有在好好聽你描述項目, 細(xì)致地詢問你在項目每個階段的思考和行動。
- 可以看到全程都在問項目經(jīng)歷, 但整體面試下來, 面試官并不是在考察你做的過往工作是否有價值, 還是在考察你的做事風(fēng)格, 行為規(guī)范, 是否符合邏輯。
- 直接把面試官說的要求貼這里吧, 希望對想要加入微信的朋友們有所幫助:
- 技術(shù)深度+技術(shù)廣度+工程能力
- 性能
- 全程cover思考
- 做方案前周全考慮
- 落地怎么把代碼寫好
- 發(fā)布后怎么追蹤數(shù)據(jù)
- 業(yè)務(wù)優(yōu)化閉環(huán)