瞎扯淡 记 Dji 的一次面试。

zephyrsails · 2016年03月18日 · 最后由 msg7086 回复于 2016年03月23日 · 7106 次阅读

这是一篇没有任何技术意义的瞎扯淡,看到有前辈说不该透露面试细节,所以也不会透露,本来是应该写在日记里的,但我这回鬼使神差的想把它写在这里,这次面试是我人生的一个转折点,如果通过了那么我就会走上另一条截然不同的路。结果是没通过,但这一周依然让我受益良多。觉得婆妈不要紧,别看就是。

接触 ruby7 个月,给一位大牛同学的小公司做过一个 ruby 后台。

我大学三年零零星星接触过很多语言,真的很多,但每一种的水平都远远达不到能去面试的标准,但有一点,都拿来做过项目。我只想着先多涉猎,再做选择。

在 Ruby 之后第一次有了一种感觉,那就是我可以用程序来做任何事。

任何事

工作之余用 ruby 写了博客,还写 RoR 写了一个网页游戏爬虫,这个爬虫让我用两个月的时间超过了许多 2 年游龄的玩家。现在我在用 ruby 做毕业设计的实验。

也许 Java 或者 C++ 学久了也会有这样的感觉,但现在给我这种感觉的是 Ruby。

实习那时候是大三下学期。大三上学期在背单词。

没错,本来是想出国,大三下实习的时候晚上 (加班) 回来就 DIY 申请材料,现在申到了一个前五十学校的 CS 专业,并不突出。

但是接到了一位热情的猎头电话,说大疆招人。

我舍友参加过大疆的比赛,我知道大疆意味着很多东西,我说要是能去大疆,就不出国了。

最开始是性格测试,很有意思,两部分很快就通过了。

然后是 HR 面试(不是技术面),交谈一半 HR 问我有没有系统的学过Ruby,我答出了我对我使用过的所有语言的统一的答案:没有。

我向 HR 要了两天时间来准备。最后的面试安排来看,是一天半。

复习一开始我就在论坛找到了这篇帖子,发现除了用过的 gem 我能细数,其他的我好像一道都不会。

搜索答案的时候打开了RubyMonk

系统的学

我想到了我的软肋。

我一直以来都认为这种方法不适合我,因为它的确不适合我,不是我没试过。但总之我的编程知识基本上都是在实践中学的。

而在实践中学不学的到,其实很大程度上看运气,我感觉我自己的运气还行。

最后我还是打算用这一天半的实践来系统的学一下 ruby。

我看完了一章半,打算面试后把剩下的内容补完,这一天半过去之后感觉豁然开朗,许多过去困扰我的问题迎刃而解,我躺在床上闭着眼都能想到自己过去一些对象设计的是多么蠢之类的事情。的确是印证了一句话:磨刀不误砍柴工。

但是我想适用到我身上的情况是,如果我没砍过柴,我的刀肯定不能磨得这么快。要不是我的实习,我肯定不能这么短的时间里看懂 RubyMonk 这些章节上的每一个字。

看完这一章半,回到那篇帖子里,前半部分不涉及 rails 的问题我都会了,我有自信能给没接触过 ruby 的人讲明白这些事(这也是我所谓"会"的标准)。 后半部分涉及 rails 的知识,还需要在好好学学,除了 rails guide,希望各位前辈能有些更深入的材料推荐。

故事的结果

也许这还算不上是一个故事,一个半小时前我的技术面结束,面试官很不错,我也面试过其他(非 Ruby)技术岗位,是比较的出来的。我有卡壳的地方,但总的来说可以讲发挥了 80 分;

止步于此,猎头大哥告诉我沟通有问题,基础不突出。

这个结果我服。在电话里面试官就是这么跟我讲的。

沟通问题吗,我做过班长,在学校的几乎所有组队项目里一直都是由我负责组织工作;作过主持人和国旗手,在充分的准备之下我的英语演讲能让听众(同学)忘记下课。但是我深知自己不是能随机应变的那种,慢热,在生人面前即便在程序员中也只能算是内向的。

但应了老友记里钱德勒的一句话:“面试又不会持续好几个月”。

