一、为什么大公司要设置学历和学校的门槛

目前一般的大点的公司,往往会在招聘时(尤其在招聘3年以下工作经验的程序员时)会设置学校的门槛,比如需要211或985相关专业毕业 。
这里我无意贬低不在这个范围的程序员,相反在本文里还将根据我所见和我所闻,为这些同学给出发展的建议 。
首先我用我的切身体会给大家予以足够的信心:我最近呆的都是一些不小的公司,虽然在招聘时有上述的门槛,但事实上,在3年左右的正式员工里,大约30%是一般学校,或非科班出身,在外派的员工里,这个比例会高到70%左右,而且,每个组平均每年有3个左右转正的名额 。
所以,出身一般的程序员,只要有足够的勤奋度,而且方法得当,绝非就一定低人一等 。
恕我直言,在学校和学历方面稍微欠缺的同学里,我有见过能力很强的,但平均综合能力确实不如好学校 。(这里如果我说高于好学校,说出来也没人信) 。
不过对于勤奋的同学来说,并非是能力不行,而是努力的方法和方向不对 。
对于这批敬业勤奋的同学,我非常敬佩,所以在这篇文章里,我将专门分享些相关的提升技巧 。
▌一、为什么大公司要设置学历和学校的门槛
平心而论,为什么有这样的设置呢?
第一,能进好学校的同学在之前的学习过程中已经证实了自己“综合能力强“这个特质; 第二,好学校毕业的同学,一般基础能力比较扎实,比如数据结构算法操作系统编译原理等,不仅理论经验,不少还有实训经验 。
在前进的过程中,我们必须认清自己,所谓知己知彼百战不殆,但认识自己绝非是让我们妄自菲薄,而是明白自己的短板,归纳一下,在招聘时,一般会对这批程序员重点考核如下的要点(这其实就是目前普遍存在的短板):
1、是否有实际的商业项目经验?
2、基本功是否能达标?比如是否熟悉链表Hash表的基本数据结构,是否熟悉排序等基本的算法 。
3、学习能力,团队协作能力以及责任心等是否达标?
其实归根到底就一点:如果程序员在大学毕业前,有过实际的项目经验,比如做过兼职,或在学校里帮老师干过商业项目经验,这能一定程度上弥补学历学校和专业方面的劣势,而且,如果做项目的时间足够长(一般1年左右),而且项目里用到的技术和公司职位需求比较匹配,而且候选人动手能力强,一些规模不大的公司甚至会忽视学校等方面的因素 。
▌二、如何让自己有个不差的起点
程序员在踏上社会后前两年的发展,会比较重要 。这里给出的建议是,如果你感觉学校和学历会成为障碍,可以找个规模一般但干的活和你的职业发展相关的工作,如果万不得已,不得不干销售等之类的工作,但一定得让自己干点和编程相关的事情 。下面给出些我见到过的案例:
案例1:小A本科毕业后,学校一般,能力属于中下 。不过他找了个外派公司,外派进了一个规模比较大的公司,在其中发展了2年,用项目经验冲淡了学校的因素,后来就跳槽进了一个大公司,从初级开发做起,平时也经常学些知识,目前在升级到高级开发的路上顺风顺水 。
案例2:小B学校一般,也大专学历,但在大三期间已经在软件公司实习,积累了一些基本的开发能力,毕业后就凭此顺利进入到一个中型公司做开发,至少能在社会上站稳脚跟 。
案例3:小C大专学习,专业是理科,但和软件关系不大,后来参加一个软件培训,积累了些技能,目前至少也能在公司里做软件开发的活 。
在这个案例中,我绝非说一定得通过培训学校,其实在培训学校是用钱买时间买学习方法买项目经验,如果你自己毅力足够,靠自己看视频运行项目,也能达到类似的效果 。