java程序员面试中容易被问哪些问题?
多线程,***,jvm调优,gc ,spring 套餐,dubbo,主流框架。还有数据结构。设计模式。
小面是我面试的经历。
【【冷酷到底】面试深受打击,感觉迷茫了。一个程序员的自白】***s://m.zjurl.cn/item/652***54521017516552/?iid=26166306190&***=news_article×tamp=1521475420&tt_from=copy_link&utm_source=copy_link&utm_medium=toutiao_ios&utm_campaign=client_share
由于我每年都会面试不少程序员,其中就包括相当数量的J***a程序员,所以就这个问题,跟头条的广大网友交流一下。
J***a工程师面试也是有一定的侧重点,做不同的研发方向,问题上也有所区别。另外,初级程序员与主力程序员的面试问题也有很大的不同,总的来说就是方向与定位相结合,下面为大家一一描述。
面试J***a初级程序员的流程相对来说比较简单,通常是两轮面试,首轮面试一般进行技术面试,次轮面试通常是有HR统一安排关于职业规划以及心理方面的面试(大部分情况是走个流程),这两轮面试中,技术面试起到了关键的作用。
面试初级程序员(2-3级)一般从技术细节入手,要通过面试,首先要知道初级程序员都需要具备哪些能力。下面先描述一下作为一个J***a初级程序员(2-3级,Web方向为主)应该满足哪些要求:
清晰J***a面向对象编程步骤,理解封装、继承、多态等核心概念,理解基本的前端内容(HTML、CSS、J***aScript)。
能理解程序流程图描述的功能需求,能独立完成功能模块的编写、部署,能理解功能模块之间的交互关系,能完成功能模块之间的消息传递和处理。
能理解MVC、DAO等框架,并在实际开发中熟练使用,能独立完成前后台的数据处理,能完成各种认证功能的处理。
能使用数据库连接池等基本优化方式提高程序运行效率。
能理解容器在程序运行中的作用,能配置各种容器的基本参数。
对程序的安全性有一定的理解,能避免初级的安全性问题。
谢邀~
从第二家单位开始,就负责社招的面试工作(技术方面),近两两年,也开始负责校招的工作,和大家分享一下我一般会问的问题,和一些我比较看重的地方,大家可以借鉴。
其实说实话,我们单位校招没有什么优势,一般来面试我们公司开发岗位的,最好也就是中等偏上的985学校(最低要求是一本)。所以一般来说,只要不是沟通能力特别差的,基本都会通过。但是面试流程还是要走的,我一般问的都特别简单:
我主要是面试乙方(外包),初级基本上要两年以上工作经验;基本上简历上写什么,我就问什么,所以我建议,如果你不会的东西,不要随便写在简历上。
先做自我介绍,主要看一下表达能力和第一印象,所以我建议大家面试之前都准备一套自我介绍的词儿。
基本上还是从项目出发,先问一下业务上的流程,这个阶段的开发,我对整个项目的流程问的少,还是主要问单个模块的业务流程。
技术方面主要以使用为主,就是看看你是否到底使用过。比如写了使用过Mybatis,那么我可能会问#和$的区别,如果写了使用过Spring的话,那么我可能会问依赖注入有几种方式,诸如此类。
SQL方面会问一些复杂SQL的写法,比如一些数据库函数,左连接右连接之类的。
工作三到五年的。
j***a基础,反射,多线程,static的作用,***,数据库等基础知识,还有就是数据库,前端,j***a web(servlet,xml),ajax是面试的时候问的比较多的,以及一些主流框架的使用。还有做过的项目,以及在项目中遇到哪些比较难解决的问题,最后是怎么解决的。
学习j***a是在“如鹏网”上学习的,有详细的课程体系,有网络的地方就可以学习,每个章节的后面都有相应的练习题和面试口才题,需要以录音的方式进行提交,实时把控学习质量,为面试做准备。j***a重要知识点列举。
在准备面试之前,简历是很必要的,怎么写简历,投简历,才能吸引面试官的眼球,简历上哪些内容可以写,哪些内容是不能写的。
在面试的过程中,应该注意哪些问题,对于面试官提出来的问题,应该怎么去回答。
看过“如鹏网”的免费公开课《程序员找工作的六大环节揭秘》,从写简历,投简历,面试,签协议等方面进行讲解,分析的挺透彻的,可以去看看。
作为从事j***a开发6年的程序猿,参于的面试有七八十场吧,程序猿面试问题是根据企业的招聘需求而定的,三年和五年的程序员遇到的问题是有区别的,所以不能一概而论。
五年开发经验的程序员问道的问题会更趋向于原理方面,当然三年经验的问题依然会问道,但是侧重点不一样了
ConcurrentHashMap的实现原理
j***a并发中的最佳实践有哪些
volatile关键字的用途
是否用过消息队列
是否用过zookeeper和dubbo
zookeeper的选举机制说一下
怎样从容面对社招的J***a面试?
俗话说法好,机会是留给有准备的人的,那么应该从哪几个方面去准备尼?
1、了解公司
这个是最基本的,知己知彼,才能百战不殆,知道公司是干嘛的?
比如软件外包的、非软件外包的,外企的子公司、非外企公司,公司主要的业务方向,合作伙伴,有哪些牛叉的技术等等
看似没什么用,但了解这些,不仅可以和HR聊开话题,说你不定HR就来一句:你对公司了解多少?
2、技术储备
当然了,面试j***a,技术还是最重要的,但你在一个公司工作一段时间后,可能对于一些基础知识会到了:只可意会不可言传的地步吧,哈哈
所以,好需要根据公司的招聘简章,去提前几天多去温习下基础知识和以前自己学习的一些很牛叉的东东
3、简历
简历这个玩意,就是敲门砖啊,有好多人都会死在这个梗上面(PS:咋写简历也是各种百度后,然后才会不***思索的一本正经的胡思乱想的开始了),所以,自己不知道怎么写一个好简历,还是多看看别人的好简历吧
4、准备可能会高几率问到的问题
这个也是为了防范于未然哦,提问者应该属于跳槽把,那么其中最重要的一个问题,那就是:为啥要跳尼?我觉得应该是个HR都会问的吧,还比如:你以前多少薪资?来我们公司对薪资有啥要求?
那么,做好以上4点,可以说对你的面试成功几率会提升不少,机会是留给有准备的人都,提前预祝你能旗开得胜哦~
我是"小天使",很高兴能为你提供帮助,感兴趣的童鞋可以点一波关注哦~
程序开发岗位一般人员流动比较快,除了不断提升专业技术,不断总结面试技巧对个人薪酬提升和发展有很大帮助。
作为一个七年开发经验的开发者,这里谈下个人心得供参考。
1. 简历:总的一条原则强调凸显重点,简历筛选一般都是快速阅读的过程,在排版和布局上尽量凸显想让面试者注意的内容,这样才能增加重重简历中脱颖而出的概率。
2. 熟悉J***a基础面试题,一般面试怎么都有一套笔试题目,一般要写满写对,虽然不一定能加分,基础都答不全肯定是减分的。
3. 薪酬:提前了解相关薪酬,如果有可能甚至可以打听到该公司对应岗位的薪资情况,增加匹配的概率,另外既不要过于高估也不要过于看低自己的价值。
4. 经济: 找工作前最好有点积蓄,以免急于找到工作而降低自己的期望薪资,会造成频繁跳槽和选择公司出现不匹配的情况。
5. 内推或猎头: 实在难得找可以通过朋友内推或者猎头[_a***_],既不会在谈薪资时候吃亏也省去筛选公司的麻烦。
6. 不一定有一定能进的公司,每家公司都有能进的概率,多面试几家总能达到自己的目标。
(完)
j***a面试必问题你在项目中碰到过什么问题?
『如果让你来做HashMap扩容,如何实现在不影响读写的情况下扩容?』我觉得***高,不是体现在问题多刁钻,知识点多深,而是一个非常明确,无歧义的问题,能考察出面试者多方面的能力。这个问题背后:
1.了解j***a中,HashMap的实现;如果一个面试者了解这一点,说明至少他关心过j***a提供的数据类型的实现,甚至极可能看过源码,他应该不会是一个纯粹的苦力。
2.知道『不影响读写的情况下扩容』是什么含义,说明他在工作中了解多线程的相关知识。
3.如果他能提到ConcurrentHashMap中的相关内容,说明他日常编程中有使用到concurrent包,可以继续聊聊,否则他对多线程的使用可能非常初级。
4.如果他能提出一些解决方案,即使不完整,也能看出他对类似cas等算法、分布式一致性等问题的了解程度。这问题是面试官问我的···