主頁 >  其他 > 25K的Java工程師只需要掌握這20%的技術就夠了!

25K的Java工程師只需要掌握這20%的技術就夠了!

2020-12-04 11:16:23 其他

目錄

前言:

Java需要掌握的知識點

初中級 Java 程式員必須掌握的知識,

微服務思維導圖

阿里官網支付寶Java高級開發工程師的招聘要求

應屆實習生如何提升你的個人競爭力


前言:

我聽說編程語言,經常使用的是其中20%的技術,在Java這門語言中,這20%包括哪些內容?參加培訓兩個月了,還有兩個月的時間,要想在兩個月后,找到一份Java初級程式員的作業,有哪些是必須掌握的,有哪些是可以現學現賣的?一個完整的Javaweb專案,有哪些具體模塊,每個模塊用到的技術是哪些?

Java需要掌握的知識點

  1. java以分布式應用豐富的生態聞名,在分布式系統中逃不過CAP的抉擇,早早了解一些分布式一致性協議paxos、raft等,學習zookeeper的原理和使用場景(metadata、分布式鎖、leaderEletion... etc)
  2. RPC框架在SOA架構中起著重要的作用,好好探究終是有好處的,在這里推薦阿里巴巴的dubbo框架,同時會netty、mina等網路庫
  3. ElasticSearch\SolrCloud 分布式搜索 ELK 日志相關的東西對這些比較敏感,當然在更多的場景使用ES也是有很多
  4. 訊息佇列 kafka\MetaQ RabbitMQ 快取 Redis/memcached .容器tomcat/jetty web服務器NGINX/OpenResty
  5. 然后就是各種基礎知識,編程語言、網路方面、資料庫、資料結構和演算法,不要覺得任何一項都精通了,敢說精通的知乎能有幾個,
  6. = =太多東西了,一時還真想不起來完,上面這些也就目前業內常見的東西吧,在不同的作業當中會遇到不同的問題,需要更多的工具、開源框架來解決各種蛋疼的問題,然后會的東西越來越多,然后就不知道自己到底會寫什么了,
  7. 掌握技能也就是需要時間成本和學習成本,要成為一個好的程式員不要怕學習,有學歷能力需要新技術才能跟得上,想當年才學的時候struts2比springmvc高出一截,不過現在也基本沒人用啦,

很多初學者或者有經驗的開發者都會陷入這個泥潭:“不知道自己該學什么?”,

我覺得最簡單的方法就是你去招聘官網上看看公司要求什么技能,比如初級 Java 工程師的招聘要求肯定和高級 Java 工程師的招聘要求不一樣,阿里的 Java 工程師的招聘要求肯定和 普通公司的Java 工程師招聘要求不一樣,

初中級 Java 程式員必須掌握的知識,

  1. 熟練掌握資料結構、演算法、作業系統、計算機網路等基礎知識
  2. 熟練掌握Java編程、熟悉Java高并發開發手段、對JVM 虛擬機(Java記憶體區域、虛擬機垃圾演算法、虛擬垃圾收集器、JVM記憶體管理)有一定研究
  3. 熟練掌握SOA分布式系統開發,具有優化系統性能、提高系統并發量以及系統可用性的實際經驗
  4. 熟練掌握Spring、MyBatis、SpringBoot等框架的使用,熟悉 Spring 原理比如 Spring Bean 的創建原理、IOC和AOP的原理,另外,由于現在基本公司都是直接用 Spring Boot ,所以實戰建議直接上手Spring Boot,SSM就算了吧,Spring 還是可以看一下,
  5. 熟練掌握Dubbo、Zookeeper、常見的訊息佇列(比如Kafka、RocketMQ)的使用
  6. 熟悉Linux 系統的使用,在Linux系統下具有實際的開發經驗
  7. 熟悉MySQL資料庫的使用、常見SQL陳述句的書寫以及常見的優化手段
  8. 熟練掌握 Redis 了解Redis 常見的資料結構、Redis分布式快取以及Redis分布式鎖的實際應用
  9. 掌握 Spring Cloud +Docker+k8s
  10. 了解Hadoop 生態相關技術中的 HDFS、Storm、MapReduce、Hive、Hbase

微服務思維導圖

小編這里總結了一份spring cloud的思維導圖,有興趣的小伙伴可以點擊看一下哦!需要思維導圖領取可以 點我領取 ,

阿里官網支付寶Java高級開發工程師的招聘要求

我們再來看一下阿里官網支付寶Java高級開發工程師的招聘要求,年薪至少40w起步了吧!從下面的招聘資訊可以看出,除去Java基礎/集合/多執行緒這些,這些能力格外重要:

  1. 底層知識比如jvm :不只是懂理論更會實操;
  2. 面向物件編程能力 :我理解這個不僅包括“面向物件編程”,還有SOLID軟體設計原則,
  3. 框架能力 :不只是使用那么簡單,更要搞懂原理和機制!搞懂原理和機制的基礎是要學會看原始碼,
  4. 分布式系統開發能力 :快取、訊息佇列等等都要掌握,關鍵是還要能使用這些技術解決實際問題而不是紙上談兵,
  5. 不錯的sense :喜歡和嘗試新技術、追求撰寫優雅的代碼等等,

應屆實習生如何提升你的個人競爭力

