<strong id="1mzrt"></strong>
  • <strong id="1mzrt"></strong>

  • 歡迎訪問邯鄲翱翔電腦學校

    邯鄲翱翔學校地址:河北省邯鄲市邯鄲學院北路滏西大街交口西北角  咨詢熱線:15333301535
    熱門文章
    行業新聞您當前所在位置:首頁 > 新聞中心 > 行業新聞

    正在找工作的Java開發一定要看看!

    點擊次數:160次
    導讀:在前幾天,我和一個分公司技術部負責面試的朋友聊天時聽他抱怨,現在的年輕人簡歷寫得一個比一個厲害,等邀約到公司面試問個簡單的問題都卡殼,他面試了10幾位候選人,簡歷上工作經驗1~3年的都有,但符合要求的很少。

    在前幾天,我和一個分公司技術部負責面試的朋友聊天時聽他抱怨,現在的年輕人簡歷寫得一個比一個厲害,等邀約到公司面試問個簡單的問題都卡殼,他面試了10幾位候選人,簡歷上工作經驗1~3年的都有,但符合要求的很少。

    他說他的心里標準也不高,第一能干活,第二Java基礎要好,第三最好熟悉些分布式框架,我相信其它公司招初級開發時,應該也是按照著這個標準來面的。

    我知道,不少候選人能力其實不差,但面試時沒準備或不會說,這樣的人可能在進團隊干活后確實能達到期望,但可能就無法通過面試,但面試官總是只根據面試情況來判斷。

    但現實情況是,大多數人可能面試前沒準備,或準備方法不得當。要知道,我們平時干活更偏重于業務,不可能大量接觸到算法,數據結構,底層代碼這類面試必問的問題點,換句話說,面試準備點和平時工作要點匹配度很小。

    所以,在今天我將通過一些常用的問題來介紹面試的準備技巧。

    1、框架是重點

    在面試前,面試官一般都會閱讀簡歷以查看候選人在框架方面的項目經驗,在候選人的項目介紹的環節,面試官也會著重關注候選人最近的框架經驗。

    比如SSM,springboot,springcloud等常用框架,一般工作在5年內的候選人,大多僅僅是能“山寨”別人的代碼,也就是說能在現有框架的基礎上,照著別人寫的流程,擴展出新的功能模塊。

    比如要寫個交易支付的功能模塊,是會模仿現有的流程,然后從前端到后端再到數據庫,依樣畫葫蘆寫一遍,最多把功能相關的代碼點改掉。

    其實我們每個人都這樣過來的,但在面試時,如果你僅僅表現出這樣的能力,就和大多數人的水平差不多了,在這點就沒法體現出你的優勢了。

    我們知道,如果單純使用SSM框架,大多數項目都會有痛點。比如數據庫性能差,或者業務模塊比較復雜,并發量比較高,用Spring MVC里的Controller無法滿足跳轉的需求。所以有的面試官一般還會主動問:你除了依照現有框架寫業務代碼時,還做了哪些改動?

    所以,在準備面試時,盡量歸納一下框架里面的知識點,然后你能說出來那么這方面你就碾壓了將近90%的競爭者。

    2、數據庫

    數據庫方面,別就知道增刪改查,得了解性能優化,在實際項目里,大多數程序員用到的可能僅僅是增刪改查,當我們用Mybatis時,這個情況更普遍。

    但我們在面試時千萬要表現的和其他人不一樣,這方面你需要了解如下知識點:

    SQL高級方面,比如group by, having,左連接,子查詢(帶in),行轉列等高級用法。建表需要考慮用三范式還是反范式,理由是什么?關于數據庫優化你可以準備下如何通過執行計劃查看SQL語句改進點的方式,或者其它能改善SQL性能的方式(比如建索引等)。如果你對這方面有更多了解可以自己根據經驗與面試官概述,比如MySQL集群,MyCAT分庫分表的技能。

    3、Java核心

    Java核心這塊,網上的面試題很多,不過在此之外,大家還應當著重關注集合(即數據結構)和多線程并發這兩塊,在此基礎上,大家可以準備些設計模式和虛擬機的說辭。

    比如:

    String a = "123"; String b = "123"; a==b的結果是什么?這就包含了內存,String存儲方式等諸多知識點。

    HashMap里的hashcode方法和equal方法什么時候需要重寫?如果不重寫會有什么后果?對此大家可以進一步了解HashMap(甚至ConcurrentHashMap)的底層實現。

    JVM里,new出來的對象是在哪個區?再深入一下,問下如何查看和優化JVM虛擬機內存。

    Java的靜態代理和動態代理有什么差別?

    ArrayList和LinkedList底層實現有什么差別?它們各自適用于哪些場合?

    ......等等

    上述問題包含了“多線程并發”,“JVM優化”,“數據結構對象底層代碼”等細節,大家也可以舉一反三,通過看一些高級知識,多準備些其它類似面試題。

    4、Linux需要會排查問題

    目前大多數的互聯網項目,都是部署在Linux上,也就是說,日志都是在Linux,如果候選人能證明自己有在Linux上“排查問題”和“解決問題”的能力,這絕對是個加分項。

    比如一些常用的命令:

    sudo

    這個SuperUserDo是Linux新手要使用的最重要的命令。需要根權限的每一個命令都需要這個sudo命令。你可以在需要根權限的每個命令之前使用sudo。

    grep

    你需要找到一個文件,但是又記不得它的確切位置或路徑。grep可以幫助你解決這個問題。你可以使用grep命令,根據給定的關鍵字幫助找到文件。

    當然,還有更多更實用的Linux命令,但在實際面試過程中,不少候選人連一條linux命令也不知道。所以還是那句話,只要你能說出這方面的知識,你就碾壓了90%的面試者。


    Copyright (c) 2006-2021 邯鄲翱翔