“程序猿”的大学回炉重造记

61
71
5
  1. 云栖社区>
  2. 博客>
  3. 正文

“程序猿”的大学回炉重造记

大数据史记 2017-06-13 18:14:44 浏览12670
展开阅读全文
摘要:十余载寒窗,一朝迈入社会,翘首以盼中结束的学生生涯往往也是纠结的开始:目光转向同学斩获的各种offer,两手空空的不甘与无奈谁人能懂;带着欢快的心情走向工作岗位,竞争的激烈却让自己处处碰壁。在云栖社区与云翼计划联合主办的《首届互联网新兵进阶在线峰会》上,阿里云开发工程师犬虫主要介绍了他进入阿里的面试经历,以及在阿里巴巴这所大学中学习到的东西。

本文内容根据演讲嘉宾分享视频以及PPT整理而成。


今天主要分享一下我与阿里巴巴的故事,希望能够对于有志于加入阿里这所“大学”的同学们有所帮助。大家都知道马云大大之前是做过老师的,所以马老师创办的企业其实也非常像一所大学,今天就与大家聊聊自己对于阿里巴巴这所“大学”的印象,在这里的学习经历以及感悟。

首先就和大家聊一下大家最关心的事情,对于大家而言,比较关心的就是如何进入阿里巴巴以及在阿里能够如何快速成长和发展。那么下面就和大家聊一下如何进入阿里巴巴以及我自己的面试经历。

1.我的入学考试
5e192430100e98c79b7a8d32f1d03fdc887259cf

最开始我知道阿里巴巴这个词的时候是源于关于淘宝的一些新闻。其实我在大学本科的时候学习的是通信工程专业,这个专业出来的对口专业本应该是华为等一些硬件企业,但是峰回路转,等到我快要毕业的时候,整个互联网的形式越发地热烈起来了,反而是硬件厂商的日子感觉有点开始走下坡路了,所以我在毕业的期间又选择了考研。由于本科学习的是通信工程专业,并没有特别适合于互联网浪潮的缺口职位来面试,所以考研的方向是软件工程相关专业的研究生,在这个专业学习了两年,也经历了一些困难之后终于进入了阿里巴巴。在最开始的时候其实我在阿里的岗位其实是测试工程师,在这里分享一下关于面试的一些东西。


在最开始其实经过内推进来没有首轮的笔试,然后就是两轮电面之后的一轮技术的现场面试和一轮HR面试,在最后的技术面试和HR面试之前的晚上,我自己非常紧张,因为我总觉得我的能力可能还是比较薄弱,不一定能够顺利地通过面试,所以那天晚上我就一直在想,阿里巴巴究竟需要什么样的人?我自己有什么样的特质能够符合阿里的需要?所以思来想去这样一整夜都没有睡着觉,在后面的时候无形中翻到了一篇文章,那是关于筷子的故事。大家对于筷子肯定不会陌生,大家每天吃饭都会使用筷子,但是我们对于筷子的了解又有哪些呢?为什么筷子正好是七寸六分长呢?这些问题又来自哪里呢?其实筷子是可长可短的,断了的筷子也照样可以用,而筷子的长度印证的却是中国文化的底蕴。
2eb5c0b516beb979d965cd95a7f082406e496bb9
那天晚上我就在想这些问题,但是这些东西其实与自己的面试一点关系都没有,但是还是思来想去睡不着觉,就这样参加了第二天的面试,在刚开始的时候,技术面试官同学也是非常耐心地问了一些问题,面试同学首先抛出了一些简单基础开发的技术问题,然而我自己在这一方面的积累不是特别深,开始有点支支吾吾答不出来。最后想了想应该怎么办,感觉这次面试要完了,于是就回头想想昨天晚上想到的一些事情,然后就开始和面试官讲,什么样的测试才是正确的测试思维,就拿刚才提到的筷子来说明,筷子这么长并不意味这筷子的功能就需要它这么长,而是其背后由于一些文化的含义寓意着它需要这么长,所以对应于测试环节的了解而言,其实在整个测试中,除了功能测试以及相关的测试之外,是否还需要有更多的人机交互以及相关的一些比如像背后的底蕴的事情来关联呢,于是就将这个故事讲给面试官,面试官也是哈哈一笑觉得我的脑洞比较惊奇,有点脱离技术问题,但是还是顺利进入了后面的面试。在后面的面试中与HR同学聊的应该是比较开心,所以整体而言还算是比较顺利的。所以从整个过程看来,自己还是有一些欠缺的,基础知识方面亟待补充,而且对于面试官或者HR究竟需要什么样的人需要更加了解,可能是因为我在展示自己的环节上有一些不同于其他同学的思考和想法,所以才能够顺利地走下来。

