0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

程序员的内心独白

工程师人生 来源:网络整理 2018-11-27 15:52 次阅读

Patrick McKenzie 在2011年写了《不要自称程序员》这篇文章,我写的这篇算是一个(相当晚的)回应。我觉得他说的有些还是有道理,假设一个人在职业发展初期能按着他说的做的话,没准还真能有点帮助。但假如是二十岁的我的话,我真怀疑自己能用他说的那些提高自己。

所以下面我主要说说我不能同意的那部分,我建议大家往下看之前先看看 Patrick 的文章,这样就不会错过什么。(译注:《不要自称程序员》这篇译文是摘选翻译,并非全文翻译。)

实际上也不能说是不同意他的观点,更加准确的是:“我们的阅历不同”而已。我们站在不同的职业发展轨迹上,所得到的经验当然不同:Patrick McKenzie 是“bingo card creator”的老板(一个小企业),同时是一个成功的咨询师;而我则是一个“亿”级别公司的架构师。我们的共性是都和”纯写程序“有些偏离了,只是我们偏离的方向不同。

你想为什么样的公司工作?

Patrick McKenzie 说90%的工作都和实现一个内部差旅报告表一样无聊,根本没有机会写那些能给用户使用的程序。并且你还得接受这个现实。可是真是90%么?Spolsky说可能是80%,不过那也够恐怖的了,Patrick 还解释了为什么做一个内部程序员(in-house programmers)糟透了:

没有商业理由去改善那种“勉强够用”的内部软件。“请忘了引以为豪的工艺,否则你就要会制造让人尴尬的垃圾。”

在公司里面,工作的内容和公司盈利更紧密,程序员也就更容易获得尊重。除了少数一些纯技术公司,程序员是不可能最终提升为公司的CEO。无论对VIACOM(一个跨国传媒集团)来说网络通畅有多重要,真正到了分工位的时候,内部程序员还是得三个人挤一起桌子坐。

McKensize 和Spolsky 都同意上面的说法,同时Spolsky认为:程序员应应该到一家软件公司工作,那里的文化会使一个程序员茁壮成长。而McKenzie则意见与他相左,他认为程序员应该“走出去”。

所以目前的问题变成了程序员个人的喜好问题:你想到软件公司做白领,还是自己接活。但是别急,80-90%的人都不能得到一份软件公司的工作。这不是你想不想进去工作的问题,而是能不能的问题。

然而这里我就不同意了,即使只有10-20%的程序员能在软件公司找到工作(如果数据是正确的),即使这部分程序员是最棒的那部分McKenzie又说:

“你们经常以一些自己身边的人为根据来预测可能的竞争对手的实力,而这经常让你高估了它们。有很多获得了高级工程师职位的人都不能写好一段fizibuzz的代码”。

所以如果大部分的竞争者实力都不济的情况下,你很可能进入到那前10-20%的行列,就像我毕业时候的大部分毕业生一样。所以我宁愿相信为一个公司工作还是以项目为单位的软件开发是一种个人喜好的选择。那么下面我们就说说McKenzie给在软件公司工作的人的建议。

如何进行自我定位

McKenzie的一个建议是:

“不要将自己定位成一个程序员。这里的程序员和那些身价很高,写着各种看不懂的词句的诗人有差不多的意思。相反,应该将自己定位成能够为雇主增加收入或者减少投入的工程师。”

不错,有时候内部程序员会花很多的时间写出一堆令人看不懂的东西,至少在那些非技术的 MBA 眼里是这样的。

然而对我来说,我很喜欢那种能写出让人看不懂的东西,但是对别人的工作时有意义的程序员。

McKenzie认为软件公司招聘程序员和一般的公司招聘没有什么不同。一个例子是:在Google,一个写后台记账程序的程序员——据说Google 97% 的账目都使用该程序——现在已经成为一名风险投资人了。也就是说他是通过和“盈利中心”靠的比较近发家致富的,而不是一般意义上的什么技术。

我相信这个例子的主人公是来自NSNA空气动力实验室的Ron Garret博士。你能相信Google雇用他是因为他在该实验室的时候增加了营收或者减少了开支么?(顺便说一下,据说Ron Garret并不喜欢那份写记账程序的工作,他买了一些Google的股票期权之后就辞职了。)

那么那个记账程序里有没有什么特别的技术?Ron Garret说:

