【最新】百度,阿里,腾讯等互联网公司,JAVA开发的招聘标准

百家 作者:程序员之家 2018-12-05 01:29:57


金九银十的跳槽热潮即将过去,在这两个月的跳槽季中,作为互联网行业的三大巨头,百度、阿里巴巴、腾讯对于互联网人才有很大的吸引力,他们的员工也是众多互联网同行觊觎的资深工程师、管理者人选。

下面我总结了进入这三家公司你所需掌握的技能:

百度篇

  • 熟悉常见设计模式,掌握java流行的开源框架SpringMVC/Spring Boot/Spring Cloud,熟练使用至少一种 ORM 框架

  • 熟练掌握基本的数据结构和算法,有系统分析和设计的实践经验

  • 熟悉Rest,HTTP,Socket、webservice、HTTP协议,具备并发、多线程的编程经验

  • 对Mysql、Redis、MongoDB 等数据库有研究或者项目经验

  • 具有大型互联网服务设计及开发经验

  • 熟悉JVM,对JVM有一定理解,并能借助相关工具进行JVM性能调优

  • 熟悉常见的开源分布式中间件、缓存、消息队列等,熟悉nginx,MySQL,Redis,mongodb 等常用的开源软件

  • 熟悉 MySQL 数据库设计和优化,有 NoSQL 数据库使用经验

  • 具有大数据存储或者高性能计算平台架构、设计及开发等方面经历

  • 具有大型互联网服务设计及开发经验

腾讯篇

  • 精通Web后台开发语言至少一种(PHP、Java、.Net、C++),有一定的架构能力和良好代码规范

  • 熟悉linux/unix系统与开发环境

  • 熟悉TCP/IP协议,socket编程

  • 熟悉mysql以及SQL语言

  • 有高性能大容量服务系统设计开发经验

  • 精通面向对象设计,精通J2EE开发,java web开发

  • 全面并且扎实的软件知识结构(操作系统、软件工程、设计模式、数据结构、数据库系统、网络安全);

  • 具备良好的分析解决问题能力,能独立承担任务和有系统进度把控能力

  • 精通MySQL或Mongo DB,熟悉缓存技术memcached、redis

  • 有大型分布式、高并发、高负载、高可用系统设计、开发和调优经验

  • B/S结构系统分析及设计经验,有构建可伸缩、可扩展、高可用系统经验

  • 有良好的开发习惯,熟悉Maven, Jenkins, JUnit等工具

  • 精通MVC/REST架构、模板引擎、中间件的原理与应用

  • 熟悉MySQL数据库,了解MySQL索引优化、查询优化和存储优化

阿里篇

  • 扎实的计算机专业基础,包括算法和数据结构,操作系统,计算机网络,计算机体系结构,数据库等

  • 具有扎实的Java编程基础,理解IO、多线程等基础框架

  • 熟练使用Linux系统的常用命令及shell有一定了解

  • 精通多线程编程,熟悉分布式,缓存,消息队列等机制;熟悉JVM,包括内存模型、类加载机制以及性能优化

  • 精通spring mvc、orm框架(ibatis或hibernate)、模板引擎(velocity)、关系型数据库设计及SQL

  • 具备良好的面向对象编程经验,深入理解OO、AOP思想,具有很强的分析设计能力,熟悉常用设计模式

  • 有大型分布式、高并发、高负载、高可用性系统设计和稳定性经验

  • 熟悉面向对象设计开发,熟悉各种常用设计模式,并有在具体的应用场景落地经验

  • 熟悉Spring、iBatis,等开源框架及消息,存储等常用中间件。 有通读过开源框架源码

  • 熟悉基于Oracle或者Mysql的设计和开发、Linux操作系统

  • 熟悉SOA,有平台化实施经验者,有大数据量、高并发系统和大型网站构建经验

  • 分布式系统应用架构设计与研发经验,精通Java EE、SOA、OSGI等相关技术

  • 对各种开源的框架如Spring、Hibernate等有深入的了解,对框架本身有过开发或重构者可优先考虑

  • 具有大型电子商务网站、O2O行业、C端产品系统架构设计经验

进阶篇

针对以上各大互联网公司的需求,小编在这里也给大家总结出来一个系统的进阶路线图,主要针对3-5年及以上工作经验的Java开发人员,从广度到深度来说还算比较全面的。

这份路线图里面的技术包涵了Java高并发、分布式、微服务、源码分析、高性能等技术,这些也是目前互联网企业比较常用的技术,那么来详细看看。(图片可以保存)


一:源码分析

学习Java技术体系,设计模式,流行的框架与组件

  • 常见的设计模式,编码必备

  • Spring5,做应用必不可少的最新框架

  • MyBatis,玩数据库必不可少的组件


二:分布式架构

高并发,高可用,海量数据,没有分布式的架构知识肯定是玩不转的:

  • 分布式架构原理

  • 分布式架构策略

  • 分布式中间件

  • 分布式架构实战


三:工程化与工具

工欲善其事必先利其器,不管是小白,还是资深开发,玩Java技术体系,选择好的工具,提升开发效率和团队协作效率,是必不可少的:

  • Maven,项目管理

  • Jenkins,持续集成

  • Sonar,代码质量管理

  • Git,版本管理


四:微服务架构

业务越来越复杂,服务分层,微服务架构是架构升级的必由之路,Java技术体系,和微服务相关的技术有哪些呢?

  • 微服务框架

  • Spring Cloud

  • Docker与虚拟化

  • 微服务架构


五:性能优化

任何脱离细节的ppt架构师都是耍流氓,向上能运筹帷幄,向下能解决一线性能问题,Java技术体系,需要了解:

  • 性能指标体系

  • JVM调优

  • Web调优

  • DB调优



如何一起学习,有没有免费资料?

以上是自己收集总结的Java架构技术图谱,自己因为比较喜欢技术,所以收集了一些Java高并发、分布式、JVM、spring、源码分析和kafka等架构技术资料,如果你也对技术感兴趣可以来我的Java后端社群(786347381),可以到群里来下载这些资料,欢迎大家进群讨论与学习。


扫描下方二维码,免费领取资料

长按扫码加群:786347381,免费领取资料


另外为了帮大家摆脱职业困境,走上升职加薪的道路。

给大家推荐一个我朋友的Java架构技术公众号,里面会分享分布式、微服务、高并发、JVM,以及大数据,区块链等技术,会不定时分享IT类最新资讯,也会不定期举行送书活动。

成就梦想不是梦,还是要看你关注不关注!

技术在手,offer我有

↙点击“阅读原文”查看更多精彩内容

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接