题记:一直在等待TW的结果,从面试完之后到现在恰好一周了,还没有消息,虽然“凶多吉少”,但我对结果还是抱有一丝期望。
不管怎样,我觉得我还是收获颇丰的。恰好今天跟WJ、CQ还有妻子聊了很多,我发现我该好好“思考一下人生”了
参加工作之前我对自己的总结就是一句话:
我每天都微笑着面对生活,但是我承受的经历过的你也许无法想象。
我更想好好总结一下参加工作之后的人生。
2011年毕业后进入了EMERSON,可以说工作很安逸,让我这个跌跌撞撞走过来的人产生了傲性+惰性。我的心很大,也不诚稳。这跟研究生在PLATFORM实习时没有多少变化。应该说我失去了很宝贵的让自己变强的几年宝贵时间。也正好由于工作性质的原因,我必须对VB、VC、C#都很熟悉,我没能好好的专精于某一项技术,当然,这更多的是自身的原因。我追求了技术的广度,没有把握技术的深度。这个时间段,我在业余时间带了一个TEAM,我们的FreePower,都是母校一些大二大三的学生。我会带着他们干很多事情,也会教导他们很多道理。直到现在我还依然带着他们,但是,也直到现在我也感到惭愧,因为技术上我教他们的太少太少。。。对不起,FreePowers!
2013年,应该说是我人生一个最重要的转折。
这一年,我结婚了,经历了五年的风风雨雨,我终于牵着我妻子的手迈入了婚姻的殿堂;结婚那天,高速公路车祸了,车上都是我这一生最重要的人,但是值得庆幸的是大难不死,而且全家人一点事没有;我以为大难不死必有后福,于是我辞职了,回家照顾生病父亲的同时,我带了几个我的小伙伴一起想干点啥;技术不精,创业失败;做了一会生意,接触了各行各业形形色色的人,也接触到了各种各样形形色色的诱惑;赚钱了,但是相信了不该相信的人,被骗了;于是我跌倒了,而且伤得很重很重。。。
在刚结婚没多久,我妻子支持让我出去闯一闯,只因为我跟她说:如果你不让我出去闯一闯,我这一辈子都会有遗憾;如果你让我出去闯一闯我失败了,我这一辈子最多是可惜,我不想我这一辈子没有干我最想干的事情。
在我人生跌至最低谷的时候,我回来了,因为她跟我说:你快回来吧,不管发生什么,我都跟你在一起!
(此处省略NNN字,只友情提示一句话:<永远记住:雪中送炭的人少,锦上添花的人多。患难之中才能见真情!>)
我知道我该沉下来了,我要对得起她的信任。
一个有责任感的男人才是一个真正的男人!
我决定抛开一切,忘记一切,放弃一切,从头来过。
我找了家小公司,我选择的职位是JAVA软件开发工程师。我决定抛弃以前所学的一切语言,从零开始搞JAVA。当然,我这个决定也并不是一时冲动,而是我知道,所有语言其实都是相通的,只要你掌握了最根本的思想,比如设计模式、数据结构、操作系统、数据库等等,语言之间最大的区别在于语法,更何况,我有JAVA基础,我更多的是重新拿起它。所以我改了QQ签名:“闭关二年!”我对自己有信心,两年的时间,我应该能在JAVA方面略有小成。
由于跟妻子是两地分居的节奏,一个月才能见上几天,所以平时我有很多的时间花在学习和工作上。除了妻子回来的那几天,我会不学习,好好的陪她,其他时间,下班之后我都会在家自学。应该说我安安静静的学了半年,每天看视频看书做项目,java基础知识、servlet、jsp、js、jquery、struts、hibernate、spring等到现在的云计算、测试驱动开发、重构技术。。。我开始不停的写博客,不停的关注开源社区的技术和动态,不停的跟人讨论交流学习。。。
不管这次面试TW有没有成功,我都想跟大家分享一下我的心得:天道酬勤,机会永远留给那些有准备的人。你的努力总会得到回报的。而我得到的回报是一次机会,虽然很可能我暂时还抓不住它。
一次浏览社区网站的时候,看见有人在讨论TW的面试难度貌似都是全球第一,记得毕业的时候就见过TW的招聘,但当时对自己技术方面信心不大,所以没有去尝试。后来也一直在关注它,一些朋友也在里面工作,聚会的时候也都会聊,对他们那种自由的氛围、敏捷开发的思维、结对编程的模式很是向往。于是,我尝试投了一下简历。很快得到了HR(LY)的电话面试。说真的,这个电话面试就把我给吸引住了,可以笑我没有见过世面,但是电话面试能把技术问得如此深的HR我还是第一次见,而且态度也非常好,就感觉两个朋友在聊天,对LY点个大大的赞。去进行逻辑面试的时候,走进办公室,不是说环境多好多好,而是那种氛围,我喜欢,我对自己说这是我的菜。进入结对编程和技术面试的时候,面试官也都非常好,尤其是结对编程,给人感觉就跟真的“战友”一样(给YD还有另外一位仁兄点赞)见网上帖子经常说TW的人给人感觉不好,觉得他们喜欢装。说实话,我的感觉还真不一样,我觉得挺好的,挺亲切的,我那些在里面工作的朋友,哪怕是最后技术面试的Leader们(给CQ、GL和WL点赞)
回想一下整个interview过程,大概大半个月的时间,把一些自己觉得自己没做好的总结一下:
电话面试:要诚实,英语平时要多说多写。(我这关英语对话没做好)
逻辑笔试:看清题意,题目并不难,用程序员的思维方式去思考就好。一定要仔细。
HomeWork:一定要自己独立完成的;千万不要急着下手,先把类图设计好;(前面这两点会让你更容易过结对编程)不要为了设计模式而设计模式,用测试驱动开发;不要忘了重构。(我的重构和测试由于平时用得少,没有做好)
结对编程:不要紧张,如果HomeWork是你自己写的,这关你应该也没问题,关键是要放松心态,不要把面试的人当面试官,而是要当真的战友、伙伴,发挥你平时的工作状态就好了。
技术面试:还是不要紧张,平时多注意积累总结,保持心态。(这关可以说是我发挥最差的:说话有点急了,而且有些问题没有回答好。比如:请求方式除了get和post之外还有什么?举5个以上常用的java类库?(平时用快捷键用惯了,Ctrl+Shift+O就自动导包了,一下紧张想了一会才说出来)b/s和c/s的区别以及你对他们的理解。)
面试总结:TDD和Refactor不熟练;技术深度不够!!!
发现问题就要解决问题
学习方法方面:学习一种东西,就拿spring来说,不是光会用它就够了的,还要掌握它的原理,比如配置文件的加载顺序了,interceptor、filter的加载过程啦,这些也是你必须掌握的;还有,拿到开源的东西,也不是光会用,你最好打开代码都看看,人家为什么这么写,这么写的好处和缺点在哪,你能对开源的东西贡献上一份你的力量就更好了。
学习技术方面:既然技术深度不够,就加强自己的技术深度。将spring+struts+hibernate+js+jquery+webservice重新再学一遍,按照上面的学习方法来学;掌握TDD和Refactor;掌握敏捷开发模式;以后跟朋友聊天交流能用英语就尽量用英语,包括博客,保持英语水平。
业余项目方面:双色球预测软件Web版完成;改版学工网完成;改版就业网完成;模拟云脑系统完成;SSH建站框架系统完成。
其他方面:多参加技术party,交流给人带来的收获是非常巨大的!
决定
如果这次最后一丝希望成功了,把自己态度摆正,就把自己当应届毕业生一样,好好学,好好干。
如果失败了,在哪里跌倒,就在哪里爬起,每隔一段时间,自己如果感觉准备好了,就去TW面试一次。保持竞技状态,也为自己争取机会。
对自己想要的东西绝不轻易放手!要做打不死的小强!
后记
有个人,她每次都会跟我说:是金子总会发光的!
有个人,她每次都会跟我说:你是最棒的!
感谢一路都有你们的陪伴,你们是我人生最大的动力!!!