专科程序员与本科程序员之间有什么区别?
先讲一个大专程序员和研究生程序员之间的真实故事。
朋友是大专毕业,主要是做PHP后端开发,也兼做Web前端。
他所在的公司也不大,满打满算二十个人,搞的是高大上的软硬件结合的智能产品。
朋友在里面可以说是软件开发这一块的核心骨干,有时候还得跟硬件研发团队搞结合测试。
后来老板似乎觉得员工的学历有点Low,就招了个硕士研究生学历的,说是某电信大厂出来的,技术牛得很。
老板开会的时候,十分看重他,要大家尊重他,以他为榜样。
似乎有了他,公司技术这一块就要腾飞了。
正好他们要搞一个项目,就让那个研究生牵头搞个方案出来。
那研究生哥们搞了两天,向老板汇报,老板听后很是兴奋,就召集技术团队和两个股东开会,一副要大干特干的样子。
其中一个股东也是软件开发出身的,只不过当时的工作是做营销这一块。
他早就看那个研究生不顺眼了。
在会上,研究生哥们厚着脸皮(之所以这么说,是因为听朋友讲他当时似乎很心虚),把方案打在投影幕布上。
朋友看了,就一张凌乱的Excel表格,和一张不知所云的流程图。
本来朋友也不打算落他面子,毕竟无论如何自己总是干活最多的那一个。
千不该万不该,那哥们把我那朋友的工作说得很轻蔑,却把自己负责的部分说得很厉害。
朋友说那哥们还懂得区分前端和后端,谁知竟然把自己负责用Java开发的Websocket部分,以及MySQL的存储过程,说成是后端,而朋友要负责除此之外所有部分的开发,并说成是次要的前端任务。
他所谓的“前端”涉及到用PHP开发的整个后台,以及前端页面的所有后端接口,还有所有的前端页面,另外还包括供硬件侧调用的数据接口。
如果是一个非常大的项目,把应用层面说成是前端的话,还算说得过去。
但这项目要用到的Websockt部分充其量一百行代码,存储过程更是没必要使用。
那研究生哥们之所以这么区分,是因为他其实就懂一些Java语法,和临时抱佛脚学会的存储过程。
但他仗着老板支持他,就编排了那么个极其不协调的工作分配。
但他忘了那公司不仅仅是那老板的,还有几个投了钱的股东呢,其中两个也在公司上班。
那个懂软件开发的股东看出了端倪,就跟我那朋友对了眼色,要给那研究生一个难堪。
两人装作不太懂的样子,向他询问了一些关键的知识点。
那研究生继续厚着脸皮吹了一通,老板一开始还听得直点头,以为都是“硬”知识。
接着滑稽的现象出现了,我那朋友和那个股东不再装不懂,直击要害,用真正的“硬”知识逐条批驳,包括但不限于:数据库的关系型问题、关键字段问题、功能模块问题、代码逻辑问题,最后归结到项目的前端和后端真正应该怎么划分,任务该怎么分配的问题。
那哥们的脸逐渐像滚烫的山芋似的,最要命的是老板的脸也跟喝了酒似的红了起来,满脸的怒容。
老板毕竟也接触过技术,懂一些关键知识点,这会儿知道那研究生哥们是在忽悠他了。
不久之后把那哥们扫地出门,听说那哥们还跟公司就工资发放问题打了官司。
说完这个故事,回归正题:专科程序员与本科程序员有什么区别?
答案是除了学历能用来当敲门砖,其他方面区别不大。
因为他们都属于高等教育,都学习了基础的计算机知识。
而对于工作来说,学校学的东西是远远不够用的,必须要有足够的实际开发经验才能立得住脚。
在经验这一块,反而是更早接触工作的大专程序员可能拥有更多的写代码经验,更能摸透里面的一些门道。
不过,如果不比较实际开发经验,只比较理论研究的话,那么学历越高的一般理论学得越充分。
但也要看人,像上面故事里面那个哥们,只不过是把死知识灌输在脑子里面,根本谈不上理论。
多出的那几年学习时间,对于他来说是浪费了。