致我的2014!
昨天阿里的师兄带我到部门看了一下,团队的氛围很和谐,主管人也很好,看到我来了也主动跟我打招呼。也跟着团队们听了一个技术讲座,还有可乐零食吃。整个过程就感觉像一个班级再开个会,可以发言,可以开玩笑,很有校园的感觉。同时,牛人们听的过程中也在调试自己的程序,估计学习下操作流程就够我忙一阵子了……明天就要入职,今天晚上主管团队吃饭,师兄也把我喊过去了,跟大家熟悉了一下,感觉还是挺能融入进去的,哈哈~~
今天想把对我意义重大的2014年总结下,给我以后也是一种激励。
本来我是很想学数字集成电路设计的,尤其是对半导体工艺方面的东西,相对来说有领悟力,感兴趣去研究,数学功底相对来说好一些,对推导公式也没什么可忌惮的。但导师做的是嵌入式方面的东西,一下又过渡到了计算机方向。又重新开始学习c语言等知识,说实话,我本科是c语言的课代表……但我对这方面一直不感冒,没太多自己的想法,看到什么只能记着。没办法,只能硬着头皮上了。也就一点一点的学着,搞嵌入式底层驱动,内核太复杂,什么很多东西都要靠着师兄帮忙才行。很没成就感,也逐渐打消了自己的积极性。由于上一届有师兄直接找的互联网的工作,进了阿里巴巴。于是想,反正嵌入式相关工作和互联网公司都是干编程的,都一样累的要命,还不如跨的彻底点,直接跨到计算机行业。于是乎,从2013年年底,就有了找互联网工作的想法。
2014年年前一个多月才开始学数据结构,以前知道“栈”“队列”,一个先进后出,一个后进先出,就知道这么多……但对怎么去实现一点都不了解,完全没概念。学这本书的时候很吃力,过年期间只看了严蔚敏的视频。真正开始准备,也就到了年后回到学校。由于上届师兄说算法很重要,当看完了数据结构,就开始看《算法导论》。这本书是某些高校研究生才开的课程,老师也只讲一下,很多学生也不会细看这本书,因为太枯燥,都是理论推导。当然这些我是后来才知道的,算法导论里面都是一些排序算法、树形结构算法、图的算法等等,我以为计算机本科的时候都学过,老是感觉自己看的人家本科就会了,只能一点一点去补。
这本书我啃了好几遍,不光一遍一遍重复看,还参考网上关于这方便写的博客,仔细去研究。很多人说没必要看算法导论,知道怎么去用这个算法就行了,不用知道什么原理。我是挺推崇这本书,因为我学一个东西的时候,特别是这种逻辑性的东西,我要知道它是怎么来的,我才有兴趣往下研究;也可能很重要的一点,是我的数学相对较好,看推导过程不是很吃力。在这里吹一下,大四的时候有资格参加全国大学生数学竞赛总决赛,整个河南省数学和非数学专业共8个人,可能非数学专业也就三四个,但由于跟研究生复试冲突就没参加比赛,只得到省级一等奖。
看了基本的算法,也就开始学习互联网公司要求的东西,涉及到网络信息传输,需要学习TCP/IP协议,看了《TCP/IP详解》和《计算机网络》,又看了《UNIX网络编程》卷一和卷三。基本了解一下网络传输是怎么个机制。
七月份的时候,跟着孙国玥一起去北京参加一个算法培训班。组织的人在CSDN上写的博客很好,一方面是奔着名气去的,很重要的原因是,我不是计算机出身,不知道计算机关于算法到底学到了一个什么样的程度。平时都是自己看,自己感觉计算机的人应该都会掌握,就下功夫去看,有人指导指导也好。
去了以后才发现不光有面临毕业找工作的学生,有已经工作的人,在一些公司上班包括百度、阿里的员工,还有一个清华的博士。可能由于工作中用的算法也少,偶尔用到时也都忘了,想充充电吧。讲课的是邹博,中科院博士毕业后在高校当老师,讲的很好,把我学过的东西也都梳理了一遍。上课期间也很高兴,讲的东西,我都看过,并且我的思路也很清晰,还能提出一些问题和老师交流。另一个让我兴奋的地方是,碰到了很多牛人,对问题的看法和角度也不一样。在这里特别感谢汪建伟和郭威的收留,由于是周六周日上课,连上两个星期,就一共在北京呆了十天。
整个培训过程最大的收获:1、找到了自信,我学的东西也不少,甚至学的还挺好。2、跟工作的人交流后,知道了做leetcode网站上题目的重要性。
于是回来后,就每天拼命的做leetcode上的151道题,去北京之前做了二十多道,也只是简单的题目。回来后,二十天左右将题目全部做完。这个网站上的题目写过后,明显感觉看《剑指offer》轻松了不少。
大致说了下,整个的学习过程,下面说说学习的几个月我是怎么度过的。
1、每看一本新书,我基本能以每小时10页的速度看,整天下来能看七八十页,甚至一百页。当然,保证我能看懂里面说的是啥。所以整个下来我4天左右就能看完一本300左右的书。
2、由于早上九点要进实验室,我很长一段时间都是早上7点半多点就起来(我之前都是到九点左右才起床的),到食堂买个面包,直接骑车到图书馆看书。看一个小时后再去实验室。
3、十一点半到吃饭时间,接着去图书馆看书到十二点二十左右,才回去吃饭。十二点五十左右到寝室,有时还会看半个小时,再上床睡觉(之前都是上床刷微博,后来感觉时间紧迫才看书的)。
4、下午去实验室,晚上到清华吃过晚饭,都去图书馆上自习。呆到晚上十点闭馆。
5、回寝室洗漱后,十一点左右安心看书,到十二点多。----之所以会这么抓紧时间,因为我一直想,每个小时看十页书,就光晚上这段时间,我半个多月就能看完一本,不想这个时间浪费掉。
6、最喜欢星期三的下午和周六周日。因为这段时间不用去实验室,完全可以在图书馆泡着。因此,我连续两三个月完全没有周末,一有时间都会去图书馆。可能唯一放松下的就是,中午睡到三点后才去图书馆。
7、在北京期间,除了两个周末去听课,剩余时间都在北大软微学院的图书馆呆着。
8、由于以前经常玩qq空间,喜欢跟朋友们互动,在2月23号那天彻底关闭空间访问权限。以此来遏制自己,但万万没想到,万恶的微博让我沦陷了~~~~(>_<)~~~~
看的相关书籍:
1.数据结构--n遍
2.算法导论--大概4遍
3.TCP/IP详解一--2遍
4.计算机网络--1遍
5.UNIX网络编程卷一和卷二--都没看完,前半部分看两遍
6.剑指offer--2遍
7.编程之美--1遍
8.程序员面试宝典--看其中一部分
9.计算机操作系统--3遍
10.C++ primer plus --2遍,只懂了皮毛
11.Leetcode 151道题
12.写了CSDN博客,将自己的思路总结下:http://blog.csdn.net/a45872055555
大概这么多东西吧,我读书喜欢第一遍对整本书有个大体印象,第二遍以后再开始仔细找前后关系,直到找到对这本书的感觉。所以一遍不行两遍,所以有的看了好几遍,也有的看了几遍也没找到感觉,时间来不及就放弃了。。。
下面说说找工作的事吧。在9.6号去哈尔滨的时候,我已经不想那么多了,本来对进阿里巴巴就不抱太大希望,也只是定个目标,最后能进一个二线互联网也好;另外,回顾这几个月也确实对得起自己了,找不到合适的工作也没办法。
期间还得了感冒,本来计划去哈尔滨后好好再看哪些东西,事实证明,根本没心情没状态去学习。12号阿里的面试也是稀里糊涂就进去了。一面的面试官很好,也很专业,看我的项目就直接扩展的问用别的方法呢,还问了算法。问了一个“n个房间找出连续m个空房间给m个人用”,由于紧张,就说了个n^m的方法,然后面试官说想想数据结构,但想数据结构的过程中突然想到有时间复杂度为n的方法,直接设置个变量就行了,给面试官说了后,他就在电脑上敲,应该表示赞扬吧。但还庆幸我能想出这个方法,因为他让我想的数据结构来实现我没想出来……然后就是二面,二面的人更好,随便跟我聊,还问实验室多少人,负责我这个项目的有多少,当彻底了解我的情况后,就突然问了专业的问题,虽然没回答好,但他对我的表现还不错,我出去等结果之前就大概知道能过。然后就是HR面试,关键测试你性格方面的吧,问了“如果你工作中遇到压力会怎么办”。又问了一个很经典的问题“你从本科的测控转到电子,研究生又搞嵌入式,找工作又跨到互联网,整个过程有没有后悔过你所作出的决定”。我直接给她说,我高考两年语文都是84分没后悔,之后的事情就更不用后悔了……
其实被虐的最惨的还是在面百度的时候,由于我签约阿里的时候,正好百度笔试,还好让我霸面了。我一面对应着别人的二面时间,面试官春老师是个很厉害的技术牛人,整个过程只考算法,看你逻辑思维能力强不强,我感觉被虐的很惨,没回答完整。面试过后,我说:不好意思,答的不好,让你失望了。春老师说:我没觉得你答的不好,我面试这么多年,出的五个题目没有一个全部答完整的,如果你们都答对了,我出的题目就有问题。听到这句我就安心了。我的第二面已经是HR面了,以为还会像阿里那样看看你的人生态度,没想到,接着问技术问题,让我讲我的项目……面试过程中发现我只进行了一面,又专门给我出了几道算法题。看来百度HR都是技术达人啊!面试下来,感觉应该差不多了,已经HR面了,就不加第三面了,没想到百度专门安排人从北京打来电话进行电面。面试的问题更叫一个难,我当时就想撂挑子说,您是不是有时间规定必须面试一个小时,没有的话,要不就这样吧,我看我也不行了,也不浪费时间了……这是想想那场面还觉得很囧……但没想到的是,百度竟然让我通过了。也不知道他们具体怎么个评分机制……
再有就是面试腾讯,一轮游,问的问题面广,而我也确实只有半年时间,只能专攻算法,其他的东西也就听天由命了。
感觉整个过程下来,也有一些运气吧!毕竟做的还是有一定差距的。希望继续努力吧!
感谢2014这一年所做的努力,感谢研究生期间能碰到那么多小伙伴。明天就要上班了,希望能有一个好的开始!工作了肯定很辛苦,希望能够拿出以前的状态投入到工作中去!还是那句话:奋斗吧,少年!