我前一阵在博客园里看到一些关于培训面试就业的热门文章,大家回复和讨论都很热烈。
本人从事Java后端开发年数不少,还有些(兼职)培训和技术面试官的经验,所以也借这股东风来讨论这个热门话题,希望能抛砖引玉。
1 校招和社招
这两种要求是不一样的,校招可以不要求有商业项目的工作经验,而社招至少要求有一年,事实上一年经验也很难,除非有程序技能大赛详奖项或海外工作经验等额外加分项,社招进来的至少有1年半相关经验。
而且,目前社会上初级程序员有些过剩(残酷但是现实),所以在社招情况下,如果一个初级程序员出现如下状况,基本上很难找到工作。
1 一般毕业季是7月,从简历上看,如果到9月还没工作,除非有合理的解释,否则会认为这个人能力不行。这种人很少有面试机会。比如我们见过一个人,在次年一月才开始工作,给我们的解释是在复习考研,但没考上,所以工作了。我们能理解,但实际工作年限少这个事实摆在这里。
对应的建议是,大三开始最好去实习,哪怕白干,也去增加你的实际项目经验,如果你考研,你自己斟酌,或者能自己承担边失业边复习(请原谅我非常直接,但这更有警示性)的后果,或者边工作边复习,这样至少有实际项目经验。
2 毕业后年限满了(比如2年),但从事的方向不专一,比如前半年做C#,后半年做Java前端,再有一年做Java,这种人即使有面试机会,但由于和对口(比如我们只要Java后端)的时间不多,一般也很难找到工作。
对应建议是,毕业后尽量专一,或者你多从事不同方面的工作,最后看个适合你的再专进去,而且,毕业后2年的跳槽次数别太多,尽量在2次以下。
3 如果简历上的毕业学校一般,这问题不大,但毕业学校好,这是个加分项。但如果遇到跨专业找工作,而且相关工作年限不多,基本没面试机会。
比如我们是要招Java专业的,最好是计算机系,如果是电子系等能沾边的(至少大学里有软件开发课程的)也就算了,如果是船舶农林等不相关的专业,那么可能需要综合评估简历了,除非在简历中项目经验或自身能力很突出,否则面试机会很少,如果是纯粹换行当,比如农林专业,前面做的是园林工作,目前要做Java,这种一定没面试机会。
这里给大家的建议是,如果你学校一般,毕业后的2年之内你更不能花时间在手机游戏等不相干的地方。如果你真的要跨专业,你自己考虑好,这个代价要超出你的想象。
2 商业项目经验和培训项目经验
这是个热门话题,虽然我也兼职做过培训学校,但我这个学校有些政府背景,拿政府补贴,不收学生的钱(其它不说,不能在这里做推广)。一句话,这个培训学校不是主要靠培训盈利,所以我这些观点也算中立,不会偏袒也不会贬低,只是拿事实说话。
首先说明些当前的客观事实。
1 简历上的项目最值钱的是商业项目,通俗地讲,就是公司做了,能卖出去,靠这个挣钱,培训学校给的项目经验(或者叫实训经验)和大家毕业设计的项目经验也值钱,毕竟能反应大家的水平,但没商业项目值钱。
2 多数培训学校(或者说能生存下来的培训学校)都是非常上心负责,毕竟人家要靠这个挣钱。你付给他们的学费其实是用来买时间的,比如你打算转行,如果你自己学习要花2年甚至更多(人家计算机专业的学了4年了),那么如果你参加一个学校培训,可能就用半年就能完成知识积累,时间就节省下来了。
3 我(可能其它技术面试官也有同感)在筛选简历时,经常会看到很多人的项目描述是雷同的,比如都是XX财务系统(我没有针对财务系统,就用这个举例),而且模块也类似,用到的技术也很相像,什么描述的措辞也一样。再看下这段时间里的工作公司,都是同一个培训学校。
这里我不会歧视培训学校,但还是这句话,商业项目经验要比培训项目经验值钱,所以如果有可挑选的其它简历,比如这人是1年商业项目经验加半年培训经验,另外一个人是一年半商业商业项目经验,我们可能就会优先考虑后者了。
3 通过自学还是培训学校提升技能
这个其实没有绝对的,是因人而异。刚才也说了,大家可以通过培训学校用钱买时间,但如果大家自己有能力在短时间里有毅力学好,为什么要参加培训学校?话说回来,比如某人要从硬件维护转到Java后端开发,这时甚至不知道该学什么,那么就可以报个培训学校了,下面通过些案例来说明。
案例一,比如某人从事Java后端两年,目前尚在公司里做,周围有一大圈同行和前辈,这时大家可以通过多观察多交流多学习来提升。我们可以做个比较,比如参加培训学校的代价是1万(学费)+ 三个月(时间成本),如果大家有能力自学,完全可以用少点的钱(比如2千能买足够多的书和视频),再悬梁刺股地学习,用三个月绝对可以学到同样的技能。
案例二,我见过某人要转行,之前他自学了3个月,但由于不知道知识体系,也不知道学习步骤,这2个月相当于白学,这时就需要有专业的人(或者培训机构)带了。
案例三,即使参加培训学校了,自己也得刻苦。在一些经过长时间优胜劣汰的还能活下来的培训学校里,确实能有帮助学生能短时间提升的技能,但培训学校和金牌老师也不是万能的,只是会把别人多年的经验精炼出来,比如让大家能用3个月的时间学到别人2年才能自己总结到的知识(能做到这点就很不错了),但关键大家也得自己紧追,但如果大家还是到培训学校里混日子,那么在培训学校非常专业的前提下,学无所成就不能怨别人了。
4 高效自学,提升自己技能的方法
其实这个办法谁都听过,但不是每个人都能做得到。
1 指定目标,比如大家目前是1年工作年限,那么目标可以是3年年限的高级程序员。
2 到招聘网站上看(有时候甚至自己可以去尝试面试)这个目标所需要的技能,比如Java后端3年高级程序员要会Spring MVC,数据库优化,Java Core,设计模式等,把这些技能做个列表。
3 花钱买配套视频(当然免费有用的更好)和书,这里不建议到各网站上去看,因为网上知识虽然全,但很杂,要靠自己整理,一般初学者没法甄别哪些有用,也没法制定计划和学习体系。在买好视频后,一定要边看边动手写代码,只看不练一定没用。
4 自己感觉学有所成后,再出去面试,看看自己和社会要求的差距,然后再学。
5 在培训学校里“学够本”的建议
如果大家出钱去参加培训学校了,付出的钱不会少,这里给些能提升学习效率的建议。
1 摆正心态,别认为出钱就一定能学好,出钱只是买方法,学习还得靠自己。
2 上课之后,一定得上机,光听不练,学费一定白出,没有例外。
3 在公司里,一般不会什么都要自己做,一般是会在别人的基础上修改下,然后变成自己的东西,所以在培训学校里,第一步的目标不是要什么都自己做,而是学会能“山寨”别人代码的能力。第二步再学精。
4 在培训学校里,更关键的不是学知识,而是学知识体系和学习方法。你要始终问自己一个问题,从培训学校出来后,我能否知道后面该继续学什么(培训学校不可能把你培养得一步到位,大学也做不到)?而且我能否知道该从哪些书上学?怎么学。这样你出的学费才值。
6 培训学校里准备简历和就业的建议
对于一般在公司的程序员,我们在java web轻量级开发面试教程里给出了准备简历和面试的建议,这里给出些针对培训学校学生的建议。
1 简历别千篇一律,要以求职公司的具体职位需求为导向,比如你在项目里做过数据库优化和Java虚拟机内存优化,但这个项目是Spring MVC的,你就可能只写Spring MVC,但如果公司职位介绍上写,有过数据库优化技能的优先,那么你就可以微调你的简历,把数据库的技能写上去。
2 一般培训学校里有专门帮助就业的老师,他们会辅导简历和面试流程。大家往往会把培训(或者叫实训)项目写到简历中,这时候请大家尽量避免随大流,比如你可以在理解基础上用自己话改写一下,尽量让别人感觉你的经验是工作经验。这个技巧在java web轻量级开发面试教程里有。
3 根据我们的一些观察,从培训学校里出来的学生一般硬件条件不怎么好,比如学校不是一流的,或者专业不是计算机相关的,或者不是本科而是专科,或者虽然有3年工作经验,但相关经验很少。这样的话,即使在培训学校里学得再好,可能竞争力也不高,所以建议大家出来后先找个相关的工作,先把学习经验转能实践能力再说。
7 培训学校里包就业的话题
对此不做评论,大家可以结合自己的能力换位思考,比如某人虽然3年,但之前没从事过Java后端工作,(可能再加上学校一般,大专毕业和非计算机专业等因素),那么你学好之后,最多加上学习阶段的项目经验,而公司不是学校,目的是盈利,大家可以考虑下这种情况下的竞争力。
8 总结
1 参加培训学校的价值在于出钱买别人的经验。
2 找工作(或者说公司挑选人的标准)要看教育背景,工作经验、项目经验和年限。
3 自学可以,但要有毅力
4 培训学校能帮到你,但关键还是靠自己。
来源:https://www.cnblogs.com/JavaArchitect/p/7613626.html