总结而言,相关的面试技巧就是这么几点:对于基础而言,这方面真的很重要,在面试之前我也是殚尽竭虑看了很长时间的书,最后还是觉得准备的不充分,可能这个过程对于大家而言都是比较痛苦的,但是这是每个人都需要面对和经历的事情。而自己的优点可能在于愿意去思考问题的不同角度来反推这个事情是不是合理的。其实对于新人而言,最重要的在于思维性,就是需要能够看到问题的不同层面,愿意去深入地分析这个问题,而不在于目前的技术积累。因为技术积累可能在目前而言是比较可靠的,但是对应而言,更重要的在于能够思考和继续去学习。

6c5aa6d0e9d0b941a8632ba7d24ba4f63e73b5ca


2.我的学习之路
d4040e7a97a1813b9f5b81350590fe77985ea8cc
接下来分享一下我来到阿里巴巴之后的一些经历,在进入阿里巴巴之后我最开始从事的是测试工作,主要是面向于阿里云官网的一些操作,验证页面的操作是否正确,功能是否正常,就是每次迭代发布之后的功能是否符合预期的要求,保证不会出现一些常见的Bug。对于我而言,最开始的工作感觉有点小儿科了,点来点去的事情其实非常无聊,所以就在想一些自动化解决的方案,所以也做了一些能够自动进行回归测试的Demo。
43b26cc58d0b031e517b6b787eaa31ce516e2644
因为阿里云其实比较赶潮流,也是向着谷歌等公司进行学习,所以大概三四个月之后开始从测试转向开发。在阿里云通用的语言是Java,但是在我之前学习的时候基本上没有接触过Java。Java对我而言最繁琐的莫过于一堆莫名其妙的各种配置项以及各种框架的事情,刚开始的时候我觉得这个真的非常难,并且感觉非常抗拒,但是上面的意思是我必须要学,也必须要去做,然后我就被投到了一些项目组中进行功能开发。在刚开始的时候,我觉得这是一件非常有挑战性的事情,但是我的基础真的是非常差,所以为了这个事情就需要加班加点搞起,深入之后感觉其实所有的事情并不是那么困难,可能在刚接触的时候会觉得需要掌握的知识点比较多,那么在最开始就慢慢地进行知识的积累。我最开始上线的一份代码去修改一些很简单的配置项,给人的感觉就是开发工作其实很简单,尤其是在现成的平台基础之上的开发工作,不需要去管平台基础的东西,简单而言只需要往上堆业务就可以了。开始时我觉得比较无聊,后来慢慢开始了解框架背后的事情,因为对于真正的做业务而言,业务逻辑除了if-else还能有些什么呢。于是后面开始了解业务背后一些事情,比如整体的流控框架、整体分布式流计算控制等一些。

可以说从2015年开始到2016年3月份的这段时间自己经历了一次比较大的洗礼,我们团队三个人进行封闭开发使用了三个月的时间上线了一大块的功能,这个功能由于是在线的,所以风险非常大,当时修改了大量的业务逻辑,我个人的感觉是参与其中能够了解很多细节的东西,也成长了很多。但是这次发布却非常不顺利,发生了一次比较大的故障。那天发布的时候就非常不顺利,发布那天晚上的时候,我们准备凌晨发布,准备了一天之后到了晚上12点,开始去做准备发布的事情了,从这时候开始一直在出现各种问题,当我们努力解决了很多问题之后事情并没有想象的那么顺利,这时已经到了第二天的十一二点了,但是还是存在很多的问题,于是马上开始继续修复代码,所以整个发布过程给人的感觉就是一波三折,但是我从中学到了很多东西,经历了一次比较大的洗礼。对于我而言,有这样的一个机会去了解和参与到这么核心的工作,并且面对这么大的流量切换过程,阿里给我们的平台非常大。其实很难想象有上百万流量、上百万UV的情况下去做一些事情,这是一个方面。通过整体开发的相关工作,我了解了很多东西,也成长得很快,对于一些技术框架背后的相关事情我开始深入地去学习了。

