阿里巴巴和美团日益壮大,成为互联网领域内人人皆想进去镀一层金、学一点本事的造金炉,每日简历的数量就接到手软。不用说,学java开发的程序员也有很多人想进阿里,那么只看招聘简章、符合简章上的要求真的就可以了吗?还是来看看有经验的老司机们怎么说,对比看看你需要为自己的职业生涯学会哪些技能。

程序员林子云说:

正好自己是Java方向,今年3月份通过了阿里的实习招聘,暑假实习后目前转正通过,来答一发。

俗话说,大公司看基础。

阿里校招研发工程师岗位考察的基础可以大致总结如下:

1,操作系统。尤其是内存/线程/进程方面

3,数据结构与算法。我本人也没搞过acm,,目测考察得算法不是ACM那种级别。这一块儿系统学习后,后面再多刷刷大公司的笔试题就ok了。

4,数据库,这一部分倒没怎么问我。不过资料显示数据库通常考察以下几点 1) mysql存储引擎中索引的实现机制;2)数据库事务的几种粒度;3).行锁,表锁;乐观锁,悲观锁。

5,设计模式,熟悉常用的几种设计模式就行。

6,Java语言基础。熟悉java语言基础,了解JVM、内存模型,重点考察面向对象、集合框架(继承关系,实现原理)、异常体系、IO体系、并发集合、多线程。熟悉多线程编程/并发/线程安全明显可以加分。

7,J2EE,熟悉Spring/Spring MVC , ORM什么的吧。看过源码,了解原理之类的也明显可以加分。

8,Linux,熟悉基本的linux命令就行吧 - -

9,自己做的项目。

10,其他发散性的问题。拼人品了。

不要想得太难了。但是能做到以上几点的,也是很少数应届生。

你这些书看完和吸收的话,不是阿里星就是p8了吧。。

下面这位网友的总结非常细致且良心,你可以收藏起来但一定记着要看,如果你有认真看完,并选择适合自己的去做,你一定会有所收益!

知乎匿名网友说:

近几个月以来都是在找工作,真心觉得这个过程对我来说很不容易,踩了不少坑,感受也很多。

其实我自己水平并不高,可能书看得太多而项目做得相对较少的缘故吧....关于这方面自己也在努力和反思当中。

秋招Java后台的学习与面试经验

在经历了这么多场面试后,我觉得有以下经验是可以分享的:

Java后台开发方向的同学千万千万不要把眼光仅仅局限于三层架构和后台框架,而要把目光转向/分布式系统/大数据处理/多线程编程/数据库性能调优/编译原理等知识,尤其是分布式系统,非常重要,尽管确实有点难以在项目中使用,但了解总比没了解好(因为面试可能会问啊,说多都是眼泪,真的)前沿技术那么多,赶得上时髦才是硬道理。

实际上学习后台开发未必要从Java开始,使用python或者NodeJs感觉入门更快一些(脚本语言拘束较少), Java入门web开发相对而言很重量级...但是自从有了spring boot后其实感觉没差,或者学后台开发从spring boot开始也是可以的,未必从坑死无数人的SSH(Struts2, Spring, Hibernate)下手。

后悔9月初懒得刷笔试题,其实刷笔试题是能对掌握计算机基础知识有很大的帮助.勿走前车之鉴,我9月份投的所有企业只有网易是过了笔试的。

在线编程题请锁定leetcode或者lintcode(lintcode有时候需要翻墙,不过好处是题目是中文版)。

对简历上的每一个字负责,而且最好简洁明朗,拒绝啰嗦,让面试官的所有问题都针对你的简历进行提问,否则他要是用多年的工作经验碾压你就是分分钟的事了。

确实要看很多很多书,但是当你懂得了看书的技巧后,其实阅读的速度确实会越来越快的。

"所有你在书上看到的东西,都是基础."(出自某面试官)做项目才是吸收知识的最好途径...作为工科类的学生,面试官更注重的是你做出了什么,而不仅是你知道什么。

对于程序员而言简历上的项目经验是非常重要的,几乎所有面试官都会拿项目经验开始问你问题.对于你简历的所有项目经验,它们用到了哪些后台框架,不仅要知其然,还要知其所以然.不要偷懒,源码得读起来,一问三不知的时候就真的醉了.这方面推荐多看博客多看课外书籍。

不要因为懂得越多就越是持有谦卑的态度,在面试官面前,就是表现自己最好的一面,做最好的自己,就是干.坚持就是胜利,尽管它来之不易。

下面列举一些我觉得对我来说非常有用的书单和网站,还有推荐使用的工具,仅供参考,希望能帮助到跟我一样找工作的兄弟姐妹们,还有尚未定位自己的师弟师妹.以下所有书籍(网站)建议阅读, 不一定要读完,但关键和核心得抓住。

一、Java基础

个人认为Java入门最好的书籍,虽然真的很厚,不过里面重复的话会写很多遍(每天坚持看一点,一次性读完,印象也会很深刻的)...对于这本书而言, 除了图形界面编程以外,其他内容最好认真读完并实践一遍,会对理解Java Web有不少的帮助。

建议有一定项目经验的人才去看这本书,里面列举了很多开发必须注意的条目.说实话这本书真的不那么好看,但是你会发现在某些笔试题上会出现这本书的很多条目。

学习Java怎么能不知道有这么个牛逼轰轰的IDE!可以说彻底提升了我的开发效率,简直相见恨晚。

