IT专业准大四毕业生职业定位的困惑_实习该何去何从

我大学有一个非CS专业的哥们,算是一般意义上的“聪明人”。
怎么个聪明法呢?学东西非常快。任何一门课程的前三周,基本上就是他一个人在跟老师互动。注意了,不是那种中规中矩的问答,是真正就课堂内容进行的讨论。因为这个属性,老师们对他印象分都是满分。最牛的一次是考完试没交卷,找老师认了个错,最后给了70分。
不过这哥们有个毛病,学什么东西都虎头蛇尾,到了学期末基本上都不进教室了。
他也学过点编程语言,据他自己说C++、Java不在话下,Python更是易如反掌,据说还涉猎过PHP、js什么的。
临近毕业,他看不上来我们学校校招的企业,揣着简历闯北京了,说是要去BAT干开发,要靠自己在老家买房。
后来当然失败了,我看过他的简历,罗列了一堆名词,却看不到做过任何事。作为一名“熟练使用C++”的大神,写100行以上的代码比我还差劲。
我觉得题主跟我这个兄弟有点像,人是非常聪明,了解很多也做过很多,但是太流于表面。如果你们两个真的能扎下心,给自己点压力,未来不可限量。
建议题主先放下身段,哪怕只是找一个小公司,先去尝试做半年以上的时间,给自己的大学一个沉淀的机会,也给自己一个发现内心真实世界的机会。
【IT专业准大四毕业生职业定位的困惑_实习该何去何从】 比如我那个兄弟,在外包公司写了三个月CSS之后,痛定思痛,去链家回龙观卖二手房,专门接待程序员客户,不到半年在老家全款买了房。前几天跟我聊天,说是北京部门的老大特别欣赏他,过年后准备给他个店经理练手,直奔着地区总监去了。

■网友
邀请我的人真是邀请对了,题主和我一样跳了无数坑啊,连好多坑都是一样的。。。首先题主的认识是对的,大学不是职业教育,而是偏向于专业基础的教育。可是不幸的是,你在明白了这一点之后,却没搞明白专业基础是啥,所以在自己学习的过程中把好好的大学四年过成了培训班四年。。。在CS这种专业里,什么是职业教育呢?什么是专业基础教育呢?我个人认为,职业教育的核心在于教你如何操作工具去完成一个个工程,而专业基础教育的核心在于给你打下深厚的知识基础,让你无论去接触更深奥的理论知识还更复杂的工具还是设计新工具都得心应手。CS的特性本身决定了即使是专业基础教育也无法脱离某些十分核心的工具否则会变得十分空洞,因此每一个CS系都会教一些核心的工具,比如编程语言,让你去实践学到的那些知识。说到这里,先说说你的第一个问题吧,那就是语言。你说你比较有竞争力的有j2ee。然而,会某种语言,几乎很难成为竞争力。上面说过,语言只是工具。虽然它在CS界的地位十分高,但也只是必不可少的工具,仅此而已。而且语言和其他工具不一样,那就是它的使用极其自由,因此好的操纵者和不好的操作者产生的价值可能会有巨大的鸿沟。如果一个程序员只会语言而不会其他,那几乎可以肯定他写不出什么高大上的东西来,因为决定程序员地位的不是他用的语言,而是他脑子里的东西,他能写出多么好的东西。根据你的描述,我没有发现你在某些方面有明显的专长(比如擅长写服务器程序啊之类的),仅仅擅长j2ee是远远不够的。当然了,语言里有些特例比较特殊。有些特例是因为语言本身过于难学,不掌握一大堆相关的知识就根本学不会,而为了学语言学的那一大堆知识要么可以让你在某些领域成为专家,要么可以很快的转换为其他知识帮你成为领域专家,典型的例子有Haskell等函数式语言。还有一些特例是因为语言本身太过于嘈杂,导致不深入的学好某些东西就根本无法正常应用语言。这个典型的例子是C++。想写出高效的C++程序需要经过漫长的学习,需要对系统、硬件等底层知识有着深刻的理解。因此精通C++就意味着在这些方面绝不会差。只会语言还有一种特殊情况,那就是研究语言本身。无论是研究语言的设计还是实现,都可以学到许多非常深奥的东西。这些东西即使无法直接应用在工作,也有着极大的帮助。我相信一个精通jvm实现的人,即使号称只会一点java,java也可以写的相当好。更了解工具的人用起工具来总有一些优势。继续说说CS的专业基础教育。前面说过,专业基础教育是为以后的发展打下基础,有了良好的基础,无论是搞理论研究还是去做工程师都有很大的优势。那些感觉枯燥的数据结构算法、编译、操作系统,甚至数学,看似和实际应用没有太大关系,但在真正复杂的应用中没有这些基础你几乎什么也干不了。这些基础知识决定了上限。题主提到了,某次应聘被拒绝了但对方招的人什么技术也不懂。公司从学校招人和从社会招人的标准是不一样的。学校的学生很难有太多项目经验,那么考察的更多就是学生的学习能力和知识基础。基础好,学习能力强,在公司培养一段时间很容易就成为高手。你面试的情况我不太清楚,但我觉得很可能是被录取的人在基础知识上有着很大的优势。题主你自己反思一下,如果一个啥技术都不会只会各种算法的ACM金牌和你做同样的工作,你有信心在一段时间以后还能比他更牛吗?还有一个问题就是,虽然这些工具类的东西你折腾的比较多,但没有深入的学习过他们,这一点很遗憾。这些工具用着简单,但里面普遍蕴含着复杂的知识,在深入学习他们的过程中往往可以极大的提高自己的能力。这也是你的竞争力不足的重要原因,就是深度不够。最后说说Linux运维吧。我对运维这类工作很不了解,只说说我的个人之见吧。我觉得运维是一类很无趣的工作,发展方向不广阔,进阶难度高于写程序。我觉得这最好不要成为你的优先选择。当然,我对运维的了解不多,认识可能有偏差,你要辩证的看这一段啊。你现在的问题就在于前三年没有发现大学真正该学什么,走了许多岔路,没学到太多非常值得学的东西。如果现在开始补基础的话,毕业前还是很有可能把基础搞好的,这样进个好公司还是不太难的。后面的发展就靠自己了。另外,我觉的,如果实在没有自信找到好工作的话,读研也是一个不错的选择,总比慌慌张张的选择运维强。读研这段时间你可以用来思考本科的问题,思考未来等等,对于迷茫的人来说是很重要的。更具体的职业帮助我也无法给出了,毕竟我也只是一个准大四狗而已。但愿题主能早点走出前期跳坑带来的影响。


推荐阅读