OPPO 后端开发 一、二、HR 面面经 (已 OC)
文章目錄
- 一、前言
- 二、一面
- 三、小插曲
- 四、二面
- 五、中場休息
- 六、HR 面
- 七、小結(jié)
一、前言
OPPO 我參與的是南京的線下面試,因為投遞的時間比較晚(10.8),所以筆試都沒有讓我做,直接讓我過去了
線下面分為兩天,第一天技術(shù)面,第二天是業(yè)務(wù)面和 HR 面
除了技術(shù)面之外,業(yè)務(wù)面和 HR 面對于我來說都是新的東西
閑話少說,咱們打板兒就唱哦
二、一面
1、自我介紹
年齡,學校,專業(yè),技術(shù)棧,競賽,項目,實習
2、懟項目
3、實習負責的模塊,具體講一講
js 邏輯核查引擎,講了一下大概的業(yè)務(wù)
4、算法題:找眾數(shù),數(shù)據(jù)大約 10000 個(其實多少個都無所謂)
方法1:
使用 map ,統(tǒng)計每個數(shù)出現(xiàn)的次數(shù),然后返回出現(xiàn)次數(shù)最多的那個數(shù)
空間 O(n),時間 O(n)
方法2:
排序,然后遍歷統(tǒng)計
空間 O(1),時間 O(nlogn) <在使用快排或歸并排序的情況下>
我為了求穩(wěn),寫了一個歸并排序
方法3:
使用大根堆,后面的邏輯和方法二類似(這個方法有點炫技,堆排序和構(gòu)建不熟悉的同學不要寫,不然可能會自己打自己臉)
空間 O(1) 時間 O(n),這個照理說是最優(yōu)解(但還是那句話,堆構(gòu)建除非自己十分熟悉,否則不要寫!!)
5、創(chuàng)建線程的方法
繼承 Tread 類,實現(xiàn) Runnable 接口,實現(xiàn) Callable 接口
然后重寫 run 方法,調(diào)用 start() 方法
6、還有什么方法
可以使用線程池
7、介紹一下線程池
四個講了一下,并對 ThreadPoolExecutor 多費了些口舌講了一下其中參數(shù)的含義
8、線程怎么按照順序啟動
9、介紹一下 java 內(nèi)存模型
(面試官是把內(nèi)存模型和內(nèi)存結(jié)構(gòu)的概念搞混了,后來核實了,其實是要問內(nèi)存結(jié)構(gòu))
每個線程私有一個虛擬機棧,程序計數(shù)器
還有本地方法棧
還有堆區(qū),方法區(qū)
10、GC 算法
復制-清除
標記-清除
分代-清除
然后將 minor GC ,major GC 的過程講了一下(新生代的 Eden區(qū) s1,s2區(qū),老年代是經(jīng)過新生代多次 GC 放入,或者是觸發(fā)了擔保機制,或者是一開始申請的就是很大的對象)
11、OOM 怎么排查
(這一塊兒的內(nèi)容沒看到,但是我在實習的時候遇到過內(nèi)存泄露)
實習公司使用 ThreadLocal 導致內(nèi)存泄露;處理方案
12、TCP UDP 區(qū)別
這個老問題了,幾乎每個面試官都會問
13、http和 https 的區(qū)別
講了一下區(qū)別,和https 加密流程
14、還有什么區(qū)別?
(這我還真就不知道了)
15、你了解哪些加密算法
MD5 ,非對稱加密,(還有哪些我就不知道了)
16、數(shù)據(jù)庫三范式
1-3 NF 分別表示什么
17、面向?qū)ο缶幊痰淖⒁恻c
多用組合,少用繼承(MVC 架構(gòu)經(jīng)典方式)
開放擴展,關(guān)閉修改
(我記得高軟課上上過好多,但是我只記得這些)
18、設(shè)計模式有哪些
我說了幾個常用的,結(jié)果面試官是讓我把 23 個全部說出來,這我哪兒記得🤦🏻?♀?
19、寫一下適配器模式
我就大概寫了一下,沒有完全寫出來
18、有什么想問的
如果能進入貴公司,主要負責什么業(yè)務(wù)
自己的面試表現(xiàn)和對我的建議(因為規(guī)定,所以不好說)
- 小結(jié):
一面面試官真的超級有耐心,對于我這樣的碎嘴皮子、一個問題可以串出一堆話出來的人,還是很耐心的聽完了我的所有回答
而且一面的時候,面試官也沒有怎么刁難我,問的問題能回答個十七八吧
唯一讓我不爽的就是,一天就面了一場,而不是把2、3面一塊兒面了(心疼車錢)
三、小插曲
二面通知是一面后當天晚上發(fā)給我的,我想著和學校申請可能來不及,而且也看到不少人出校門,于是招呼沒打就自己出去了
但是不知道怎么的,就被我的輔導員逮住了
還好自己心大,沒有因為這件事影響我的面試發(fā)揮…
四、二面
二面是前所未見的業(yè)務(wù)面,主要考察了我的業(yè)務(wù)能力,把我的競賽項目和實習項目挖了個底朝天…
1、自我介紹
2、懟項目
因為我的項目對于在讀文章的各位來說,可能沒有什么借鑒意義,我在這里也就不細致的分享了
我就把幾個問的重要的點分享一下,供各位參考:
-
項目的執(zhí)行流程(細化到每一步)
-
數(shù)據(jù)庫設(shè)計(特別是該怎么更具業(yè)務(wù)去設(shè)計數(shù)據(jù)庫表,我估計很多小伙伴在這里都會有些欠缺)
-
小組任務(wù)是怎么分的
-
你有什么優(yōu)化的方式
-
技術(shù)選型(分布式id,框架,數(shù)據(jù)庫這些)
-
排錯經(jīng)驗
-
部署過程
-
具體使用
業(yè)務(wù)面的時候一定要把圖畫清楚了,并且要力求把面試官講透徹了,而且在講的過程中,要時刻思考下一步對不對,合不合理,必要的時候可以在原項目的基礎(chǔ)上,進行合理的現(xiàn)場修改
3、SpringBoot 啟動的流程你了解嗎?
(這個我還真不了解)
我就大致講了一下 Spring 監(jiān)聽 tomcat 創(chuàng)建完 servlet 容器后,自己再創(chuàng)建,然后沒有然后了…
4、你在校的代碼量怎么樣
我直接報了個10w 😂
5、我看你在簡歷里放了 github 連接,一般會在里面放什么項目啊?
(絕了,我有一個人工智能五子棋的項目,但是因為體量太小了一直不好意思放在簡歷上,這次終于有機會進行展示了😂)
里面放了我寫的很多技術(shù)文章,后來轉(zhuǎn)移到 csdn博客和微信公眾號上了
里面還有一個我寫的人工智能五子棋項目(我極力的想向面試官展示,但是被摁住了)
6、你為什么要寫這個五子棋項目
為了裝逼 為了好玩,同時也可以鍛煉一下我的 java 編程水平和設(shè)計模式的知識
4、我看你沒有參加筆試嗎,咋回事?
(我瞬間就來精神了)
貴公司沒有給我發(fā)筆試鏈接,就讓我來面試了,但是我對自己的算法還是很自信的,要不我們現(xiàn)場寫一道?
(后來面試官因為時間不夠拒絕了)
5、有什么想問的
如果能進入貴公司,主要負責什么業(yè)務(wù)(oppo商城日活巨大,有很多服務(wù)需要去開發(fā))
自己的面試表現(xiàn)和對我的建議(因為規(guī)定,所以不好說,和一面的時候一樣…)
- 小結(jié):
二面結(jié)束,面試官就讓我在候場區(qū)等等,那個時候真的是狂喜,知道 hr 面有機會了,但是還是要在面試官面前保持一臉平靜
五、中場休息
我在退出面試大廳的時候,大概看了一下大廳的布局,大概6列,前四列負責 一二技術(shù)面,最后兩列是 hr
可能是因為我去的比較早吧,到 hr 面的還沒幾個人,我看到有一半的 hr 都跑到等候室拿蛋糕吃了😂
在等候的時候,我還打聽了身邊的候選人的情況,一問不得了,都是碩士,有南理工的,南航的,南大的…瞬間壓力倍增…
不過自己好像是今天第一個 hr 面,瞬間又自信心爆棚
六、HR 面
HR 面是一個超級漂亮的小姐姐,而且超級友好,有點小激動
1、介紹一下自己
2、介紹一下你做的項目吧
3、有沒有上線
有,后來撤了
4、流量多少
用戶200左右,初始日活100左右
5、你是怎么鼓動同學們?nèi)ナ褂玫?/strong>
發(fā)紅包,鼓動班上的同學幫忙
6、幫助多少同學找到了丟失的寵物
2-3位
7、為什么后來下線
因為要把 ECS 騰出來放其他項目
8、你們小組成員都做了什么
這個問題在技術(shù)面和hr面的答案還真不能一樣😂
項目全是我寫的,技術(shù)面的時候,我就說是全棧開發(fā),讓面試官多問一點
但是和 hr 這么講的話,就會顯得我有點窮兵黷武,所以就是硬拆也要拆寫模塊說是其他同學幫忙寫的😂
9、你是什么職位
副組長,技術(shù)總監(jiān)
10、為什么沒有當組長
一是以為我們的組長要時常和老師聯(lián)系,而且他和那位老師有比較熟悉
二是因為我在技術(shù)開發(fā)這一塊兒花的時間比較多
所以就將組長職位讓出了
11、組長有和你意見不合的地方,你是怎么處理的
12、組長和你意見不合的時候,聽誰的
13、為什么不考研
因為我就算讀完研究生,也是去做后端開發(fā)的,那相比我本科畢業(yè)就去應(yīng)聘后端開發(fā)的職位,考研的邊際效益就很低了
而且我認為,對于應(yīng)用開發(fā),經(jīng)驗比在象牙塔里學習更重要
14、你大學四年的整塊兒時間是怎么安排的
大一大二熟悉語言,熟悉數(shù)據(jù)結(jié)構(gòu),多刷算法題,鞏固 coding 技巧
大三開始轉(zhuǎn) java ,學開發(fā),寫項目
大四開始秋招找工作
15、為什么你的績點不是很高呢(我填的 50%,現(xiàn)實情況是還要低一點🤦🏻?♀?)
(這真的是送命題,之前阿里電話面的時候,就因為這玩意兒黃了)
因為我的大多精力和時間都放在學習開發(fā)相關(guān)的知識上了,剛好考試那段時間,我也在忙項目和競賽的事情,所以期末復習就耽擱了,導致我的績點可能不是很理想
16、為什么沒有擔任班委呢
技術(shù)學習花的時間比較長,對這方面可能沒有辦法分出精力去完成了
17、有參加過什么活動嗎
慰問孤寡老人
慰問殘障兒童
18、是自愿的嗎
前期是因為任務(wù),后面發(fā)現(xiàn)這樣的活動對社會有積極的意義,所以就主動申請了
19、你后期的一個職業(yè)規(guī)劃是什么
3年初升高級開發(fā),5-7年架構(gòu)師
35歲創(chuàng)業(yè)
20、你現(xiàn)在有創(chuàng)業(yè)的一個企劃嗎
之前有一個線上教育的企劃,但是因為最近對外部課程的打壓比較多,所以暫時擱置了
21、你堅持的最久的一件事是什么
寫技術(shù)博客,在 CSDN ,公眾號上分享
22、閱讀量怎么樣
(帶點小夸大,但沒有太夸張)
23、有沒有女朋友
(我老光棍了…🍋) 暫時還沒有
24、有什么想問的
如果能進入貴公司的話,負責的業(yè)務(wù)(java 能做的事很多,后面還要進行一波雙向選擇)
能不能提前過來實習
(薪資啥的沒敢問,因為oppo的白菜價不清楚,怕要的高了出事)
- 小結(jié)
hr 面和技術(shù)面真的是完全不一樣的體驗,在和 hr 小姐姐介紹項目的時候,一定要弱化技術(shù),強調(diào)業(yè)務(wù),并且在回答每個問題的時候,一定要過腦子想一想,為 hr 營造出一個陽光大男孩兒,但是又有點 nerd 的形象
還有一點就是------hr 小姐姐真的太漂亮了,搞得我好幾次都心不在焉的,好在最后發(fā)揮得還可以
七、小結(jié)
如果這個 OPPO 線下招聘順利,加上我明天攜程的 HR 面順利的話,我的秋招就基本結(jié)束了
其實這兩輪技術(shù)面都十分驚險,因為我的項目就是兩個 vue + springboot 的小破項目,中間件微服務(wù)啥的都沒用,要挖掘也挖掘不出什么難點,不過這些我發(fā)現(xiàn)除了小公司喜歡問之外,大廠也不咋問…
后面我可能會一篇文章,回顧一下我秋招的整個歷程,并且可能會再分享一下我學習 java 的過程,希望到時候各位能捧個場
總之這次的分享就到這里吧,希望能獲得 oppo 的 offer 🙏🏻,也希望明天的攜程 hr 面順利通過🙏🏻
總結(jié)
以上是生活随笔為你收集整理的OPPO 后端开发 一、二、HR 面面经 (已 OC)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 利用随机森林对特征重要性进行评估 方法一
- 下一篇: 解魔方机器人一秒搞定魔方