螞蟻金服面試總結

螞蟻金服一面

螞蟻金服一面是電話面試,面試官首先介紹了下他們部門(金融風險部門)的情況,我表達了堆他們部門業務的理解,然後就進入正題了。
  1. 自我介紹下自己(感覺這是個常規的電話面試套路)
    個人教育情況
    工作經歷的幾家公司和所在的部門
    現在所在的職位和公司
    因爲我校招是以測試的身份進入去哪兒網,並做測試做了一年半的時間,面試官對這個情況也深入的瞭解了下原因和時長
  2. 介紹下感覺比較有成就感的項目
    首先我介紹了下項目背景,很明顯,面試官並不感興趣,然後直接問我
  3. 介紹下你在這個項目中最有成就感的三點
    壓力很大的情況下完成了任務(感覺沒啥實質的好處)
    做了相關的輔助工具(感覺不是面試官關注的東西)
    配置了完善的策略保證上線的安全
    面試官聽了之後並沒有很好的反饋,我細想了下,這三點確實沒有突出的地方,實在不應該這麼總結,應該把性能,框架改造,和解決的難題說一下
  4. 面試官感覺項目沒啥特色,就開始面基礎了,Object的方法有哪些
    hashcode
    equals
    toString
    wait
    notify
    finalize
    getClass
    clone(沒說出來)
  5. finalize方法是做什麼的?
    這裏我沒有實質的說出來finalize的用途是做什麼的,我大致描述了finalize的特點:在對象被Gc之前,必然會調用finalize方法,使用finalize方法可以有一次拯救自己的機會,可以對該對象重新引用
  6. 見過finalize這麼做的嗎?
    沒有,實際項目中基本不會對finalize重寫,也不建議重寫,(這塊對finalize的使用場景不太清楚)
  7. equals方法和hashcode方法爲什麼需要同時重寫
    在我們hashMap和hashSet的數據結構中,會先對對象進行hashCode碼的判斷,然後在根據equals方法的判斷是否是相同對象
  8. hashcode一樣,equals相等嗎?
    不一定
  9. equals相等,hashcode相同嗎?
    相同
  10. 使用過db吧,說下db中的樂觀鎖和悲觀鎖
    我一下蒙了,db中的樂觀鎖和悲觀鎖?這個是要問隔離級別嗎?然後腦子就不轉圈了,反問了下,沒太明白
  11. 那你說下什麼是樂觀鎖,什麼是悲觀鎖
    樂觀鎖:在使用之前認爲該值時不會被改動的,業務執行之後修改值的時候進行比對
    悲觀鎖:在使用之前認爲該值會被改動,使用之前先對其進行加鎖
  12. 說下怎麼在db中使用樂觀鎖和悲觀鎖,假設db中有個庫存的列,需要進行扣減,分別使用樂觀鎖和悲觀鎖實現一下
    這塊我大腦蒙了,沒說出來,面試結束之後,一下反應過來了
    樂觀鎖實現:在db中增加version字段,讀數據把version讀出來,修改後對比version是否相同,相同情況下對庫存修改,並對version加1
    悲觀鎖實現:這塊可以設置新字段標識行鎖,先更新行鎖鎖住該行,然後在讀出數據修改數值,把行鎖解除掉(感覺會引申出如果宕機了鎖沒有清掉產生的一直被鎖的問題)
  13. 算法題,兩個有序數組,合併
    歸併,嘴說代碼,這個也是少見
  14. 請問你有意願加入質檢組嗎?
    這塊我絕對是腦子出現了問題,我以爲他說的質檢組是測試,其實他們組叫質檢組,我說我不會在鎖質檢工作,我轉開發就不會再做測試的工作,哈哈哈
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章