美文网首页
2019-06-24 收藏转发

2019-06-24 收藏转发

作者: 毕子歌 | 来源:发表于2019-06-24 15:05 被阅读0次

    出处

    每个人开发者都是由初级一步一步走向高级工程师。当然,不是说工作了多少年就能称为一名合格的高级软件工程师。有可能和你一同学习的人一两年的时间就拉开了距离。究其原因,我个人看法,有以下几点:

    好学:别人下班放学挤地铁都在学习,你在上网看视频玩游戏

    天分:这个很难超越,有些人他天生就属于这个行业,对于技术一点就通,一悟就会

    环境:好的开发团队能让人飞速进步

    经验是不平等的
    自学5年编程,有可能比不上一个全职工作一年的人。5年你可能掌握了大量的理论知识,但是如果没有实践很难学精。工作中会碰到各种奇怪的问题。还有没有和其他人合作,你的代码没有被其他开发者审核过,你就不会知道代码存在哪些缺陷,也就很难进步。

    导师很重要
    好的导师能让你快速成长进步,你可能对某个知识点思考了半天甚至一个星期都没有弄明白。如果有经验丰富的人指点就有一种柳暗花明又一村的感觉。

    职称不是很重要
    5人团队的首席技术官与50人团队或500人团队不同,所做的工作和技能也完全不同。“高级”职称并不代表就是高级工程师,所以不要在意职称,能力最重要。

    测试很重要
    记住一句话,你写的代码是不可靠的。必须测试,测试,再测试。

    不要麻木追求新技术
    新技术很好,但不要随意将新技术引进到项目当中。可以先了解学习新技术,然后再看它是否适合应用到项目中。

    有缺陷是正常的
    世界上没有任何一个完美项目。就算再完美的技术团队或者技术非常高超的人,也会有设计漏洞。如果你刚加入公司不要抱怨前同事写的代码烂,甚至有种冲动想把项目推倒重来。对于一个非常小的项目,如果你有足够的把握说服公司领导层或者和团队一起讨论重新设计是不错的选择。但是,一个巨大项目想重新开始是非常不明智的。第一,无限增加时间成本;第二,可能你重新设计刚开始会比之前合理些,但随着时间推移,你的设计也会有设计的非常糟糕的地方。公认很好的解决方法是,在开发新需求的时候三思,尽量把代码设计合理,一旦发现不合理的代码马上重构。

    代码质量最重要
    如果一个项目除了你还有其他开发同事。那么,就应该制定代码风格,一个项目不同代码风格一个显的不专业,造成代码混乱。另外,不同的风格不易理解,项目开发中一大笔时间是阅读之前的代码。同时也要互相代码审核,不要把它看做是一种压力,每个人都会犯错误,互相审核可以降低代码缺陷。

    重构需三思
    重构代码时最好先弄清楚相关代码会对哪些功能产生影响,一块代码区可能和多个功能相关联。你出于好意,改好了某个功能缺陷影响到其他功能就得不偿失了。个人建议修改代码需三思,如果是和你共事同事写的代码,最好是由他改写,或者问清楚再改动。

    技术债
    技术债的定义是指开发人员为了加速软件开发,在应该采用最佳方案时进行了妥协,改用了短期内能加速软件开发的方案,从而在未来给自己带来的额外开发负担。

    看起来好像我们不应该背负任何技术债。其实不然,适当妥协有时是一种不错的选择。不要理解错我的意思,如果你明知道只要多加思考就能想到更好的技术方法,而你为了图方便选择背负技术债就是你的不对了。当今软件行业讲究快速迭代,时间就是金钱。如果没有找到一个合适的技术方案而放弃一个核心功能,可能会竞争对手赶超甚至淘汰。

    资历意味着成为最好的程序员
    除编程外,高级工程师必须具备许多其他技能,沟通和项目管理。

    不是每个人都会在职业生涯中成为“高级”。资历需要多年工作经验的累积。然而,多年的经验是资历的必要但不充分的条件。它必须是一种正确的体验,在这种体验中,你将正确的课程内化,并成功地将这些学习应用于未来。有时候,更大的课程可能需要一年或更长时间才能完全显现 - 这就是为什么多年的经验仍然很重要,即使你是一个非常好的程序员。

    我们在某些方面仍处于初级阶段。最后很重要,无论你有多少年工作经验,仍然有一些你不太了解的地方。承认你不知道的是填补这一空白并从更有经验的人。

    相关文章

      网友评论

          本文标题:2019-06-24 收藏转发

          本文链接:https://www.haomeiwen.com/subject/nzqoqctx.html