1. 自信,緊張,焦慮,意外?螞蟻金服難忘的四面經(jīng)歷,真的太刺激了

        共 3385字,需瀏覽 7分鐘

         ·

        2021-08-09 09:47

        前言

        前段時間,螞蟻金服的熱度可不小,互聯(lián)網(wǎng)圈人人都在討論它上市的事情,實際上螞蟻金服上市是遲早的事情。這一下,螞蟻的員工含金量上升了不少,那我之前螞蟻提前批這波面經(jīng),也是時候分享了。

        這次面試,可以說是一波三折,波濤洶涌了,原本我是一個挺自信的人的,所以在面試前我算是處于一個斗志昂揚的狀態(tài),奈何在經(jīng)歷一面二面意志力被消磨了不少,雖然三面準備充足,但整體下來對自己表現(xiàn)不滿意,所以以為是沒戲了,沒想到意外接來了HR面的通知,于是就這么意外的拿到了offer。

        下面就對這次螞蟻金服的面試體驗進行一個分享,由于面試題比較多,所以只挑選了一些有針對性的核心題放在這里解析,如果你需要完整pdf版,可以免費提供給你,私信口令“面試題”即可。


        螞蟻金服意外的第一面

        1、講一講ArrayList和LinkedList區(qū)別?

        • ArrayList 是一個可改變大小的數(shù)組。當更多的元素加入到ArrayList中時,其大小將會動態(tài)地增長。內(nèi)部的元素可以直接通過get與set方法進行訪問,因為ArrayList本質(zhì)上就是一個數(shù)組,

        • LinkedList 是一個雙鏈表,在添加和刪除元素時具有比ArrayList更好的性能.但在get與set方面弱于ArrayList。

        • 當然,這些對比都是指數(shù)據(jù)量很大或者操作很頻繁的情況下的對比,如果數(shù)據(jù)和運算量很小,那么對比將失去意義。

        2、什么情況會造成內(nèi)存泄漏?

        • 在Java中,內(nèi)存泄漏就是存在一些被分配的對象,這些對象有下面兩個特點:

        • 首先,這些對象是可達的,即在走向圖中,存在通路可以與其相連;

        • 其次,這些對象是無用的,即程序以后不會再使用這些對象。

        • 如果對象滿足這兩個條件,這些對象就可以判定為Java中的內(nèi)存泄漏,這些對象不會被GC所回收,然而它卻占用內(nèi)存。

        3、什么是線程死鎖,如何解決 ?


        4、紅黑樹是什么?怎么實現(xiàn)?時間復雜度

        5、TCP三次握手?


        螞蟻金服突然的第二面

        1、Storm怎么保證一致性 ?

        • Storm是一個分布式的流處理系統(tǒng),利用anchor和ack機制保證所有tuple都被成功處理。如果tuple出錯,則可以被重傳,但是如何保證出錯的tuple只被處理一次呢?Storm提供了一套事務性組件Transaction Topology,用來解決這個問題。

        • Transactional Topology目前已經(jīng)不再維護,由Trident來實現(xiàn)事務性topology,但是原理相同。

        2、說一下hashmap以及它是否線程安全?


        3、十億條淘寶購買記錄,怎么獲取出現(xiàn)最多的前十個 ?

        • 這是一道典型的有限內(nèi)存的海量數(shù)據(jù)處理的題目。一般這類題目的解答無非是以下幾種:

        • 分治,hash映射,堆排序,雙層桶劃分,Bloom Filter,bitmap,數(shù)據(jù)庫索引,mapreduce等。

        • 具體情形都有很多不同的方案。這類題目可以到網(wǎng)上搜索一下,了解下套路,后面就基本都會了。

        4、平時有沒有用linux系統(tǒng),怎么查看某個進程 ?

        ps aux|grep java 查看java進程
        ps aux 查看所有進程
        ps –ef|grep tomcat 查看所有有關(guān)tomcat的進程
        ps -ef|grep --color java 高亮要查詢的關(guān)鍵字
        kill -9 19979 終止線程號位19979的進程

        5、說一下Innodb和MySIAM的區(qū)別?

        6、說一下jvm內(nèi)存模型,介紹一下你了解的垃圾收集器 ?

        • 其實并沒有jvm內(nèi)存模型的概念。應該是Java內(nèi)存模型或者jvm內(nèi)存結(jié)構(gòu),這里面試者一定要聽清楚問的是哪個,再回答。

        7、其他問題

        • 100個有序的整型,如何打亂順序?

        • 如何設(shè)計一個可靠的UDP協(xié)議?

        螞蟻金服準備充足的第三面

        1、介紹一下hashmap?

        • HashMap真的是面試高頻題,多次面試都問到了,一定要掌握。

        2、介紹一下并發(fā)?

        • 這里可以把整個并發(fā)的體系都說下,包括volatile、synchronized、lock、樂觀悲觀鎖、鎖膨脹、鎖降級、線程池等

        3、銀行賬戶讀寫怎么做?

        • 我說了讀寫鎖以及可能出現(xiàn)死鎖問題

        4、說一下關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫的區(qū)別 ?

        5、如何訪問鏈表中間節(jié)點?

        6、說下進程間通信,以及各自的區(qū)別?

        • 進程間通信是指在不同進程之間傳播或交換信息。方式通常有管道(包括無名管道和命名管道)、消息隊列、信號量、共享存儲、Socket、Streams等。

        7、訪問淘寶網(wǎng)頁的一個具體流程,從獲取ip地址,到怎么返回相關(guān)內(nèi)容?

        螞蟻金服十分焦慮的HR面

        1、有沒有遇到過什么比較大的挫折?

        • 這種問題主要考察面試者遇見困難是否能堅持下去,并且可以看出他的解決問題的能力。

        • 可以簡單描述挫折,并說明自己如何克服,最終有哪些收獲。

        2、有之后清晰的職業(yè)規(guī)劃嗎?說說看

        • 表明自己決心,首先自己不準備繼續(xù)求學了,必須找工作了。然后說下自己不會短期內(nèi)換行業(yè),或者換工作,自己比較喜歡,希望可以堅持幾年看自己的興趣再規(guī)劃之類的。

        3、說一下你對阿里的認識吧

        • 這個比較簡答,夸就行了。

        4、有什么崇拜的人嗎?為什么?

        5、最理想的就業(yè)城市是哪里?

        6、說一件你自己記憶里印象最深刻的一件事吧


        總結(jié)

        實際上,提前批考察的更多的是基礎(chǔ)知識,主要是因為現(xiàn)在的很多大公司都有自己在用的框架,基本上是進公司以后再去重新學習這些框架知識,所以基礎(chǔ)部分是提前批考察的關(guān)鍵,看你的基礎(chǔ)知識是否夠扎實!

        必備知識點包括:

        • 操作系統(tǒng)

        • Linxu

        • 數(shù)據(jù)庫

        • 數(shù)據(jù)結(jié)構(gòu)

        • 算法

        • java(基礎(chǔ)、容器、高并發(fā)、jvm)

        • 計算機網(wǎng)絡

        面試螞蟻金服,你必須要做好的功課

        功課一:了解公司,摸清喜好,定制簡歷

        我們都知道,螞蟻金服是一家互聯(lián)網(wǎng)金融公司,所以在對員工喜好和技術(shù)傾向方面與很多互聯(lián)網(wǎng)公司不同,所以在面試螞蟻金服之前,一定要了解清楚這家公司的信息,摸清好它們的喜好,這樣才能有能力去定制簡歷,通過簡歷篩選的第一關(guān)。

        在投螞蟻金服之前,我特意把自己的簡歷進行了修改,也是參照的網(wǎng)上的模板,和自己舊版簡歷對比,確實加分不少。(私信“簡歷”免費領(lǐng)取18種簡歷模板)

        簡歷模板-1

        簡歷模板-2

        功課二:梳理技術(shù)棧,提升廣度和深度

        • 筑基必備技能:并發(fā)編程+JVM剖析+網(wǎng)絡編程與高效IO+Mysql深度進階+深入Tomcat

        • 性能直線提升架構(gòu)技術(shù):分布式架構(gòu)+Zookeeper+Nginx+RabbitMQ+RocketMQ+Kafka

        • 高效存儲讓項目性能起飛:Redis+mongoDB+MySQL高可用+Mycat

        • 分布式擴展到微服務架構(gòu):SpringBoot+SpringCloud+SpringCloud Alibaba+docker+k8s

        • 設(shè)計思想解讀開源框架:六大原則+設(shè)計模式+Spring5源碼解讀+SpringMVC框架源碼解讀+Mybatis源碼


        當然,這套技術(shù)路線圖不完全要求全部掌握,尤其是對于剛工作的或經(jīng)驗不多的人來說,但作為程序員,我們需要具備這種提升自己技術(shù)廣度和深度的思維,因此這條架構(gòu)師發(fā)展路線圖從基礎(chǔ)-進階-實戰(zhàn)均涉及到了,非常全面具體。(附學習路線圖+實戰(zhàn)電子書+源碼筆記,私信“螞蟻金服”免費獲?。?/span>

        功課三:刷刷歷年真題,積累經(jīng)驗

        對于應屆生或是工作經(jīng)驗不足的程序員來說,刷題是應對面試最快捷最有效的方式,能夠讓自己迅速掌握面試公司的面試情況,至少能夠應對50%以上的內(nèi)容。

        在面試螞蟻金服之前,我就狠狠的刷了一波題,實際上問的內(nèi)容都差不了太多,學會舉一反三才是刷題的精髓之處。

        關(guān)于刷題,我也準備了一套面試大禮包分享給大家:

        面試題集錦

        歷年BAT等一線大廠面試專題

        Java面試核心知識點

        寫在最后

        羅馬不是一天建成的!成為技術(shù)大牛的道路也不是一個月一年就能走完的,不僅僅軟件開發(fā)這個行業(yè)如此,其他行業(yè)亦是如此。

        剛踏上掉發(fā)路上的我,一直在努力!

        以上文章內(nèi)容中,涉及到的所有pdf文檔資料均可以免費分享給你們,只需要你多多支持我即可!

        ——打包獲?。俊稗D(zhuǎn)發(fā)加評論,關(guān)注我以后,私信口令「螞蟻金服」免費領(lǐng)取”


        本文就是愿天堂沒有BUG給大家分享的內(nèi)容,大家有收獲的話可以分享下,想學習更多的話可以到微信公眾號里找我,我等你哦。


        瀏覽 67
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 被女同桌强行足脚交了 | 影音先锋在线三级 | 婷婷av一区二区三区 | 在教室伦流澡到高潮h强圩l | 狠狠久久 |