总体而言,最开始的时候我只能是拿着类似于《Spring实战》这样的书本来看,感觉一头雾水、不明不白,后面慢慢来看之后了解了更多底层的东西,也开始发现有很多东西我们可以做的更好一些。这次故障给人的感觉就是对于整个人的洗礼,让我产生了对于故障的敬畏并且让自己能够有机会参与到其中的一件事情,我觉得非常开心。回忆整个事情,虽然项目组出现了很多的人员问题,所以导致整个工期非常紧,但是我感觉全心投入的感觉非常棒,所关注的只有一件事情那就是将这个业务做上线,虽然结果不太乐观,但是对于个人的成长而言,是一个比较大的洗礼。经历了这次发布之后,后面的事情就慢慢开始变得顺利起来了,对于老大的层面而言,可以更有经验地应对这样的事情,我们也开始在后面做一些更细节、更严谨的发布流程的制定以及程序流程的保证。

3.我的大学生活
1f4a5393ca5c5efac069e87e59f8b4e7467e729d
接下来分享一下除了学习和成长之外,阿里给我的印象。对于我而言,阿里真的非常赞,尤其是整个双11晚会或者其他的事情,公司比较倡导的就是“快乐工作,认真生活”。对于工作而言,当你全情投入的时候,就会乐在其中,这时候就会觉得所有的事情都易如反掌,虽然很多时候需要面对挑战,但是却都会慢慢提升整个人的境界。有时候觉得有点亏待生活,对于生活而言,公司可能就是全部,但是公司里面也有各式各样的东西,举个例子来说我比较喜欢打球,公司内部就有篮球场能够满足我的需求。对于大家都有所了解的事情,比如双11晚会,我自己经历过三次,从2014年到2016年,整体而言我在其中扮演的角色可能越来越重要,最开始的时候可能就是下班了,好了自己去玩吧,可以去手机淘宝。到了2015年的时候就开始跟进线上的事情,整体而言就是需要在11号凌晨进行一些监控流量并保证服务正常运行。在2016年也基本上是在站点上进行维护,保证服务能够正常运行。总体双11给我的感觉是大家买的很爽,但是对于我们而言真的很痛苦,两班倒、不休息一直等到下一班同学来接班,整个过程中给人感觉像是过节一样,非常累但也非常有意思。

后面分享一些其他的事情,比如阿里云的事情,每年都会有开年吉利,下图是每个人收到了一朵竹,然后各种活动中会发一些纪念品,对于阿里而言,发的比较多的是淘公仔。每个项目相关的团队都会发一些杯子,虽然只有简单的一个名字,但是会觉得非常有意义,整个参与的事情也给人感觉自己受到了重视。还有篮球赛,比较遗憾的是部门内部拿到了第二名,但是相对而言有一群一起打球和调侃的小伙伴,能够在正常的工作之外还可以有业余活动还是非常开心的。刚刚过去的510阿里日给人的触动非常大,尤其是未婚的同事,也希望有朝一日自己能够找到一个她一起参加阿里日的集体婚礼,这是一件非常值得向往的事情。最后附一张与去年与马老师的合照。
57e10439fefbb7aa5577c10694538be44dabc893
总结而言,从最开始对于阿里的误解、不了解到慢慢的理解过来,明白它不是简简单单的一个剁手党最爱的淘宝,而是还有其他很多事情要做,尤其是在风口上的阿里云。对于阿里云而言,整个集团的技术力量都在往阿里云不断注入,很多的技术大牛都在涌向这里,在这里很多问题都可以找到资深的技术专家去了解和询问。对于作为一个程序员的自己而言,往往会出现一些奇奇怪怪的问题,就非常希望能够找到一些技术解决方案,而在我们内部的分享交流网站上就有很多的技术积累,很多的技术问题前人都已经给出了指导了,比如我最开始需要了解的Java编程规范,到底什么样的代码才是大家看得懂的和喜欢代码在内部网站上都能够找到。总之,这是一个非常大的平台,这个平台之上有很多能够学到的事情,所有的事情都能够找到具体的原因以及背后的事情,能够深入地学习和了解。

从2014年10月份到现在将近两年半的时间,整个部门调整了多次,从简单的测试部门转变到测试开发融合,然后转到整体的业务线下。在我们开发项目的时候,可能由于人员变动的原因,时间比较着急,但是新同学的进度往往不理想,这样在做事情调整的时候,如果看到新同学的进度慢就去帮助他了解业务的事情并帮助他完善功能,给人的感觉就是只要你有能力就可以去深挖、探索和学习,就好像有点在抢事情做一样。总体而言,阿里是一个非常好的平台,在上面工作也是一件非常棒的事情,而且在这里也有很多技术前沿会议和讨论可以参与,可以帮助大家着眼于未来的发展。

网友评论

登录后评论
0/500
评论
大数据史记
+ 关注