2008年初来大学的时候,学长们让我们在一个主题班会上讨论自己的理想,我粗略的了解到班级里面希望从事计算机相关工作的没有几个,大概是觉得在这个实力不很强的国家里的一个很不有名的学校里的学生是不可能在计算机领域里大有作为的。我当时碰巧拿了一本《电脑爱好者》,里面有篇谈论“中国芯”的文章,当时文章里只描述了“龙芯”的优势,我读给大家的时候在班级里树立了我计算机高手的形象,好像“龙芯”就是我做的一样,因为他们之前根本没听过这个词,甚至很多人还没太多接触过电脑。其实,我当时是什么水平,从我拿的杂志就可以看出来。我只不过是比他们更能熟练的使用电脑而已。当然,玩游戏除外。一直到大四毕业我还是被他们虐的对象。
大一大二期间除了学习,大部分时间在学生会网络部里面。这期间接触最多的就是修电脑,后来还在学校一个柜台兼职。在这期间我发生了一件我最遗憾的事情,我们院系一直有一个老师领导的对外承接项目的团队,当然,对内不是这样介绍的。当时这个团队在纳新的时候我没有顺利进入。他们招收有一定语言基础的学生,而我对编程与众人无二。以至于当他们在讨论一些bug如何修改的时候我还在群里问“Visual C++中的属性面板在Visual Studio2005中怎么找”。相对于在柜台修电脑挣的一点小钱,我并没有觉得没有进入这个团队让我有多失落。后来又用Dreamweaver做过一些简单的网页。这两年就没什么动静了。
大三的时候,数电老师在某节课上讲,他在上中专的时候在学校帮老师修电视,生活过的也小滋润。可是后来他觉得自己不能靠修电视过一辈子,就发奋学习到了今天。当时我受很大刺激。下课后我果断或送或废了自己所有的系统盘以告众人:我将来也不能靠修电脑过一辈子。我决定用两天的时间为自己选了一门编程语言并努力学好。当时安卓系统还没有普及,手机好不好玩全看支不支持Java,虽然Windows mobile也见过,但是不多。而且很多学长在一谈到语言的时候就说java跨平台,Java学起来比较难。C#依赖微软的产品等等。我最终就选择了Java,觉得跨平台这个概念真不错。然后在网上下载了郝斌老师和尚学堂马士兵老师的Java教程。
可能学的都是基础语法的原因,学习的过程还算顺利,也没觉得有很大的难度。后来网上都说很多人在配置环境变量的地方吓住了,我都觉得不可思议。也可能之前的C/C++的底子还不错吧,面向对象理解起来还容易接受。C/C++学的好完全是觉得大家认为我是高手,所以我不能在课堂上丢脸啊!在大三寒假的时候,我有了另一个工作机会:一个北京的公司在我们学校附近开一分公司,要五六个人做编程,可以零经验。消息是另外一个比我们学校好一个档次的学校的人透露给我的。我当时觉得机会很重要就去争取了。去了之后才发现跟我竞争的都是大二的学生,然后我就以学长身份领了五个人进入这个公司。
我们分了三组,我和另外一个看上去不错的人负责OA系统的一些bug修复,另外两个组分别开发自己的项目。面对ASPNet的OA系统,我比他们没有任何优势,不过还好在学校的时候玩过IIS,我很快配置好了环境,我的队友对不用F5就能调试网站表示很神奇。但是对于程序,我真心觉得有压力。不过还好,通过不断的百度,我在第一天修改了两行代码就把第一个bug修复。浑浑噩噩的过了二十天,bug也修复了不少,但是对asp.net还是不怎么开窍,毕竟在这之前我只在课堂上写过C和C++,在课下学了Java语法。二十天后我们开始过年,过年期间我在网上下载了传智播客杨中科老师的免费视频,十五天的寒假我没怎么出门,一个人在床上看完了这些教程并最终明白了我过去写过的那些asp.net代码,并感谢微软人性化的visualstudio和这个比较低级的项目,不然我不可能在完全不懂的情况下修复这些bug。寒假结束后我对这个完全拖控件的OA系统开始游刃有余,当然,我也顺利的留在这个公司。
大三下半学期同学开始明显的分群,考研的,找工作的,还有沉迷游戏的。这个时候有个老师联系到我,想让我也帮助组织一个类似我上面提到的学习团队。我当时异常的兴奋,我经常想,如果我大一下学期可以进入我们院系的学习团队,也许我就不会修两年电脑。因为工作上的任务我已经能很快完成,所以我申请不在公司坐班,用Email给经理联系,尽力批准后我开始全身心投入到这个学习团队中。一周的时间里,我收拾了机房,搜集了我之前的视频教程,并草拟了学习方案。因为我之前的不幸落选,所以我在组织这个团队的时候对团队新成员要求就是对编程有兴趣即可。
在接下来的时间我才是真正的开始学习web编程。在机房的时候看视频教程和练习,在课堂上看图书馆借来的书籍。生活单调充实。真是感觉代码就是整个世界。而这之间也确实进步不少。比如在大一就开始玩Dreamweaver,但是直到现在才知道HTML标签的详细用法。在此特别感谢我上面提到的老师们的视频教程,自学的过程中真的给了我很大的帮助。顺便吐槽一下我纳新的过程:面对一个这样不能加学分,不能给予任何奖励的没有任何背景的学习团队,几乎没有人来问津。最终我以免费上网、稳定自习室等变相条件诱惑到一些同学,并把他们拉上编程道路。只是他们当中几乎全数都要学习Java,理由应该跟我当初选择Java是一样的吧。这让我始料未及。最后我又请了一个比我懂Java的同学过来帮忙,这个团队总算还是成了。
再后来,为了找更多的教程,我来到了微软的webcast,在一个不短的时间一口气看完了苏鹏老师的MVC系列课程。为了提高时间利用率,我都是1.6倍加速播放的视频,当时苏老师口若悬河滔滔不绝的声音让我感觉MVP真强大。当天我给自己30G的C盘扩容到50G,并安装了VS2010来学习MVC。时间总是那么紧迫,历史也是那么相似。第二天,我还在懒床的时候被同学A的电话叫醒说另外一个同学B找他帮个忙,编程方面的。去了之后发现B同学也是受C老师委托,见到C老师后,老师说是D公司的人让他找人改写网站bug,D公司的人最终说这不是帮忙,是一份工作。我不太喜欢这样被叫来叫去的,但是当我看到D公司项目是MVC做的时候我动心了。当时我的第一份编程的工作基本上已经没有工作任务了,我就跟经理辞职来到了D公司任职。D公司也就是我现在所在的公司。
当时我仅仅看过VS2010自带的mvc项目Demo,我给公司说两天后到职,然后回机房抓紧时间找资料,这个时候发现了重典的MVC视频教程。看完之后做了笔记并顺手记下了博客园网址,之前一直看javaeye这个网站,但是好像改名iteye之后就不怎么火了(个人观点)。第二天开始把VS2010自带的MVCDemo修改了一下,理解了基本概念后就放心的入职了。一干就到现在。
关于我在D公司工作的事情,我在上篇博客中吐槽了一下,这里概括一下就是:电子商务公司平台维护和二次开发,公司发展迅速,程序员从0到1现在还是1,待遇不多,在这个排不上名的城市也算不上少。简言之,在D公司码畜样的干了一年半后,我觉得一个人干对我来讲太苦逼,我在考虑离职,跟我们学习团队的其它人一样尝试一下大城市的发展。当然D公司待我也算不薄,公司也一直想招聘更多的技术力量,但是一直没有满意的人选。下面再简单说一下我的招聘吧。
先谈下研究生,先后有两个研究生过来面试,第一个是做图象算法,对B/S编程尚无概念,没能留下。第二个是做B/S编程,但是没有任何工作经验,对面向对象也没有认识。问她研究生期间主要做哪方面研究,答:帮导师配置软件环境,测试系统。可是后来让她在指定机器上配置环境和使用她在简历上提到的那些软件后我觉得这个就是给导师端茶倒水的结论。
再说下培训机构的学生。我本身也是看一些培训机构视频自学而成的码农,所以我对培训机构并我偏见。来面试的人中有四个左右是北大青鸟毕业的,有一个NIIT毕业的,但无一例外都是学的Java,亲,我们招聘上写的很清楚是.Net啊!还有一点很明显,对于北大青鸟的学生,你只要一看他做过的项目就会知道是北大青鸟了。我个人觉得培训机构的随堂联系最多也就是课后习题级别,实际意义不大。
然后是各色毕业生和准毕业生,本科类的都是会用C++做过管理系统,专科类的都有学过C#和HTML,也都是课后作业级别。这无所谓,刚毕业可以理解。但是很少有人知道面向对象,认为C++比C就是多了一些功能函数。这样的学生我怎么教才好?是的,我曾决定要这样的学生并教会他们,因为有一段时间我确实觉得一个人干太苦逼,我想找个学生培养。但是他们对薪水的要求都是2000以上,好吧,小公司留不了你们这些大鸟,不论是脑子大还是胃口大。
最后是那些在外工作过一年的,这样的只有两个人。我为这样的人准备了面试题,网上说面试题分三类:API、算法、设计(框架),我也不是什么牛人,在网上搜集了些API类型选择填空和名词解释,加一个斐波那契第N项的递归算法,加一个数据库表设计和优化。但是让我不相信的是没有一个人及格。第一个人表示在公司里面都是用公司写好的东西进行模块的拼凑和一些公司写好类的调用,所以基础东西都忘记了。第二个人表示看题后直接说放弃了,我再三鼓励后仍没坚持到最后。
年底,我在思考自己来年是否辞职的同时也在疑惑:为什么没有合适的人才愿意来小城市里尝试?我们公司的网址:www.dd373.com 如果有哪位朋友有意尝试,可以直接跟我联系。
-----------------------------------------------------------------2013年1月29日 09:53:18 分割线--------------------------------------------------------------------------
写这篇文章就是简单回顾一下自己,从评论上看,我需要重申两点:第一:不管是研究生或是培训机构学生,我都没有管中窥豹已少见多的意思。我想要表达的是:我们招聘的要求并不高,各样的人都来应聘过,但是最终没有合适的人留下。也可能真是我们这地方太小了,合适的人不愿意来。很多人说关键点在不足2000的待遇,这是我要重申的第二点,我在上文中说的是那些毕业和准毕业的学生,据我所知北京上海大部分公司对普通毕业生的待遇也就3000/月(注:是普通毕业生,课后题都不一定能做的那种),与我们相邻城市的省会郑州也有很多码农最初待遇是1500/月。我第一个月的时候是800/月。我当时的想法是:我的经验尚不足,给我工作我就干,哪怕没有工资。另外我们公司招聘的话是招.Net程序员,待遇3000-5000/月。小公司,不喜勿喷。