当然,写代码是超级重要的,但是我认为它只是整个过程中的一小部分,且不一定是最难学的。

学习如何写代码要花些时间,但是只要有足够的训练(每天写代码,坚持数年),你就能真正擅长它。

你知道的,我相信在某种程度上,每个软件开发人员几乎能给任何软件写代码。(当然有时候这要用更长的时间,但是你不再感到害怕,肯定能按照你的方式来运行。)

我和自己的同事都看到了这种现象。我今天的一部分工作是把项目分配给开发人员,我的团队有一些成员,常常能够适应任何项目。这些家伙就是我说的能够给任何软件写代码的人。

基本上,我不得不改变我过去用于衡量他们做为工程师的标准。他们已经都是非常优秀的程序员了。

不仅仅是要成为优秀的写代码的人

这些家伙都擅长让计算机做他们想做的事情。但是这个行业里任何有经验的人将要对你说,还有更多的能力。

其中较大的一部分,是你通过看书、然后经过一周训练还无法准备好的。像大部分其它工作一样,经验在软件工程职业里发挥着巨大作用,没有其它捷径可走。

我花了一些时间,尽量思考我在软件工程里最看重的所有方面(和写代码有关),下面是我想到的,不分顺序:

  • 编码的能力(当然,这是既定事实。)

  • 编写正确的程序的能力。

  • 使用正确的方式编码的能力。

  • 快速编码的能力。

  • 证明你的代码运行的能力。

  • 和其他人编码的能力。

  • 为其他人写代码的能力。

  • 讨论你的代码的能力。

  • 为将来编码的能力。

  • 从你的代码学到经验的能力。

除了写代码的能力,列表中的其它方面对于靠软件谋生的任何人而言,都是相当重要的。而且,我敢肯定,所有这些对于优秀的职业生涯都是同等重要的。它们每一项都难以学习,不能速成,需要数年经验才能掌握。

(当然,写代码的能力就像把其它所有东西粘在一起的胶水。没有这种能力,一切无从谈起。)

不过,它是最容易的吗?

我给本文的标题为“写代码可能是成为软件工程师最容易的部分”,因为我深信,成为优秀的开发人员,比成为优秀的工程师要用更少的时间。

达到“优秀的开发人员”的状态,对于任何软件工程师而言,是一个不可逾越的阶段:首先你需要学习弹钢琴,然后你才能开始音乐创作。你具备了写代码的一流能力,才能打造你的软件工程师职业生涯。此后你拓展能力,开始增加和夯实越来越多的技能。

但是,所有一切能力的基础是掌握写代码的能力。

没有绝对

我认识一些杰出的开发人员,他们能够用 C++ 编译器做出牛逼的东西。我从来达不到这种境界。我认识的大部分优秀的软件工程师也将不可能达到这种境界。这些家伙是用他们的生命积累了海量的编程技能,十分不易。

我还认识一些优秀的软件工程师,他们从来不是好的开发人员。他们选择了一条不同的道路,才成为他们今天的样子,这条路适合他们。

对于我,以及我认识的大部分人来说,他们从写代码开始,并以此为基础。写代码是最容易的部分。其它部分要花时间,大量的时间。

来源:51CTO