”我最终去写了信用卡消费和账户管理系统,这一点也不简单,幸运的是,我在来Google之前学会计算机安全以及密码学。所以对于这个工作,我恰巧十分在行。在我设计的系统中,即使一个恶意用户得到了root权限,他也不能造成太大的危害。假设他们还在使用我写的系统的话,我可以非常自负的说,我在那里存得信用卡信息是不可能丢的。“

在我听来,他的技术知识和编程能力才使他成功的写出这样一个”不会被偷“的系统,而这里所谓的”不会被偷“的系统似乎既没有减少了Google的投入,增加Google的产出。

所以如果我要投一份芯片工程师的求职简历,我会强调自己在转换固定函数交换器和可编程处理器中的技术角色,而不是我之前的什么管理岗位。(我认为之后的管理岗位是由于之前的努力的技术工作而来,管理了什么是虚的,真正干得活才是实打实的)。

跳槽

“同事和老板不是朋友,你会花很多时间和同事相处,你也许会和他们中的一些成为好朋友。但是一般情况下,离职之后你会很快忘了他们。

你的老板会做一些你的朋友永远不会做的事情:例如跟你谈降工资,或者加班。你的同事还会殷勤的介绍各种你讨厌的东西。“

确实有一些关于同事并不是朋友的潜规则。但我觉得这个说法和他的根据有点循环论证的意味。同事之所以不能成为朋友,是因为你会离职。但是你为什么会离职呢。

所以我不同意这个潜规则。我在一家公司工作超过12年,很多一部分原因是我跟我的同事非常要好。虽然最终我跳槽了,但那是当工资涨幅远远大于10%的时候我才会考虑的事情。如果经常因为小的晋升或者工资涨幅而跳槽,那么你不可能熟悉你的同事以及你所要做的工作。你可能对如何找工作非常有见地,也对市场上需要什么样的人非常敏感,但你并不会特别熟悉你的雇主,你会很快和雇主达成一致,进入工作状态。但是正好比一个消耗品一样,你也会很快消耗完自己的价值,很快离开。

相反如果你能在一个职位上坚持下去(只要那个职位的环境还算有趣,并且能时不时的提升),你和周围人的关系也就能更加紧密,同时你也能更有远见,从而学到平时不可能学到的东西。

以我为例:我大部分的知识都是来自ASIC黑客同事们那。他们之所以愿意和我一起工作,是因为长期工作而来的默契。要知道达到融洽无间的工作关系相当难得,需要相当长时间的磨合。

顺便说一句,如果你能够在一个地方工作够长的时间,在雇主眼中你的价值就会自然而然的升高:即使不用跳槽你也能获得相应的提升(职位上或者是薪资上)。你的薪资会高于那些具有同样经验的新员工,这时已经没有必要更换工作了。这种方式和通过更换大量工作而最终成为咨询师的方法具有异曲同工之妙。

不管哪种方式,你都能成功。我这里没有关于哪种工作方式更有效的统计数据。但是我认为一段时间内固定在一个地方工作更加有趣一些。如果不是这样我不可能收获到现在这么多的挚友。

这世上之事失败的居多,成功的为少。你不能指望一个职业发展计划就能让你获得梦想的职位或者一大笔钱。你需要付出很多努力,除此之外还要付出还有很多你所不知道的东西。你能确定的只是你的计划给你生活方式带来的改变。而你选择的生活方式又决定了你能认识什么样的人,拥有什么类型的关系-这比是否能够达成最终的目标更具有可预期性。

McKenzie关于老板的观点我十分赞同。确实有一些老板非常的“周扒皮”还假模假式的和你做朋友。这个时候你就应该正当的捍卫自己的权利了。

如何衡量股权

McKenzie说不要太看重股权,但没有过多阐述。这里我想说说股票期权,比实际的股权还差劲的东西,也是我曾经唯一获得的东西。

和上面提到的一样,我的观点是一切都要从长远出发。在12年中,我的东家价值翻了十倍。可是它目前仍然是一个私有公司-我的期权毫无用处。

从长远看,股票期权更好,或者更糟。

说它更糟,是因为通常在你离职的时候你根本买不起那些股票,或者无法承担投资股票的风险。当一个公司在存活下来,开始进入稳定期,你可能开始厌烦自己负责的工作,想套现离开。这个时候的股票期权会成为束缚。尤其在进行晋升谈判的时候,你手里的期权会成为公司的筹码–他们知道你无法辞职。

也就是说股票期权成为了一种债务。

