2023年6月20日发(作者:)

两年Java程序员⾯试经验分享,从简历制作到⾯试总结!前⾔⼯作两年左右,实习⼀年左右,正式⼯作⼀年左右,其实挺尴尬的,⾼不成低不就。因此在⾯试许多公司,找到了⽬前最适合⾃⼰的公司之后。于是做⼀个关于⾯试的总结。希望能够给那些依旧在找⼯作的同学提供帮助。⾯试其实关于⾯试总结这块,我也看过不少⽂章,但是⼤部分都是关于⾯试题以及⾯试中的问题所谈。但是对于⼀个不擅长找⼯作的同学来说,其实在简历制作这⼀块很重要。因为简历没写好的话,连⾯试邀请都没,何谈⾯试呢。所以我准备谈谈我对简历制作这块的⼀些见解。如有不妥,欢迎指出!简历制作在写简历这⽅⾯,需要下⼀定的功夫。毕竟简历就是你给别⼈的第⼀印象,⽽印象则决定你的⾯试机会。简历突出的就是⼀个简字,简历的制作不要过多,也不要过少。2-3页最好。简历的三个重要点就是,我是谁、我要做什么、我能做什么。第⼀点,个⼈的基本信息。除了个⼈姓名、籍贯、现住地址等外,还需加上毕业学校、所学专业、⼯作时间等。重要的信息填上,⽆关的信息则少写或不写。例如⾝⾼、体重之类的。第⼆点,求职意向。这点很重要,可以的话,排版放在个⼈信息下⾯。求职意向主要就是期望⼯作的岗位、⼯作的地址以及薪资。⼯作岗位建议后⾯加个相关⼯作,可以少许提升⾯试机会。例如,java⼯程师及相关⼯作。薪资这块则建议填写⾯议,过⾼或着过低只会降低⾯试机会。第三点,也就是HR最重视的⼀点,技术能⼒这块。就写做掌握的技术以及相关熟练度,最好多⽤点技术关键字,毕竟不少的HR是按照关键字来搜索的。例如 JAVA、SQL、linux等。这点排版也建议放在求职意向下⾯。剩下的就是⼯作经历以及项⽬经验了。⼯作经历这块就不细说了。重要的是项⽬经验。项⽬描述这块,个⼈建议,第⼀点,你要告诉别⼈,你的这个项⽬是做什么,为什么⼈群服务,怎么使⽤。不要过多的说明⽤了什么技术,⽤这些技术怎么开发项⽬。这点⼤致提下就可,毕竟篇幅有限,使⽤技术这块和⾯试官相谈即可。第⼆点,项⽬负责开发的模块以及技术,这点需要让别⼈知道你在这个项⽬做了什么,⽤到了那些技术。第三点,项⽬业绩,这点看个⼈,如果不知道怎么写,可以写个⼈在项⽬学到了什么,或者碰到了那些问题,是如何解决的。⾄于⾃我评价、获奖之类的,可以留在最后书写,写⾃⼰的真实情况,最好不要使⽤招聘⽹上的那种模版。简历投递投递简历这块这块看个⼈⽽定,智联、51、BOSS直聘、拉钩、猎聘这些还⾏,尤其是后三个,专门为IT⾏业服务的。可以多试试。如果有内推的话更好。现在微信招聘之类的也不错,还有⼀些社区招聘之类的也可以多看看。注意:如果⾯试收费之类的,这种就不⽤考虑了。在投简历的时候可以去看准⽹查查该公司的相关情况。⾯试准备在准备好简历之后,应该做些相关⾯试准备。⾸先,是笔试题,这点是初级程序员绕不过去的坎。笔试题⼀般的公司都会出的,除⾮你是⼤⽜,可以选择不做。所以,还是⽼⽼实实的准备吧。⾸先,基础相关⾯试题要做好。⼀些⽐较常见出现的问题,顺便列举下。JAVA1. 5个常⽤的java-api包。2. String类中常⽤的5个⽅法。3. API接⼝开发的注意事项。4. TCP/IP、HTTP协议。集合相关的问题(重点)1. HashMap、TreeMap、Hashtable、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的实现和区别之类的。2. 上述集合中的那些是线程安全的,那些不是。3. 在那些场景使⽤这些集合。4. List、Map、Set三个接⼝,存取元素时,各有什么特点。线程相关问题(重点)1. 创建线程的⼏种⽅式。2. 线程同步的⽅法。3. wait和sleep区别。4. Runnable接⼝和Callable接⼝的区别。5. 如何实现线程安全。框架相关知识(这块反⽽不多)1. Mybatis#和$的区别.2. Hibernate和Mybatis的区别。3. Spring MVC和Struts2的区别.4. Hibernate的缓存机制。5. 什么是Hibernate延迟加载.6. 为什么要⽤spring。SQL(主要考察Group by和Order by相关知识)1. 查询每个班级成绩最⾼的学⽣。2. 查找出每个班级成绩第⼆的学⽣。3. 按照班级查询每个班上总分前三的学⽣。4. 查找⼊职员⼯时间排名倒数第三的员⼯所有信息。5. 薪⽔排序后薪⽔排名在第2--8的员⼯。6. 按⼯资进⾏排名,排名从1开始,⼯资相同排名相同(如果两⼈并列第⼀则没有第⼆名,从第三名继续排)。7. ⽤⼀条sql语句取出所有姓名有重复的学员姓名和重复的记录数。JavaScript/JSP/Servet (这些⼀般是基础题)1. JSP的内置对象以及作⽤。2. JSTL的常⽤标签。3. Servlet的⽣命周期。4. URL和URI的区别。5. Ajax同步和异步的区别。6. 使⽤ajax发送异步请求的流程。其它1. &和&&的区别。2. ==和equals的区别。3. int和Integer的⾃动拆箱/装箱相关问题。4. IO和NIO的区别。5. final、finally、finalize的区别。6. 重载(Overload)和重写(Override)的区别。7. String、StringBuffer和StringBuilder的区别。8. 如何实现浅克隆和深克隆。9. 单例模式的实现以及最优。10. 排序的实现(冒泡、选择、快速等)。1. 去除重复的元素(实际是重写equals和hashcode)。⾯试流程现在有不少公司先是⼈事⾯试,然后技术⾯试。所以在⼈事这块谈论⼯资的时候,最好不要说死,或者先不谈,留着技术⾯试过了之后再谈。有点因为在⼯资待遇这块没谈好,就直接⾛⼈了。毕竟⾯试双⽅都要花费不少时间,所以这块需注意!在相谈的时候,要注意礼貌,⽆论是否成功,都应该注意⾔⾏和态度。⼀般技术⾯试这块会先让做个⾃我介绍,这块应该充⼤学开始讲,不应过多,重点放在⼯作上和项⽬上。⼤学这块就简单介绍毕业学校、毕业时间以及所学专业。如果有关于IT之类的获奖,可以提⼀下,但不易多说。项⽬这块,可能会提问为什么这么做,如果让你来重新设计,你回如何设计。在这个项⽬中的困难点是如何攻克的,在这个项⽬中学习到了那些等等。在项⽬讲述这块,最好找⾯试官所感兴趣的项⽬,⼀般就是做过的项⽬和所招聘岗位较为符合的。在⾯试结束之后,理应说声感谢!毕竟⾯试其实也是成长的⼀种。⼀般来说,技术⾯试过了的话,基本也就过了。剩下的就看待遇相谈这块了。在待遇这块最好遵循⾃⼰的想法,不要因为当初没谈好,后来⼯作时⼼中不满,产⽣的⼀系列问题。⾯试技巧个⼈能⼒这⽅⾯⽆⾮两个⽅⾯,⼴度和深度。技巧很简单,就是说⾃⼰擅长的。技术掌握⼴,但是不深,就可以将⾃⼰的技术⼴度多说点,顺便可以提下⾃⼰的优点 例如:学习新技术很快;技术掌握深,但是不⼴,就可以将掌握的深度多说点,可以提下⾃⼰在学习这块的专研度。如果在这两点都没有太明显的优点的,可以尝试从项⽬业务说,最好将项⽬吃透。与⾯试官相谈的切记要诚实,不要弄虚作假。碰到不会的或者了解不深的,直接跳过,最好将⾯试官引导到⾃⼰擅长的领域。⾯试总结⾯试完之后,最好进⾏总结。毕竟每⼀次⾯试都是⼀次收获。如果将⾯试中所遇到的问题以及感悟能记下来,那就再好不过了。在找⼯作的时候,除了做些相关⾯试和准备熟悉以前做的项⽬之外,还应该学习新的知识。毕竟,每多学⼀点,成功找到⼯作的机会就⼤⼀点。⽽且,IT这⾏,技术发展过于快速,如果没有学习新知识的动⼒,终究会被淘汰。因为学习实在是很枯燥⽆味。学习是⼀个长期投资,短期很难道看到收益,⽽娱乐是⼀项短期投资,短时间便可以看到收益。所以学习这块最好可以给⾃⼰定⼀个⽬标,每天学习⼀点,慢慢的会达到的。如果没有动⼒的话,可以给⾃⼰设置奖励。这是可以激发学习的兴趣的。还有⼀点,今天能坐完的事情,绝对不要留给明天。毕竟,⼈都是有惰性的。 你要相信你⾃⼰,今天的你能做的没有做,明天的你也不会做的。欢迎⼯作⼀到五年的Java⼯程师朋友们加⼊Java⾼级互联⽹架构群:823447026 免费领取架构师资料