写代码可能是成为软件工程师最容易的部分相关推荐

  1. java好的代码_做java软件工程师,怎样才能写出好的代码?

    原标题:做java软件工程师,怎样才能写出好的代码? Java代码之于java程序员而言就是左膀右臂,java代码写的好的java程序员明显更是企业的欢迎,一个优秀的java程序员的考核标准之一也是看 ...

  2. 软件工程是教不怎么会写代码的人开发软件嘛

    不是,软件工程专业是以计算机科学与技术学科为基础,强调软件开发的工程性,借鉴传统工程的原则.方法,以提高质量.降低成本.使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事软件需求分析.软件 ...

  3. 写文章与写代码和书法作品与软件作品

    1.我随意的写了一篇文章,文章中包含的错别字也多,没有格式,断句也乱. 2.看了一些好的文章,写意,写景,表现的有深意. 3.都在写,立意不同,用意不同. 4.不要在文章外寻找文法,写法等高深莫测的东 ...

  4. 今晚直播写代码|英伟达工程师亲授如何加速YOLO目标检测

    NVIDIA TensorRT是一种高性能深度学习推理优化器和运行时加速库,可以为深度学习推理应用程序提供低延时和高吞吐量.通过TensorRT,开发者可以优化神经网络模型,以高精度校对低精度,最后将 ...

  5. 直播写代码|英伟达工程师亲授如何加速YOLO目标检测

    NVIDIA TensorRT是一种高性能深度学习推理优化器和运行时加速库,可以为深度学习推理应用程序提供低延时和高吞吐量.通过TensorRT,开发者可以优化神经网络模型,以高精度校对低精度,最后将 ...

  6. 只会写代码,不如去种田

    打小父亲就教我写代码,他是软件工程师,也是我见过最好的导师之一.最近他和我妈妈开了一家有机农场,很积极的倡导可持续生活,也非常热衷地参加社区活动. 这两天 code.org 发起了一场颇为宏大的&qu ...

  7. 现代软件工程 第三章 【软件工程师的成长】练习与讨论

    1.  选哪一种医生? 作为一个软件工程师, 你觉得自己表现如何? 有没有这样的体会: 看书的时候觉得"技止此耳",开发项目的时候才觉得实际情况和书上讲的都有一些出入,一些重要的细 ...

  8. 程序员写代码为什么需要 review?

    在日常写完代码之后,你是否会有 Code Review 的习惯? Code Review 即代码审查,其目的在于找到开发时被忽视的 Bug,以此极大地提高代码质量也可以帮助开发者们更加熟悉项目.但遗憾 ...

  9. 写代码写到70岁,是一种什么样的体验?

    点击上方 前端Q,关注公众号 回复加群,加入前端Q技术交流群 你听说过年纪最大的程序员,今年多少岁了? 鹅厂马化腾,1971年出生,今年50岁 小米ceo雷军,1969年出生,今年52岁 金山软件创始 ...

最新文章

  1. mvc 职能划分_【转】MVC中的操作如何分类(MVC层次的划分)
  2. 取代现有电商和实体店菜市场的新模式
  3. Android 数据库制作APP,在Android 中使用Anko框架制作一个完整的App,第二集
  4. Spring Data JPA 从入门到精通~@NamedQueries预定义查询
  5. 酷似美军作战模式的中台战略,究竟是怎么回事? | 大咖说中台
  6. POSTFIX服务简介
  7. js之prototype、__proto__与constructor(图解)以及原型链
  8. 华为 AR系列路由器密码重置
  9. 使用EMQ实现消息推送
  10. 2022年怎么申请企业邮箱?企业云邮箱申请?
  11. 压网线教程图解(做水晶头)
  12. 图片实现水平垂直居中的方法
  13. 【2016新年版】年度精品 XP,32/64位Win7,32/64位Win8,32/64位Win10系统
  14. SQL学习之使用order by 按照指定顺序排序或自定义顺序排序
  15. java开发环境搭建(一)
  16. 在Ubuntu16.04 中安装g2o并运行g2o_viewer
  17. 《血族-迷失乐园篇》1、2初回限定…
  18. kafka的常用命令
  19. adobe pr插件开发,开启nodejs
  20. EPLAN教程 | 易盼软件图形系统如何正确使用?

热门文章

  1. 视频分享网站首页:最新视频特效
  2. 使用SQLServer配置管理器配置SQLServer数据库引擎实例,以便侦听特定的固定1433端口。...
  3. 使用VM虚拟机的一点小技巧
  4. Windows server 2003 IP路由配置
  5. 微软云计算业务增长,或成全球最具价值上市公司
  6. snmpd 子代理模式编译测试
  7. 【VMCloud云平台】SCO(四)流程准备
  8. Android 模仿微信启动动画(转)
  9. Apache Traffic Server管理工具
  10. (续)我对09毕业生说两句