`

一个软件工程师在北京的反省

 
阅读更多

转自:http://www.williamlong.info/archives/2717.html

我(软件工程师berlin)于2007年来到北京,在北京工作这些年,先后在NEC、风行、百度几家公司担任软件工程师的职务。NEC是一家具有百年历史的传统日企,在知春路的分公司叫日电电子,我们部门主要从事机顶盒、数字电视上嵌入式软件的研发。风行是一家成立于2005年的在线视频公司,主要做P2P视频点播的业务,而我主要从事P2P后台服务器的开发。百度是一家在纳斯达克上市的互联网公司,我主要在客户端部门的百度影音项目组从事P2P后台服务器开发。

  这些年,在这些不同类型的公司的工作经验,教会了我很多东西,技能上的,做人做事上的;也让我收获了很多东西,例如志同道合的朋友们。作为员工,作为用户,最近有冲动回顾过往,并总结分享一下自己的经历、教训,希望对自己,以及互联网这个围城内外的朋友们有所帮助。

  NEC岁月

  外界对日企有很多误会,其中最大一个,恐怕就是认为日企都很变态,疯狂的加班,低廉的工资等。也许是第一份工作,NEC给我的整体印象不是变态,而是是温馨。入职培训时,公司的技术总监这样对我们说:不论你们在那个行业,都要争做这个行业的Number One! 这句话,随时想到,都让我振奋不已。也许正是这样的勇气,才让NEC屹立百年不倒(虽然现在有些江河日下了)。入职培训时,还学习了很多社交礼仪,例如如何互换名片(把印有自己名字的名片,面向对方等),同期的学员,在当年合作了据称是有史以来最成功的春晚,而很多学员,以后的关系都还不错。

  NEC的加班工资(晚上和周末加班都有法定工资)、弹性工作制(真正的弹性,早上8点到下午5点就可以下班)、出差补助(出差通常都会安排不错的酒店)、学习氛围浓厚(每周的日语课堂;每天中午15分钟的轮流演讲等)、每年一次的国内旅游(一般都有4个左右的目的地可供选择,2008年的旅游地是武夷山、庐山、苏杭等)、超多的假日(入职就有12天;法定节假日通常要多放一天假)、法定之外的个人保险办理,这些都很让人怀念。说起来,作为一家日企,还是非常人性化的。例如某个飘雪的冬天,公司为了照顾员工,特意允许下午4点全体职员下班回家。

  都说大公司学做人。我在NEC学会的一个做人原则就是:不要不懂装懂,坦然承认自己不会的,然后努力去学习。不懂装懂的人不会在这个集体中得到尊重和认可。NEC的李San、凌San作为领导,对我这样初出校门、不谙世事的青年人提供了很多机会,他们的宽容让我至今难忘;而亦师亦友的刘San,是我所见过的真正的hacker,对技术的痴迷,给新手的帮助,以及天真的为人,让我钦佩又向往;才华横溢的小站、小张,作为同期学员,可是我心中追赶的目标和竞争对象;而老吕、华仔和我,则是最佳三人组,我们带头成立的饭团,当年就开风气之先,一时间部门饭团林立。

  很多人都说NEC就像大学,但是大学就有毕业。很多人在学到差不多的时候,就选择了离开。因为作为一家日企分公司,业务严重依赖日方,而分配的业务,在我们一群年轻小伙看来,既没有挑战,也没有意义(没有用户)。没有激情,工资偏低,上升空间非常有限,这些恐怕是大家选择离开的主要原因。

  风行岁月

  在离开NEC之前,我、老吕、华仔三个曾想过做一个火车票订票系统。春运一票难求是众所皆知的问题,华仔用Perl写了个简单的爬虫,抓火车票网的倒票信息,很快就买到车票。以这个原型为起点,我们认为有大量用户,而定向抓取难度不大,因此开工。虽然这个计划,短期内就夭折了,原因很多,但给我印象深刻的是,在NEC,我是学习不到如何在互联网这个浪潮中,捞到属于自己的一桶金的。大多数离开NEC的人,都选择了如汤姆逊、T3G等同类型公司,而我,以及之后的华仔,都选择了互联网。

  虽然还有其他选择,但到风行的理由很简单,风行所在的锦秋国际也在知春路上,离我住的地方很近。待遇虽然很一般,但毕竟让我迈入了互联网的大门。刚到风行时,风行的用户量是280万左右,离开时,有550万左右;离开半年后,用户量猛涨,有900万左右。作为一个软件工程师,维系一个百万人在线系统,还是颇有挑战的,尤其对我这样没有什么经验的人而言。

  在风行的岁月,技能有了大幅度的上升,与此同时,兴趣也是多种多样。最有激情的时候,会在每天下班就打印一份技术文档,等公交车时,就在昏暗的灯光下学习,回家拔完饭就开始实践,从Linux系统/网络编程、到各种命令行工具、到网络协议研究、算法、开源项目,以及一些稀奇古怪乏人问津的东西(例如用LaTex写作文档、Metapost绘制矢量图、graphviz绘图)。计算机相关的书,不论温故知新的,如《Unix编程艺术》、《C++对象模型》,还是一见如故的,如《程序员的修炼之道》、《编程珠玑》、《Python源码剖析》、《卓有成效的程序员》、《敏捷软件开发》、《重构》,还是装饰书柜的,如《怎样解题》、《如何求解问题》等等,见一本买一本。多次搬家的痛苦,并没有消弱我购书与阅读的兴趣。

  除了出自兴趣的自修,在工作上遇到的很多事情,例如流量异常分析、程序崩溃、用了很多时间才找到的bug、算法调优、运营学习、一时无法解决的问题等等,也都事无巨细的记录在案。再离开风行时,差不多积累了10万字左右的笔记。我记录笔记的方法,也比较原始,只用Vim+记事本,很少发到网上,因为是写给自己的,行文简单精炼,给其他人的话,就要修饰文辞、制作插图等,这是不同的价值。记笔记是个初级的习惯,只要强迫一段时间,就能让自己终身受益。我从风行记录到百度,经常都会翻出笔记,给同事发邮件,解释某个问题。

  然而,兴趣驱动的学习,也是一把双刃剑,让你快乐,也让你痛苦。因为兴趣的泛滥(技术之外的诸多兴趣是技术兴趣本身的2倍以上),让我深陷困惑,不知道自己是否真的适合做技术;也正因为兴趣泛滥,所以真正精通,拿得出手的东西不多,或者说在任何一个领域,都不能做到Number One这样的自我期许。后来和公司的大Boss聊过我的困惑,但却终未释怀。此后不久,就离开风行,希望到一个更大的空间,看看这个世界。

  当然,离开前,还是要浓墨重彩的说说我的那些朋友们。HZ是另一个亦师亦友的大拿,是他最先让我关注行业本身,而不是仅仅关注于技术。很多技术人员容易范的一个错,就是懂技术不懂行业。对行业的了解,意味着,要大量的使用这个行业已有的产品、了解他们的运行规律(例如Qvod的运作模式就明显和风行、PPS、奇艺、优酷不同),谁在用你的产品,怎么用的?以及非常重要的对统计数据的理解。另一个好友是HR,哦,HR不是Human Resources的缩写,而是他鼎鼎大名的缩写。说来HR大我有十来岁吧,虎背熊腰,中东恐怖分子的造型。每次公司出游,我们都住一间房(呵呵,莫误会,是标准间双人床),找人玩杀人,以及天南海北的瞎扯。HR最让我受不了的是他的磨叽和拖拉,最让我受得了的是我调侃和嘲讽他时毫不介意的风范。YZ是我在风行最强有力的竞争对手,年龄相仿,到公司也是前后脚,虽然他做客户端我做服务器,但当时风行研发也就二三十号人,YZ对工作本身的专注与一丝不苟,相比我的随意和三心二意,就形成了鲜明的对比,再加上此人精力旺盛,战斗力强劲,又是数学出身,因此一直是我追赶的对象。此外,公司的两位大Boss,罗总和唐总也对我关照有加,偶尔的对话,总让我事后深思许久。

  总的来说,在风行比在NEC有了更大的成长,教训也更多,大概有这几点吧:

  * 解决产品线上的实际问题,比学习新技术更重要。

  * 帮助别人解决问题,是提高能力的捷径。所谓专家,就是在一个有限的领域里,把所有的错误都犯过一次。

  * 拓展兴趣,坚持学习。不要囿于技术一隅。和提高技术能力同等重要的是,深入学习、理解你所在的行业。技术是为市场服务的,理解产业链的上下游、公司的运营方式、产品的赢利模式。这些“功夫在诗外”的努力,都有助于推进项目、改善产品、提高技能。

  * 无知并不可笑。无知但又不去学习才可笑。

  * 但管努力,莫问前程。不要浪费时间怨天尤人,攀比工资高低,争论物价房价涨跌。相信功不唐捐。

  百度岁月

  相比NEC、风行,在百度时光短暂,因此技能和交际的提高都很有限。但从战斗力这个层面上说,却有相当的长进。百度的产品线生命期相当短,如果短期内没有成效,就有被砍掉的风险。用百度一个VP的话来讲,就是“只认功劳,不认苦劳”。很多产品线都加班到相当晚,像百度影音这个产品线,我们组内的成员,很多人到了晚上12点,还在讨论问题和解决方案,还在改进产品,而这些都是自发,没有硬性规定的行为。在风行,我有不少时间是在为公为私的学习,但在百度,几乎没有时间可以腾出手来学习。当然,也许是和百度客户端在公司的处境相关。

  虽然说百度的项目非常紧张,但还是有大量高质量的培训课程、教材、技术文档可以学习。尤其刚毕业的学生,在这种高压的环境下,能够得以快速成长。内部的BIT培训、公司和部门的各种讲座,以及com平台的资料,都会让渴望知识的人欣喜若狂。新发布的产品线,用户数很快就会激增到几万,十几万,几十万,百万,千万这个量级,对于希望挑战自己的人,是个好平台。在这里,个人的成功是和团队的成功绑定在一起的,因此大家都非常努力的朝着一个目标工作,至少在我们产品线是这样。

  在百度最有成就感的事,就是坐在屏幕前,运指如飞的用Vim模式的命令行,管道连接一堆命令,背后站一群人,看你怎么分析日志,抓出异常。追踪异常,就如同侦探破案一般,把现场还原出来,找出是自己的程序搞鬼,还是有恶意用户。让你吐血的经历,就是最宝贵的财富。因为RD、QA、PM都非常专业,所以可以学习到各种不同层面的知识,要加以应用也很简单,只要你为产品线献谋献策,并实现它,就可以了,有大量的用户,会成为你的试金石。

  结语

  在百度的最后一段时间,我想也许我准备好了,可以独立行事。离职后,和曾经视为竞争对手的YZ以及几个朋友,开发一款叫做“淘奇桌面”的软件,目的是做软件、文档类的搜索。做了些时候,感觉困难重重,履步维艰。失败并不可怖,真正强悍的人不是没有失败的人,而是快速从失败中成长的人。不过,谁负谁胜出天知晓,回到自我总结的话中,就是,但管努力,莫问前程,事在人为,功不唐捐。

  年轻的却是一笔最好的财富,而多数时候,我们不知道如何运用这笔最宝贵的财富,将之挥霍一空了。所有平凡的日子加起来,就将汇集成了你的一生。如果不希望平淡的生活下去,就要更加努力的去拼搏。找到自己的偶像,追赶他,榜样的力量是无穷的;找到自己的竞争对手加朋友,与之一起战斗,你能走多远,在于你和谁一起同行。虽然现实残酷,时常迷茫,不知所措,但我总提醒自己,要乐观的生活,也许,机会就在眼前

分享到:
评论

相关推荐

    软件工程师辞职报告.docx

    6.自我反省的重要性:在辞职报告中,软件工程师也提到了自己的自我反省,即自己需要重新思考自己的职业发展。这也提醒我们,在职业发展中,需要不断自我反省,以便更好的完善自己。 7.职业发展的挑战:在辞职报告中...

    软件测试工程师们是否需要进行反省?

    软件测试工程师们是否需要进行反省?首先还是需要感谢雄立xiongli让我看到了她的几篇文章,包括她总结的pdf。真的很中肯。并非偏向哪一方。能够在几年前有这样的感悟真的让我很佩服。  每个公司的测试都会有自己...

    2019年软件工程师试用期工作总结模板.doc

    在2019年的这份工作总结中,我们可以看到一个新软件工程师的成长历程和关键的学习点。 1. **工作态度和精神**:总结反复强调了“尝试、努力、坚持”的重要性,这是每个成功软件工程师必备的态度。一分耕耘,...

    2021年软件工程师年终个人总结.pdf

    在2021年,作为软件工程师的工作生涯中,一个重要的成长和发展阶段已经到来。这位新进公司的软件工程师通过一年的努力,在多个方面取得了显著的进步。以下是他个人总结中提到的关键知识点。 1. 自身定位与职业规划 ...

    2018年软件工程师试用期总结.doc

    这份2018年的试用期总结文档详细记录了一个软件工程师在这个期间的学习和工作经历,展示了他在项目协作、问题解决、文档编写和技术改进等方面的专业素养。 1. **项目管理与团队协作**: - 该工程师接手了一个已经...

    2019年软件工程师试用期工作总结范文-(3).doc

    6. **自我反省与发现能力**:工程师意识到自己在项目经验和主动发现潜在问题上的不足,他计划在未来的项目中积累经验,增强主动发现问题的能力,通过持续学习和实践来提升这一方面。 7. **公司认同与职业规划**:...

    软件工程师试用期自我参考总结(通用) .doc

    总结来说,这个试用期的自我总结揭示了软件工程师在项目管理、技术实施、沟通协调、文件编写和工装设计等方面的专业技能,同时也展示了其持续学习和改进的意愿,这些都是软件工程师成功的关键素质。在未来的职场生涯...

    电子微电子工艺助理工程师简历表格.doc

    在另一家世界五百强企业的子公司,他担任电气工程师,专注于楼宇自动控制系统,接受过专业的软件和PLC编程培训,具备良好的英语沟通和文件处理能力,这对他处理跨国项目非常有利。 作为工艺助理工程师,他的职责...

    电子课件-《自我管理》(第五单元第一课保持自我反省)-8.pptx

    电子课件-《自我管理》(第五单元第一课保持自我反省)-8.pptx

    2019年软件测试转正个人总结范文.doc

    在这份总结报告中,软件测试工程师首先回顾了过去两月的工作经历,总结了自己的工作经验和收获,并对自己的工作态度和方法进行了自我反省和总结。通过这份总结报告,软件测试工程师可以更好地了解自己的优势和劣势,...

    2021年网络工程师述职报告.docx

    2021年的网络工程师述职报告主要涵盖了网络工程师在过去一年中的工作内容、成绩、存在的问题以及未来的工作规划。以下是详细的内容解析: 1. **网络维护工作** - **小灵通网络维护**:在面对预算紧张和网络投资...

    成绩退步反省检讨书.doc

    如果这三个环节都能得到充分执行,英语成绩将显著提高。这提醒学生要有针对性地学习,掌握正确的方法。 5. 时间管理和目标设定:作者意识到时间管理对于学习效果的影响,决定在以后的学习中更好地安排时间,提高...

    通过两张趣图,看工程师的自我反省

    看到两位网友分别转载的图片,很有意思。

    计算机工程师职业与道德论文(3700字)

    ### 计算机工程师职业道德的重要性及其在社会中的角色 #### 一、计算机工程师的职业性质与社会责任 ...在这个过程中,每个人都应该意识到自己的责任和使命,共同努力构建一个更加美好的数字世界。

    品质工程师个人述职报告.pdf

    这一角色让他积累了丰富的现场经验和沟通技巧,认识到自身与客户端在制程水平上的差距。 【工作中的不足与改进方向】 尽管作者在多个岗位上取得了显著的进步,但他也认识到自身的不足,包括专业知识的局限性和沟通...

    操盘建议:一个绝望操盘手的深刻反省.doc.pdf

    【操盘建议:一个绝望操盘手的深刻反省】 在这个外汇保证金市场中,作者通过自身的经验分享了关于操盘的一些核心知识点,对于那些寻求在金融市场中取得成功的交易者具有一定的启示作用。 首先,作者强调了建立个人...

    中考语文满分作文“反省”帖子ABC

    【中考语文满分作文“反省”帖子ABC】是一个讨论反省这一主题的资料,通过不同历史故事和现实案例,展示了反省在个人成长和社会生活中的重要性。文章以一位初三毕业生周周的求助贴开场,引出“反省”的话题,随后...

    工程师个人年终述职报告.docx

    这份工程师的年终述职报告详尽地展示了工程师在过去一年中的工作情况、个人成长和专业发展。报告主要分为三个部分: 一、强烈的事业心和工作责任感 工程师强调了对工作的热情和责任感,他通过不断的学习、请教和...

    一日反省主题检查表.doc

    一日反省主题检查表.doc

Global site tag (gtag.js) - Google Analytics