2023年6月20日发(作者:)

两年Java程序员⾯试经验分享,从简历制作到⾯试总结!前⾔⼯作两年左右,实习⼀年左右,正式⼯作⼀年左右,其实挺尴尬的,⾼不成低不就。因此在⾯试许多公司,找到了⽬前最适合⾃⼰的公司之后。于是做⼀个关于⾯试的总结。希望能够给那些依旧在找⼯作的同学提供帮助。⾯试其实关于⾯试总结这块,我也看过不少⽂章,但是⼤部分都是关于⾯试题以及⾯试中的问题所谈。但是对于⼀个不擅长找⼯作的同学来说,其实在简历制作这⼀块很重要。因为简历没写好的话,连⾯试邀请都没,何谈⾯试呢。所以我准备谈谈我对简历制作这块的⼀些见解。如有不妥,欢迎指出!简历制作在写简历这⽅⾯,需要下⼀定的功夫。毕竟简历就是你给别⼈的第⼀印象,⽽印象则决定你的⾯试机会。简历突出的就是⼀个简字,简历的制作不要过多,也不要过少。2-3页最好。简历的三个重要点就是,我是谁、我要做什么、我能做什么。第⼀点,个⼈的基本信息。除了个⼈姓名、籍贯、现住地址等外,还需加上毕业学校、所学专业、⼯作时间等。重要的信息填上,⽆关的信息则少写或不写。例如⾝⾼、体重之类的。第⼆点,求职意向。这点很重要,可以的话,排版放在个⼈信息下⾯。求职意向主要就是期望⼯作的岗位、⼯作的地址以及薪资。⼯作岗位建议后⾯加个相关⼯作,可以少许提升⾯试机会。例如,java⼯程师及相关⼯作。薪资这块则建议填写⾯议,过⾼或着过低只会降低⾯试机会。第三点,也就是HR最重视的⼀点,技术能⼒这块。就写做掌握的技术以及相关熟练度,最好多⽤点技术关键字,毕竟不少的HR是按照关键字来搜索的。例如 JAVA、SQL、linux等。这点排版也建议放在求职意向下⾯。剩下的就是⼯作经历以及项⽬经验了。⼯作经历这块就不细说了。重要的是项⽬经验。项⽬描述这块,个⼈建议,第⼀点,你要告诉别⼈,你的这个项⽬是做什么,为什么⼈群服务,怎么使⽤。不要过多的说明⽤了什么技术,⽤这些技术怎么开发项⽬。这点⼤致提下就可,毕竟篇幅有限,使⽤技术这块和⾯试官相谈即可。第⼆点,项⽬负责开发的模块以及技术,这点需要让别⼈知道你在这个项⽬做了什么,⽤到了那些技术。第三点,项⽬业绩,这点看个⼈,如果不知道怎么写,可以写个⼈在项⽬学到了什么,或者碰到了那些问题,是如何解决的。⾄于⾃我评价、获奖之类的,可以留在最后书写,写⾃⼰的真实情况,最好不要使⽤招聘⽹上的那种模版。简历投递投递简历这块这块看个⼈⽽定,智联、51、BOSS直聘、拉钩、猎聘这些还⾏,尤其是后三个,专门为IT⾏业服务的。可以多试试。如果有内推的话更好。现在微信招聘之类的也不错,还有⼀些社区招聘之类的也可以多看看。注意:如果⾯试收费之类的,这种就不⽤考虑了。在投简历的时候可以去看准⽹查查该公司的相关情况。⾯试准备在准备好简历之后,应该做些相关⾯试准备。⾸先,是笔试题,这点是初级程序员绕不过去的坎。笔试题⼀般的公司都会出的,除⾮你是⼤⽜,可以选择不做。所以,还是⽼⽼实实的准备吧。⾸先,基础相关⾯试题要做好。⼀些⽐较常见出现的问题,顺便列举下。JAVA1. 5个常⽤的java-api包。2. String类中常⽤的5个⽅法。3. API接⼝开发的注意事项。4. TCP/IP、HTTP协议。集合相关的问题(重点)1. HashMap、TreeMap、Hashtable、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的实现和区别之类的。2. 上述集合中的那些是线程安全的,那些不是。3. 在那些场景使⽤这些集合。4. List、Map、Set三个接⼝,存取元素时,各有什么特点。线程相关问题(重点)1. 创建线程的⼏种⽅式。2. 线程同步的⽅法。3. wait和sleep区别。4. Runnable接⼝和Callable接⼝的区别。5. 如何实现线程安全。框架相关知识(这块反⽽不多)1. Mybatis#和$的区别.2. Hibernate和Mybatis的区别。3. Spring MVC和Struts2的区别.4. Hibernate的缓存机制。5. 什么是Hibernate延迟加载.6. 为什么要⽤spring。SQL(主要考察Group by和Order by相关知识)1. 查询每个班级成绩最⾼的学⽣。2. 查找出每个班级成绩第⼆的学⽣。3. 按照班级查询每个班上总分前三的学⽣。4. 查找⼊职员⼯时间排名倒数第三的员⼯所有信息。5. 薪⽔排序后薪⽔排名在第2--8的员⼯。6. 按⼯资进⾏排名,排名从1开始,⼯资相同排名相同(如果两⼈并列第⼀则没有第⼆名,从第三名继续排)。7. ⽤⼀条sql语句取出所有姓名有重复的学员姓名和重复的记录数。JavaScript/JSP/Servet (这些⼀般是基础题)1. JSP的内置对象以及作⽤。2. JSTL的常⽤标签。3. Servlet的⽣命周期。4. URL和URI的区别。5. Ajax同步和异步的区别。6. 使⽤ajax发送异步请求的流程。其它1. &和&&的区别。2. ==和equals的区别。3. int和Integer的⾃动拆箱/装箱相关问题。4. IO和NIO的区别。5. final、finally、finalize的区别。6. 重载(Overload)和重写(Override)的区别。7. String、StringBuffer和StringBuilder的区别。8. 如何实现浅克隆和深克隆。9. 单例模式的实现以及最优。10. 排序的实现(冒泡、选择、快速等)。1. 去除重复的元素(实际是重写equals和hashcode)。⾯试流程现在有不少公司先是⼈事⾯试,然后技术⾯试。所以在⼈事这块谈论⼯资的时候,最好不要说死,或者先不谈,留着技术⾯试过了之后再谈。有点因为在⼯资待遇这块没谈好,就直接⾛⼈了。毕竟⾯试双⽅都要花费不少时间,所以这块需注意!在相谈的时候,要注意礼貌,⽆论是否成功,都应该注意⾔⾏和态度。⼀般技术⾯试这块会先让做个⾃我介绍,这块应该充⼤学开始讲,不应过多,重点放在⼯作上和项⽬上。⼤学这块就简单介绍毕业学校、毕业时间以及所学专业。如果有关于IT之类的获奖,可以提⼀下,但不易多说。项⽬这块,可能会提问为什么这么做,如果让你来重新设计,你回如何设计。在这个项⽬中的困难点是如何攻克的,在这个项⽬中学习到了那些等等。在项⽬讲述这块,最好找⾯试官所感兴趣的项⽬,⼀般就是做过的项⽬和所招聘岗位较为符合的。在⾯试结束之后,理应说声感谢!毕竟⾯试其实也是成长的⼀种。⼀般来说,技术⾯试过了的话,基本也就过了。剩下的就看待遇相谈这块了。在待遇这块最好遵循⾃⼰的想法,不要因为当初没谈好,后来⼯作时⼼中不满,产⽣的⼀系列问题。⾯试技巧个⼈能⼒这⽅⾯⽆⾮两个⽅⾯,⼴度和深度。技巧很简单,就是说⾃⼰擅长的。技术掌握⼴,但是不深,就可以将⾃⼰的技术⼴度多说点,顺便可以提下⾃⼰的优点 例如:学习新技术很快;技术掌握深,但是不⼴,就可以将掌握的深度多说点,可以提下⾃⼰在学习这块的专研度。如果在这两点都没有太明显的优点的,可以尝试从项⽬业务说,最好将项⽬吃透。与⾯试官相谈的切记要诚实,不要弄虚作假。碰到不会的或者了解不深的,直接跳过,最好将⾯试官引导到⾃⼰擅长的领域。⾯试总结⾯试完之后,最好进⾏总结。毕竟每⼀次⾯试都是⼀次收获。如果将⾯试中所遇到的问题以及感悟能记下来,那就再好不过了。在找⼯作的时候,除了做些相关⾯试和准备熟悉以前做的项⽬之外,还应该学习新的知识。毕竟,每多学⼀点,成功找到⼯作的机会就⼤⼀点。⽽且,IT这⾏,技术发展过于快速,如果没有学习新知识的动⼒,终究会被淘汰。因为学习实在是很枯燥⽆味。学习是⼀个长期投资,短期很难道看到收益,⽽娱乐是⼀项短期投资,短时间便可以看到收益。所以学习这块最好可以给⾃⼰定⼀个⽬标,每天学习⼀点,慢慢的会达到的。如果没有动⼒的话,可以给⾃⼰设置奖励。这是可以激发学习的兴趣的。还有⼀点,今天能坐完的事情,绝对不要留给明天。毕竟,⼈都是有惰性的。 你要相信你⾃⼰,今天的你能做的没有做,明天的你也不会做的。欢迎⼯作⼀到五年的Java⼯程师朋友们加⼊Java⾼级互联⽹架构群:823447026 免费领取架构师资料