12

压力益于成长——MemSQL CTO Nikita Shamgunov专访

作者: baiyuzhong 分类:CTO视点, 高端视点   阅读:17,166 次 添加评论

记者 / 卢鸫翔

Facebook上市前,Nikita Shamgunov选择了离开这家能给自己带来丰厚经济回报的企业,与同事Eric Frenkiel一起创办MemSQL——它拥有世界上最快的关系数据库。本次采访中Nikita分享了自己学习的经历和创业感悟。

blackjack , sasom multihand, single deck och european blackjack !For manga som gillar att spela kasino sa ar roulette en sjalvklar favorit. src=”http://www.programmer.com.cn/wp-content/uploads/2013/02/50de61ed9c782.jpg” alt=”" width=”401″ height=”250″ />

《程序员》:你是如何开始编程的?又是什么样的原因引领你进入数据库领域?

Nikita:我高中时在数学上很用功,由于这个原因,从那时起参加了一系列数学和程序设计竞赛。在ACM ICPC竞赛中,我花了一段时间才提高了自己的成绩,第四年时,终于在世界决赛中取得奖牌。

大学毕业后,我在圣彼得堡的一家航海导航软件公司工作,并在那段时间获得了博士学位。在这里我接触到很多数据库,虽然我一直对数据库如何工作感到好奇,但并没有深入探索。这时我收到了微软发来的到总部SQL Server引擎部门工作的邀请,我很兴奋,毫不犹豫就接受了。

虽然俄罗斯领土很大,但人口相对较少,所以微软没有在这里设立研究院;Google虽设立了办公室,但规模很小。不过微软一直在关注全世界范围内的人才,尤其是有竞赛背景的人,尽管当时我的英语并不好,但竞赛背景帮助了我。

《程序员》:你编写的第一个有意思的程序是什么?作为程序员,你通过怎样的方式提高自己的技能?是否有一些特别的练习或项目?

Nikita:14岁时,我用Pascal编写了一个Scrabble文字图版游戏,在其中设计了一些人工智能算法。不过现在看,这个程序并没什么特别,我很快就能写出来了。

我并没有做特别的练习,谈到编程,多写就好了。为了提高技能,一方面要设法提高自己的效率,另一方面即使杂务缠身,我也尽量每天写代码,有时实在太忙,就用Python写测试脚本。我深信,一旦停止编程,许多细节就不能真正理解。

《程序员》:参与程序设计竞赛会占用很多精力,为此你失去了什么?

Nikita:有得就有失,对我来说,一部分是个人生活,另外有些课程我也没专心投入,例如我通过了物理考试,但现在已回忆不起任何内容。不过好在这些课程的意义之一是训练思维的方式,在竞赛中,我也得到了锻炼。

《程序员》:参与程序设计竞赛是否是成为优秀程序员的最佳选择?

Nikita:美国学校的教育很好,有很多优秀的项目能让学生实践,学生也没有空余的时间参与竞赛。在俄罗斯,尽管教育也不错,但并没有很多尖端项目。竞赛对学生来说很有吸引力,通过它能学到算法,学到如何快速编程,并从此开始自己的职业生涯。

在MemSQL,还有3位TopCoder得分很高的程序员,能获得这样的成绩很不容易,不但需要好头脑,还需要花费大量时间,经过刻苦练习。但回报丰厚——能快速地解决问题——分析需求、编码、实验,这都是很重要的技能。

对于感觉在大学中找不到足够资源的人来说,参与竞赛是一个好选择。我的本科和硕士阶段是在乌拉尔州立大学度过的,它算不上俄罗斯的一流高校,因此我选择了参与竞赛。但博士阶段我就读于圣彼得堡国立信息技术、机械与光学大学这所一流学府,从那时起就没再参与竞赛了。

成为优秀的程序员有很多方式,在好的学校接受教育、参与开源软件项目都可以成为优秀的程序员,这其中的关键在于编写代码,在做中学。

另一个要点是,努力选择一个困难的领域。人年轻时,接纳力强,将自己置身一个困难的领域,于成长有帮助。在一些著名高校,如卡耐基-梅隆或MIT,你被置身 于一个困难环境当中,迫使你必须不断练习,尤其身边还充满竞争,进步会更快。在成长过程中,你需要压力,它可能来源于竞争、工作等环境因素。当一个人足够 优秀时,压力也可能发自他内心。

《程序员》:有竞赛背景的程序员有哪些特点,是否也存在不足?

Nikita:根据我的经验,有竞赛背景的程序员善于解决问题,但前提是需要有人为他们很好地定义问题。例如他们能解决极复杂的已定义好的数据结构问题,但当问题定义得并没有这么好,需要自己设计、与他人交流时,可能会变得困难。我确实见到不少人在遇到这种情况是很纠结。

我本人更看重解决问题的能力,对一家大公司来说,各种类型的人才都需要,因此总能找到适合自己的位置。

MemSQL理解这类人,Google、Facebook也理解他们,但并不代表其他公司也能理解。对他们来说,需要找到合适自己的环境。在创业公司,他们往往能成长得很快,因为会面临很大压力。

《程序员》:在ACM程序设计竞赛的金牌榜上,我们常看到“圣彼得堡国立信息技术、机械与光学大学”的名字。请谈谈这所学校的计算机教育情况。

Nikita: 你若希望完成一件优秀的作品,需要从小处着手。尽管学校规模很大,但计算机科学系很特别,只有30人,都是从全俄挑选的精英。同时师资力量充沛,不仅有来

自本校的老师,还有从圣彼得堡国立大学外聘的老师。学生并不需要参与竞赛,他们有各自的研究方向。每年只有10人左右,组成两到三个队参赛,但近年来获得 了数量最多的金牌。

《程序员》:MemSQL 2011年从Y Combinator训练营毕业,请谈谈这个过程中,最有价值的收获有哪些?

Nikita: 在Y Combinator训练营,每支团队在做不同的事业,你会看到有人成功有人失败。感受到强烈的朋辈压力,这是我觉得最有收获的地方。3个月的时间里,Y Combinator主要提供3方面的帮助:首先帮助创始人找到人手建立公司;其次推荐潜在的投资人,这一点帮助很大,为我们解决了资金方面的后顾之忧; 最后会提出一些领域方面的建议,但对MemSQL来说,有价值的建议并不多,因为Y Combinator在数据库方面并没有合适的专家。另外Y Combinator投资的创业公司之间组成了网络,像一个生态系统,大家会互相帮助。

本文选自《程序员》杂志2013年1期,未经允许不得转载。如需转载请联系 market@csdn.net

《程序员》2013年杂志订阅送好礼活动火热进行中

转播到腾讯微博

----->立刻申请加入《程序员》杂志读者俱乐部,与杂志编辑直接交流,参与选题,优先投稿

3 Responses to “压力益于成长——MemSQL CTO Nikita Shamgunov专访”

  1. 编程中国社区 说道:

    小伙子不仅技术牛,人长得也帅

  2. Rita.wang 说道:

    有想创业的想法,还没毕业没有像前辈这么好的技术和人脉,技术。继续努力

  3. 一个是否能够成功,真的都是需要背景的,有些是人为背景,有些则是个人经历背景。文中的大佬真是靠着个人竞赛的经历背景,一步步成就了不平凡的自己,成就了不平凡的事业。

请评论

preload preload preload
京ICP备06065162