結合阿里、騰訊等大廠招聘官網對于 Java 后端方向/后端方向的應屆實習生的要求下面幾點也提升你的個人競爭力:

  1. 參加過競賽( 含金量超高的是 ACM );
  2. 對資料結構與演算法非常熟練;
  3. 參與過實際專案(比如學校網站)
  4. 熟悉 Python、Shell、Perl 其中一門腳本語言;
  5. 熟悉如何優化 Java 代碼、有寫出質量更高的代碼的意識;
  6. 熟悉 SOA 分布式相關的知識尤其是理論知識;
  7. 熟悉自己所用框架的底層知識比如 Spring;
  8. 有高并發開發經驗;
  9. 有大資料開發經驗等等,

從來到大學之后,我的好多閱歷非常深的老師經常就會告誡我們:“ 一定要有一門自己的特長,不管是技識訓好還是其他能力 ” ,我覺得這句話真的非常有道理!
剛剛也提到了要有一門特長,所以在這里再強調一點:公司不需要你什么都會,但是在某一方面你一定要有過于常人的優點,換言之就是我們不需要去掌握每一門技術(你也沒精力去掌握這么多技術),而是需要去深入研究某一門技術,對于其他技術我們可以簡單了解一下,


這讓我想到了我當年第一份作業,也是兩個月從零學JAVA,當時就買了3本書,強啃了6周,記住一點,時間有限,別聽網上很多大牛的,他們說的太雜,你要抓重點,你只要讓人家知道,你足夠初級開發就可以了,學了長長一個串列,個個不精,被面試官隨便問起來,就糟了,倒不如抓住最基本的,反正你就是初級人員,只懂最基本的,是最正常的情況,

首先,學會一個J2EE服務器,tomcat+(Nginx或者httpd等web服務),學會的標準是,會下載,能啟動,知道什么檔案部署在什么地方,能看到啟影片面,能知道最直接,最關鍵的組態檔名字和位置,你要了解下其他的服務器的名字,就足夠了,有人叫你去學weblogic?那是坑你,2個月weblogic,你最多也只能懂十分之一,太重,

其次,學一個框架,以前SSH,現在SSM,這些都多余,你就只看spring MVC,因為所有的mvc框架都類似,你只要堅持你了解MVC,其他的我覺得是容易借鑒類推的,H和M,你就直接說,我沒有專案經驗,我是沒有實際接觸過的,我只了解一點點原理,這個不要花時間,最后去看幾眼檔案就可以了,spring MVC,就這么簡單,一個就行,

然后是資料庫,別趕時髦搞nosql,老老實實關系型,mysql就很好,坑淺應用多,最近連集群支持的都很好了,你只要強調一點,資料庫,你不是DBA,你還不懂如何調優,如何調執行計劃,你只懂增刪改查,所以你要學的就是T-SQL,標準是你能手寫帶條件的增刪改查,會復雜陳述句更好,稍微了解下sql效率方面的問題,為了面試也是可以,MSSQL在國內被鄙視的不行,如果有人叫你弄oracle,那又是太裝逼,我手下一票的5年+程式員,其中有超過一半連oracle的AWR都不會讀,有的連資料字典都不知道,

IDE不多談,你總逃不過eclipse和幾個大廠的東西,要用簡單易用的,別花太多時間在這個上面,

設計模式你要稍微看一下,了解什么是設計模式,你大可以老實說,你根本剛入行,只是粗通工廠模式和單粒,其他的需要在作業中學習,這樣既不會顯得完全不懂,也不會出什么紕漏,

程式方面,jdbc需要了解下,相關的有連接字的寫法,如何準備和獲取結果,什么是resultset這類東西,當然,資料庫連接的關閉和釋放也是需要的,

類和抽象類和介面的關系搞清楚,繼承和實作搞清楚,多載重寫搞清楚這些都是基本概念,

EJB現在不太用了,稍微了解下,你可以用spring所以不用手寫EJB了,spring除了MVC以外,還有很多專案,DAO可以看一下,比較初級,

由于java主要是B/S結構,無論是集成還是自己的前后端,你都要看一下http,整個http的生命周期是什么?存在哪些步驟和不同的application負責哪個階段,相關的有幾個request和response物體,包含什么是session了解下,

業務邏輯的話,上手仔細寫幾個例子就好了

前段你不需要了解太多,JSP+JS就足夠了,你是程式員,不是前端的美工,不用去了解太多,jsp上有個容易忽視的基礎點:tag到底是什么如何處理,jsp的生命周期這些也最好看一下,

基礎的devops稍微了解下, git的代表,github可以注冊一個賬號,搞清楚本地repo和遠程repo之間的關系即可,SVN更為簡單一點,

Maven也要學習一下,主要是pom檔案的幾個主要的部分,尤其是depedency,

code smells方面手寫萬把行代碼,自己有個感覺,不用去刻意背javadoc,

去面試吧,祝你好運!

文章到這里就結束了!

最后來自小編的福利

以下是小編整理的一份大廠真題的面試資料,以及2020最新Java核心技術整理的資料集錦,需要領取的小伙伴可以 點我 免費領取 ,編程的世界永遠向所有熱愛編程的人開放,這是一個自由,平等,共享的世界,我始終是這樣堅信的,

部分資料圖片:

喜歡小編的分享可以點贊關注哦,小編持續為你分享最新文章 和 福利領取哦

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/229822.html

標籤:其他

上一篇:Codeforces Round 99(Rated for Div. 2) -- B Jumps

下一篇:簡歷上還不敢寫精通redis?來看看這份阿里強推的redis深度歷險成長手冊!集群+應用+拓展+原理+原始碼齊飛

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more