實力包含哪些方面php
(我也只是腦子裏過了一遍,確定有遺漏的,你們本身補全就好了,畢竟每一個人的知識覆蓋範圍也不一樣)python
基礎知識:mysql
算法和數據結構linux
數組、鏈表、二叉樹、隊列、棧的各類操做(性能,場景)git
二分查找和各類變種的二分查找golang
各種排序算法以及複雜度分析(快排、歸併、堆)面試
各種算法題(手寫)redis
理解並能夠分析時間和空間複雜度。算法
動態規劃(筆試回回有。。)、貪心。spring
紅黑樹、AVL樹、Hash樹、Tire樹、B樹、B+樹。
圖算法(比較少,也就兩個最短路徑算法理解吧)
計算機網絡
OSI7層模型(TCP4層)
每層的協議
url到頁面的過程
HTTP
http/https 1.0、1.一、2.0
get/post 以及冪等性
http 協議頭相關
網絡攻擊(CSRF、XSS)
TCP/IP
三次握手、四次揮手
擁塞控制(過程、閾值)
流量控制與滑動窗口
TCP與UDP比較
子網劃分(通常只有筆試有)
DDos攻擊
(B)IO/NIO/AIO
三者原理,各個語言是怎麼實現的
Netty
Linux內核select poll epoll
數據庫(最多的仍是mysql,Nosql有redis)
索引(包括分類及優化方式,失效條件,底層結構)
sql語法(join,union,子查詢,having,group by)
引擎對比(InnoDB,MyISAM)
數據庫的鎖(行鎖,表鎖,頁級鎖,意向鎖,讀鎖,寫鎖,悲觀鎖,樂觀鎖,以及加鎖的select sql方式)
隔離級別,依次解決的問題(髒讀、不可重複讀、幻讀)
事務的ACID
B樹、B+樹
優化(explain,慢查詢,show profile)
數據庫的範式。
分庫分表,主從複製,讀寫分離。
Nosql相關(redis和memcached區別之類的,若是你熟悉redis,redis還有一堆要問的)
操做系統:
進程通訊IPC(幾種方式),與線程區別
OS的幾種策略(頁面置換,進程調度等,每一個裏面有幾種算法)
互斥與死鎖相關的
linux經常使用命令(問的時候都會給具體某一個場景)
Linux內核相關(select、poll、epoll)
編程語言(這裏只說Java):
把我以後的面通過一遍,Java感受覆蓋的就差很少了,不過下面仍是分個類。
Java基礎(面向對象、四個特性、重載重寫、static和final等等不少東西)
集合(HashMap、ConcurrentHashMap、各類List,最好結合源碼看)
併發和多線程(線程池、SYNC和Lock鎖機制、線程通訊、volatile、ThreadLocal、CyclicBarrier、Atom包、CountDownLatch、AQS、CAS原理等等)
JVM(內存模型、GC垃圾回收,包括分代,GC算法,收集器、類加載和雙親委派、JVM調優,內存泄漏和內存溢出)
IO/NIO相關
反射和代理、異常、Java8相關、序列化
設計模式(經常使用的,jdk中有的)
Web相關(servlet、cookie/session、Spring<AOP、IOC、MVC、事務、動態代理>、Mybatis、Tomcat、Hibernate等)
看jdk源碼
項目經歷
這個每一個人的項目不一樣,覆蓋的技術也不同,因此不能統一去說。
這裏的技巧呢,在下面也會詳細說明。
無非是找到本身項目中的亮點,簡歷上敘述的簡練而且吸引眼球,同時本身要很熟悉這個點(畢竟能夠提早準備)
最好本身多練,就像有個劇本或者稿子同樣,保證面試中能夠很熟練通俗地講出,而且讓人聽着很舒服。
實習經歷
這個很抱歉,由於我是找實習的經歷,因此也沒有實習經歷的講述經驗。
但我想若是你有實習經歷,那面試過程的重點也會在實習作了什麼上面,因此你們最好對實習所作的工做作一個總結,而且一樣抓出亮點,搞懂內部原理,提早鍛鍊講述的過程。
其餘擴展技能(這個方方面面太多了,所有掌握基本上不可能,只是做爲你們其餘時間擴充技能的參考)
分佈式架構:(瞭解原理就行,若是真的有實踐經驗更好)
CAP原理和BASE理論。
Nosql與KV存儲(redis,hbase,mongodb,memcached等)
服務化理論(包括服務發現、治理等,zookeeper、etcd、springcloud微服務、)
負載均衡(原理、cdn、一致性hash)
RPC框架(包括總體的一些框架理論,通訊的netty,序列化協議thrift,protobuff等)
消息隊列(原理、kafka,activeMQ,rocketMQ)
分佈式存儲系統(GFS、HDFS、fastDFS)、存儲模型(skipList、LSM等)
分佈式事務、分佈式鎖等
腳本語言:(只是做爲橫向擴充,通常問到linux也會問問shell腳本)腳本語言和編譯語言的區別
python
php
shell
golang
...
大數據與數據分析:
hadoop生態圈(hive、hbase、hdfs、zookeeper、storm、kafka)
spark體系
語言:python、R、scala
搜索引擎與技術
機器學習算法:
模型和算法不少。不細說了,若是很熟練就去投算法,國內不少公司都算法崗都很稀缺,其餘崗能夠大概瞭解下理論。
其餘工具的理論和使用:
這個更多了,問的多的好比git、docker、maven/gradle、Jenkins等等,本身須要的話選擇性地去學。