为什么我把Maven放在这里?因为它蛮重要的(其实用gradle也可以).一个解决java web项目开发中所需要的依赖问题。

还在用xml配置各种依赖注入/数据源/事务管理器? out啦!随着微应用的流行,以注解替代xml配置的开发方式将越来越流行.作者没有讲太多废话,内容基本都是说Spring Boot的某个特性然后举个例子实战,有利用SSH开发过简单项目的同学可以尝尝先(我去实习的岗位早就开始用了,觉得蛮新颖的)实际上学习任何一个框架的时候要先了解这个框架解决了什么问题,只有理解了这个后才能更有针对性也更有效率地去进行学习。

隆重推荐这本神书,很有趣.刚开始读觉得很深,但是和《轻量级Java EE企业应用实战》一起看,思考那些设计模式存在的意义,会对软件架构方面的知识豁然开朗...

又是个歪果仁写的书,里面详细介绍了Java并发工具包java.util.concurrent的各种工具以及很多的并发编程实践之道,是并发编程的入门之作。

国人写的书,也是写Java并发编程的,与上一本相比个人认为比较凝练/干净/易懂。

二、Java进阶

作者叫黄勇,一本非常让我拍手叫绝的书....首推!绝对干货!如果你不想看spring源码也没有太大关系,这本书带你一步步地开发出一个类似spring mvc的简单框架,并且逐步地增加需求和完善,理解了每个细节对于理解Java Web的开发是很有帮助的。

这本书我觉得是必看的,可以说是对我帮助最大的一本技术书籍,覆盖了Java Web很多方面的知识,比如计算机网络|Tomcat结构|Spring架构|SpringMVC原理|模板引擎实现原理等,绝对很有收货,足够有深度也很有难度。

一本比较详细的书,其实对于阅读源代码,跟着作者的思路读,再结合自己的断点调试进行学习的方式是最好的。

想知道Java虚拟机为什么会帮你自动收集垃圾而不需要你管理资源释放吗?想知道Java虚拟机的内存区域是如何划分的吗?想知道Java虚拟机是如何唯一确定一个Java实现类,并且如何加载类的吗?想知道JVM凭什么能够将远程服务器发送的网络字节加载到JVM内存,从而实现远程过程调用的吗?这本书你值得拥有!(感谢这本书让我回答出RPC的实现原理)

500行代码!尽管跟Java没有太大关系,强烈推荐,里面的程序主要是一些玩具轮子,都是用python实现的,学习这个主要是理解别的程序员在开发软件的时候所做的决策/思路/取舍,虽然我也没看完,但是觉得这个资源很赞!!!

其实讲道理这种书应该给DBA看才对,不知道为什么Java Web开发也要看- -有次面试就问到说对mysql数据库的性能调优有什么看法,所以就列在上面.不过说真的有点晦涩难懂,如果想简单粗暴地应付面试的话就看这个博客,这篇博客应该是我目前看到的对于mysql索引的解释最最通俗易懂的了。

三、分布式系统

李智慧著,确实是很好的入门书籍.实际上如果有操作系统和Web项目后台开发的基础话阅读起来不会特别困难,主要内容是介绍当今企业应对大型网站高并发请求的种种策略。

这本书比较深,介绍分布式Java应用和相应的应用场景,什么远程过程调用(RPC)呀,基于服务的体系架构呀(SOA)等,同时也讲了很多java比较底层的知识,最后介绍构建高可用/可伸缩系统的工程经验。

与上一本书类似,不过个人觉得更偏向于"介绍"互联网安全架构和分布式系统的各种组件(比如分布式缓存|消息队列|搜索引擎等),目前我只接触了Redis,相应的组件实在太多了- -此外对系统监控和数据分析等也做了相应介绍,这些我感觉比较偏向运维岗的工作人员。

Redis的基本用法和在生产环境的应用,值得拥有,虽然书籍是用python,不过官方github也有放java的源码。

Redis的源码解读,怎么说呢,反正比spring源码好读太多了....而且作者读得很用心,整理出了带注释版本的redis源码,去读个痛快吧少年。

四、博客与网站

这里再着重推荐两个大神的博客,都是歪果仁

Jenkov:丹麦资深Java开发人员,从事软件开发十多年,如果你觉得李刚的教材看腻了,可以看看他写的教程,非常适合初学者,发现知乎很多Java程序员都是在这里学并发编程的

Baeldung:这系列教程是我觉得讲spring的用法讲得最好最全的..尤其是讲spring security讲得真的很详细...

此外还有一些常用的学习网站:

掘金:一个致力于为广大程序员推送文章的app(PC端也能看),干货不少。

coursera:这个不多解释了,如果想跟国际接轨(英语授课)的话这个网站很适合你,里面有很多全世界优质的课程,知乎上也有总结得很详细的课程列表,适用于任何人。

Quora:知乎的鼻祖,但是抖机灵的人比较少,外国牛人也是很多的,上了才知道。

这里有很多基础课程视频,而且都是免费的,非常适合小白和想转行的人找来看看,学些基础培养兴趣,之后想进一步深入还会有一些高质量的付费课程,视频图文并茂,非常生动好理解。

且学且珍惜,程序员是一个需要不断学习的岗位,一日不读书面目可憎,一日不写代码手爪痒痒。

11月达内Java免费试听课火热报名中,一线名师,高薪技术,入门技巧,面试诀窍,一站式打包学会 ,让你学会最有前途的技术,顺利通过面试,成功获取高薪!马上阅读原文或者回复姓名+电话+城市报名吧!