也许是紧张。有一个问题我挂上电话的刹那就想到了清楚的答案,但在电话里却只能支吾。

我爹跟我讲过紧张不是借口,他跟我讲这话的时候我驾考科目二挂了。他当时所谓的“要有必胜的信念”,我听来很不屑。

但回想起来,老爹说的有道理,我高考前的心态,相比科目二一考,以及这一次面试前的心态是不一样的。

高考是我高中以来考的最好的一次考试。

我那时候知道我只有一次机会。

将来怎样,还不好说。

这是我堂哥的咖啡店门口写字板上的一句话。

现在我要走上另一条路了,专心做完我科技感满满的毕业设计,别辜负了导师和自己,给没有任何科研经历的自己打点科学的基础。

然后去美国,去那个曾经认为很美,现在也觉得不赖的国度。

除了 Ruby,可能将来还要仔细学学 Java,因为奇怪怎么 leetCode 上面总是 Java 的程序运行速度遥遥领先。

错过大疆,更多的未知和变数又回到我面前。

我也曾立志过一个充满未知和冒险的生活,那么我现在就是在这样的路上,又有什么好说的呢?

话说那个网游是咋回事?求透露诶~~~ 我倒是想用 Ruby 做科学计算,但是做不了,Ruby 并不能做任何事

#1 楼 @cqcn1991 是一个叫Ogame的页游的爬虫,自动做一些事情,类似 qq 农场自动收菜,但是比那个要复杂一点,做的时候还不知道这算是外挂。 现在已经不玩了,因为不想再花钱租用国外的服务器了(国内连接很不稳定)。

科学计算的事情不了解,不过在尝试一些我也不清楚算不算的上科学计算的东西,我这方面知识不多。“做任何事”只是一种比方,也许“做很多事”,更恰当一点。

#1 楼 @cqcn1991 请问你最后是用什么语言来做科学计算的呢?

#3 楼 @zephyrsails Python, 用的 Ipython Notebook,具体包括数据分析、画图等等。这些 Ruby 都做不了

一个简单的例子: https://nbviewer.jupyter.org/github/cqcn1991/Wind-Speed-Analysis/blob/master/Rome%20Artifact%20Detection.ipynb

#4 楼 @cqcn1991 Python 这方面的库貌似比较完备

好奇的是,没有基础知识,怎么做项目?依葫芦画瓢么?

Java 程序的速度快不奇怪吧,JVM 应该是最快的虚拟机了吧,除非有什么不为大众熟知的黑科技产品。 曾经.Net的虚拟机应该是快过JVM的,毕竟有一些比JVM厉害的优化功能,例如C#有值类型可以在栈上创建,而Java对象都是在堆上动态分配的。 但我去年做过一个测试,一个计算密集型的算法(光线跟踪),在Windows平台上,Java实现的版本比C#快不少,和C++写的原生代码也只有倍数左右的差距,简直碉堡了。

很好的一篇分享。。。将来怎样,还不好说。嗯。也许吧。

赞一个,相信会成功的

其实还是出国好,眼界会开阔很多。排名 50 内的 CS 已经很好了,你让我们这种排名 100+ 的 CS 怎么活啊。

11 楼 已删除

无人飞机

#4 楼 @cqcn1991 谢谢,见过大神用 python,看来值得学习。

#6 楼 @xiaoping_rubyist 的确是依葫芦画瓢,说很大程度上看运气就是说的这个,运气好能找到好葫芦。

#10 楼 @msg7086 楼主弱在没有科研经历,没找中介咨询。如果层主是大三或之前,抓紧科研,中介的话我不知道到底值不值,一些相关资料楼主是去一亩三分地和学校官网看的。

#11 楼 @adamshen 应该去对综合素质要求不低的公司,随便就签的公司不能去。。。

#16 楼 @zephyrsails 工程师的话出国应该还不错。我当时放弃出国就是因为不想当工程师,往产品策划这边转。出国反而离市场远了,还不如在国内边读书边打磨

看到你在努力,这就最好了,加油!

#16 楼 @zephyrsails 哈,我早就毕业了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号