相反,如果一个公司进入成熟的阶段,雇员们又会低估他们的股票–已经这么贵了,还可能再涨么?尤其是已经翻了三四倍之后,这种想法更加自然。但你要知道你获得的不是百分之几的数字,而是实实在在的美元。一个每股100美元的股票涨了20%到了120每股,意味着你一股赚了20美元,而一个每股5美元的股票即使涨了100%到了15块一股,你也只是每股赚了10美元。所以一个成熟的涨势的公司股票要比那些年轻公司的便宜股票更具有投资价值–你更可能因此而一夜暴富。

结果是人们总是在公司初期的时候高估,而在随后的时间低估。注意如果你没有打算在一个公司工作超过三年的话,股票期权会成为你的“债务”,因为它会让你更难辞职。

在创业公司工作

McKenzie列出一个许多不到再创业型公司工作的理由。例如工作的满意程度,在大型公司里面你能接触到更多有意思的事情。但是我要说至少有一点,是大公司和创业公司比不了的。大型公司一般没有什么职位上的空缺,事实上它可能根本不会注意到职位的空缺也不会去解决。通俗点讲就是大公司一个萝卜一个坑,你进来工作就是到一个坑里面去,公司不会挖新的坑了。相反创业公司几乎无时不在处于缺人手的状态,因此,你可以根据需要自己挖坑,还可以同时占多个坑。也就是说你可以承担更多的责任。在有些公司,你要和多个人同时竞争才能把事情做成。相反在一个创业公司,你只管做你想做的事情,因为大家自己忙还忙不过来,根本没有时间和你竞争同一件事。

随着公司变得越来越大,能够做你想做的事情变得越来越难。创业公司里面,程序员都是游牧民族,哪有草就去那里。等到了大公司里面游牧进化成固定城邦,程序员也有了身份证,你想看看其他部门的代码都是需要审批的。

我这里不是建议要到创业公司里面去。相反如果你是一个年龄比较大的程序员,喜欢比较成熟的流程,那么在一个家大公司里面工作可能更适合你。

职业选择对人生幸福感的影响

“每当一天结束之后,你今天是否幸福并不完全取决于你的职业。”

一方面我完全同意这句话。不管工作内容如何,这只是一个工作而已。并且我注意到如果我过分强调工作的重要性之时,我的生产力反而降低了。合理的方式是:回到家就别像白天那么拼命了。

另一方面,我们确实花了一些时间在工作上。这儿的问题是:工作和生活应该如何区分(平衡)呢?这里我不同意在区分开工作和生活的过程中将同事和一般的朋友分开的做法。一旦离开公司就和同事断掉联系完全没有必要。

总结

当我介绍我自己的时候,我常自称为程序员(即使我之前的工作主要负责芯片架构还是管理),因为我靠写程序赚钱,而不是单纯的因为在说到”程序员“这个词的时候感到强烈的自豪。我认为程序员是一个很好的职业,并且对我这样的人来说很合适。

相反的,如果你只是将写程序作为职业起点,从而可以最终转成其他类型的职业(例如管理者),那么你真的不能称作程序员。这种方法对我来说不可理解:你还不如去读一个MBA呢。当然这个路线对有些人也许是适合的,因为有些MBA需要一些业界工作经历之后才会录取你。

所以关键在于选择一个适合自己的路线,并且一直坚持下来,最终你会成功。对于像我所在的公司来说,如果想要获得一个写程序的职位,但却不认同自己是程序员的话,恐怕不会给面试官什么好印象。

最后强调一下McKenzie文章里我十分认同的观点:沟通能力很重要。我推荐你去读一读。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序员
    +关注

    关注

    4

    文章

    951

    浏览量

    29775
收藏 人收藏

    评论

    相关推荐

    机械革命发布CODE AI程序员

    近日,英特尔新质生产力技术生态大会在成都举行,机械革命作为重要参展商带来了多款明星产品引爆全场!其中更是在AI PC软件生态产品发布分论坛上,Intel、智谱、机械革命三方联合发布了专为程序员设计的CODE AI程序员本,成为本次大会的一大亮点。
    的头像 发表于 11-30 10:34 278次阅读

    Linux驱动程序程序员指南

    电子发烧友网站提供《Linux驱动程序程序员指南.pdf》资料免费下载
    发表于 11-22 15:53 0次下载
    Linux驱动<b class='flag-5'>程序</b><b class='flag-5'>程序员</b>指南

    AI编程工具会不会抢程序员饭碗

    AI编程工具可辅助编程,减少手动编码,提升效率,对程序员有积极影响也有挑战。程序员需深化技能、拓宽知识应对。长远看,AI与人类程序员将共生共荣。
    的头像 发表于 11-08 10:17 127次阅读

    第五届长沙·中国1024程序员节开幕

    据官方媒体报道,10月24日;  第五届长沙·中国1024程序员节在湖南湘江新区开幕;本次中国1024程序员节以“智能应用新生态”为主题。设置有岳麓对话、技术英雄会、主题峰会及赛事、展览等活动,一场
    的头像 发表于 10-25 15:42 172次阅读

    京东上万程序员都AI用它!

    对大模型生成代码进行智能修复,为程序员开启代码漏洞修复的“自动驾驶”模式,不但减少人工接入、提高工作效率,更为企业抵御内外部各种攻击构建起一道坚固的安全屏障,确保业务的连续性和稳定性。 JoyCoder是京东云自主研发的一款辅助开发人员
    的头像 发表于 07-17 16:29 237次阅读
    京东上万<b class='flag-5'>程序员</b>都AI用它!

    程序员节视频创意大赛,用串口屏赢取千元大奖

    10月24日,程序员专属的节日里,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记录下那些平凡日子中的不凡瞬间,让编程的魅力与
    的头像 发表于 07-08 10:38 72次阅读
    <b class='flag-5'>程序员</b>节视频创意大赛,用串口屏赢取千元大奖

    程序员节视频创意盛宴,邀您共襄盛举!

    10月24日,程序员专属的节日里,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记录下那些平凡日子中的不凡瞬间,让编程的魅力与
    的头像 发表于 07-04 09:00 67次阅读
    <b class='flag-5'>程序员</b>节视频创意盛宴,邀您共襄盛举!

    助力程序员告别困扰已久的梦魇-Bug

    程序员的噩梦是什么?不用怀疑,就是让你加班到崩溃的Bug!下面是经过业界大佬们“长期加班”积累的小妙招,助力你离早下班又进一步~一、定位Bug范围及性质要有效解决问题,首先要缩小范围,集中关注最近
    的头像 发表于 07-02 08:10 283次阅读
    助力<b class='flag-5'>程序员</b>告别困扰已久的梦魇-Bug

    大模型时代,程序员当下如何应对 AI 的挑战

    随着 AI 技术的飞速发展,特别是大模型的出现,传统的程序员角色正在经历深刻的变革,我们不得不重新对自己进行审视和思考。 通用领域大模型的“泛化能力” 在过去的二十年内,AI 领域的大部分研究
    的头像 发表于 06-28 16:19 513次阅读
    大模型时代,<b class='flag-5'>程序员</b>当下如何应对 AI 的挑战

    适者生存,程序员最终会流向哪……

    程序员没有永远的护城河!!就目前的互联网大环境来看,it行业已经是……
    的头像 发表于 03-11 17:11 395次阅读
    适者生存,<b class='flag-5'>程序员</b>最终会流向哪……

    薪资高、青春饭,是不是程序员=青楼?

    花期太短。技术迭代快,年龄大容易失业。 就这几年的互联网环境而言,不管是前端、Java、Android开发等等行业。已经感受到程序员不是太卷就是工作难找,薪资过低。以前高工现在拿着中低程序员薪资
    发表于 03-06 21:32

    瑞萨Flash程序员V3 发布说明

    电子发烧友网站提供《瑞萨Flash程序员V3 发布说明.pdf》资料免费下载
    发表于 02-19 09:37 1次下载
    瑞萨Flash<b class='flag-5'>程序员</b>V3 发布说明

    2024程序员的未来方向如何走?还看今朝

    这几年的IT行业想必大家已经感受到了,Android、Java、前端等等程序员都经历了大厂……
    的头像 发表于 02-02 09:45 793次阅读
    2024<b class='flag-5'>程序员</b>的未来方向如何走?还看今朝

    1月18号“纯鸿蒙”千帆启航,程序员预备!

    。 如何正确看待鸿蒙? 我作为程序员来说,首先是看鸿蒙的发展、市场开发岗位、薪资以及前景。 这几年对鸿蒙的发展情况来分析,从2019年开始鸿蒙的出来今天,华为鸿蒙取得了很大的成就。从“不兼容
    发表于 01-16 22:13

    诚邀报名 | GPT驱动的新程序员时代,开发者如何编程?

    2023开放原子开发者大会 . OPENATOM DEVELOPERS CONFERENCE GPT驱动的新程序员时代 我们该如何编程 2023.12.17 生成式AI正以旋风般的速度重塑我们的工作
    的头像 发表于 12-11 22:20 521次阅读