提问:你印象中的程序员工作是怎样的?相信会有人回答:敲一天的代码、修一天的 Bug,日复一日的披星戴月吧——一直以来,这就是我们对程序员的传统印象。

但事实似乎与我们想象的有些出入:据 DevOps 公司 Software 的第一份代码时间报告显示,大多数开发人员每天的编码时间根本就不到一小时

一、每天编程不到 1 小时,周三最高效

伴随着软件领域逐年激烈的竞争,全球各大技术公司每年在开发人员身上的投资越来越多,他们协调分布在世界各地和跨时区的数百个项目和团队,争先为客户创造最好的价值,只为引领行业的创新步伐。

在这过程中,还有很多公司“掉队”了:工程团队在开发过程中遇到障碍和瓶颈,将一个想法投入生产可能需要几个月甚至几个季度。究其根本,在于开发人员很难全神贯注地将时间全部用来编程:无尽的会议、不断被同事中断、等待流程通过的繁琐…无法专注投入于编程的程序员,工作效率可想而知。

为此,Software 公司统计了全球社区中 25 万多名开发人员的相关数据,得出他们平均每天的编码时间为 52 分钟——从周一至周五,工作中的编码时间总共约为 4 小时 21 分钟

(注:Software 将编码时间定义为在编辑器或 IDE 中积极编写或编辑代码所花费的时间,且为了过滤掉兼职开发者,Software 的分析仅限于在过去 30 天中至少有 7 天编写过代码的开发者。)

在这之中,每天编码耗时超过 1 小时的开发人员仅有 40%,每天编码时间超过 2 小时的仅占约 10%

除了真正花在编码上的时间,Software 发现开发人员每天还会花费约 41 分钟在其他代码工作上,例如阅读代码、审查拉取请求和浏览文档等。

接下来,Software 还就编码时间的主要发生时段,以一天和一周为维度分别做了进一步分析:

  • 在一天中,只有 10% 的编码发生在上午 9 点到 11 点之间,大约 45% 的编码发生在下午 2 点到 5 点区间内,还有 12% 的编码发生在工作时间之后的下午 5 点到晚上 7 点。

  • 在一周之中,开发人员普遍会在周三达到一个效率高峰,平均编码时间能达到 55 分钟——同一数据在周五只有 46 分钟。显然,即将放假的周五是最不受欢迎的编码工作日。不过这并不意味着开发人员周末就会完全“放飞”:Software 调查发现,大多数开发人员会在周末继续编码,周六和周日的平均编码时间约为 18 分钟


若诚如 Software 调查结果所示,开发人员每天的编码时间不足一小时,那他们剩余的工作时间都哪去了?如上文所说,大多都被分布在了许多其他事项中:规划项目、审阅文档、开会统筹、协作讨论。

二、高效工程师:每天 100-150 行代码

当然,如果只用编码时间或代码行数来评判一位开发者的工作效率,或许又有些过于片面了。

早在 2017 年,Google AdMob 全栈工程师 Raymond Farias 的一番发言就曾在开发者圈中引起巨大争议:

“我的同事告诉我,根据以往的调查证明,一名高效的工程师每天能写 100-150 行代码。我一开始嘲笑他的估计值肯定低了很多,结果我汇总了我一个月的代码数据进行求和,并除以 20(周末不上班)得出的平均数,居然真的等于 150 !!!”

为了验证这一说法的真实性,CSDN 当时也在论坛上发起了相关话题讨论:“以代码为主要工作的程序员,一天写多少代码才算达标?”结果,征集到的回答几乎与 Raymond Farias 的说法没有出入:

  • 很多时候都在分析问题,查看代码,写代码越来越少了。

  • 如果写的话,基本上每天 100 到 200 行,但是更多的时候在开会、开会、开会。

  • 真正优秀的程序员都拿着高工资,其本上不用怎么写代码,如果你还拼命在写代码,说明离“优秀”还有一段距离。

显然,这一数据与人们传统印象中的程序员相差甚远,但事实就是如此:即便代码在精不在多,不能否认的是,依旧有很多公司并没有有效部署其开发团队,反而安排了太多的繁琐会议和缓慢的审查流程,致使开发人员很难找到可以专心投入的编码时间。

为此,Software 建议有这类现象的开发公司可从以下三个方面进行改变:

1、改善日常工作流程:查找破坏团队开发流程或阻碍开发人员效率的症结所在,改进 DevOps 实践以减少等待时间并改进日常工作。

2、让 DevOps 可视化:测量系统级 DevOps 指标,例如交付速度和后期返工等,了解推进过程中的障碍因素,减少会议和低效的审核流程。

3、用数据持续改进:工程团队应为改进工作预留开发时间和周期,以提高团队生产力,包括偿还技术债务、迁移、重构和重组。

最后想了解一下,你是否如文中报告所说每天编码时间不满 1 小时?你每天能写多少行代码呢?

参考链接:https://www.software.com/reports/code-time-report

程序员“真实”日常:每天敲代码不到 1 小时相关推荐

  1. 程序员不能只会敲代码还要会投资理财

    程序员不能只会敲代码,还要会理财或者说投资. 当我们步入职场,随着我们工作经验的增长我们的薪资相应的也会快速提高,很多人可能思维上还没有改变过来,不知道如何利用自己的闲钱去保值或者增值.当然现在互联网 ...

  2. 程序员再也不能埋头敲代码了

    上周,阿里巴巴重磅发布了机器学习平台 PAI 3.0 版本,据悉,这个 PAL 平台封装了 200 多种经典算法,可以轻松搭建机器学习实验.作为码农一枚,使我不得不抬起原本一直低着敲代码的头,看看这个 ...

  3. 优秀程序员是怎样提高敲代码的效率?有这些工具就够了!

    作者 | 码农唐磊 来源 | 程序猿石头( ID:tangleithu ) Mac built-in 首先介绍的就是我觉得应该熟悉 Mac 内置的一些软件及配置. trackpad 配置 1. 启用 ...

  4. 程序员在这些地方敲代码,普通笔记本根本扛不住

    各位程序员兄弟姐妹,你都在什么环境下工作? 不都是在办公室么?你可能下意识会反问,但只能说你是幸运的,程序员并不都是像你一样总是窝在办公室啊,你再闭眼想想? 一幕幕的景象从你脑海中略过,从办公室里格子 ...

  5. 电视剧中的程序员,是真的敲代码吗?

    今天是1024程序员节,今天不聊技术,聊一聊电视剧中出现过的敲代码片段,从咱程序员的视角看看代码是不是真的在写代码哦~ 1. 码不出来,公司要完 从知乎上看到的 用word写代码?放弃吧,写不写得出来 ...

  6. 一个程序员靠一段Java代码,在几小时之内就赚了500美元

    作为程序员,如果足够灵活,赚些小钱的机会还是有的.最近就有一个叫做Warren Crasta的哥们,通过自己写的几行自动发邮件的代码,在Varo Money的推广活动中发了一笔小财. Varo Mon ...

  7. 程序员别只顾着敲代码了,看看吧

    最近花了不少时间看书,并且基本都是非技术的书.咱们公众号里很多同学给我留言说,让推荐一些不错的技术书.我说,技术类的我反而看书不多,为啥呢? 因为技术类的问题,相对都好解决.别人能学会的,咱也能学会, ...

  8. JAVA程序员的日常工作是什么?一文告诉知道!

    由于Java的企业需求热度,想学习Java并获得就业安排的学员也只增不减.而对于Java工程师来说,每天的工作内容是怎样的呢?本篇带大家了解一下Java开发者的日常工作,希望会有所收获. 首先对于一个 ...

  9. JAVA程序员的日常工作是什么?一文告诉知道

    由于Java的企业需求热度,想学习Java并获得就业安排的学员也只增不减.而对于Java工程师来说,每天的工作内容是怎样的呢?本篇带大家了解一下Java开发者的日常工作,希望会有所收获. 首先对于一个 ...

  10. Java程序员的日常—— 垃圾回收中引用类型的作用

    在Java里面,是不需要太过于关乎垃圾回收,但是这并不意味着开发者可以不了解垃圾回收的机制,况且在java中内存泄露也是家常便饭的事情.因此了解垃圾回收的相关知识就显得很重要了. 引用,在垃圾回收中是 ...

最新文章

  1. c odac 连接 oracle,使用ODAC112040Xcopy_64bit 将sql server连接到oracle
  2. 使用openssl生成ssl(https)证书
  3. ansible register 用法
  4. Yii的scenarios
  5. 1t硬盘怎么分区最好_这下尴尬了,电脑硬盘分区常见误区,移动硬盘分区方法...
  6. C++:数字逆向输出
  7. Android 系统(151)----添加开关机铃声
  8. java:linux上找出最耗资源的线程方法
  9. java Integer类的缓存(转)
  10. 基于Krpano的Hotspot热区插件·第二版
  11. SQL server 數據庫 從SQL2000搬移到SQL2016
  12. mysql授权单个表权限
  13. html仿qq截图,javascript实现粘贴qq截图功能(clipboardData)
  14. Google究竟怎么扣税,如何结算?你想知道的都在这里了
  15. 阿里云部署视频点播:学习文档使用Java程序部署视频点播基础用法之入门
  16. 【贪玩巴斯】一文通过操作实例——学会 知网专业检索 2022年3月21日
  17. github电脑壁纸_GitHub - jadepeng/bing-wallpaper: Bing每日壁纸,自动获取Bing的精美图片设置为壁纸,并且支持随机切换历史壁纸,查看壁纸故事...
  18. 区块链黑暗森林自救手册
  19. [机缘参悟-14]:哲学、唯物主义、唯心主义与空无主义
  20. 激活黑群晖Synology Active Backup for Business,黑群晖系统备份软件激活,亲测有效

热门文章

  1. hive sql系列(七)——查询前20%时间的订单信息
  2. 网络安全笔记-18-ICMP 协议
  3. 尚学堂Java全套资料百度云,Java注解和反射
  4. http 网络异常请求处理
  5. 手机号码变成空号导致亚马逊账号登陆两步验证失败的恢复网址及方法
  6. Python可视化:Pyecharts成长之路
  7. codeforces 407C Curious Array
  8. 关于安卓开发的一些你必须要掌握的网络知识(一):网络基础与网络框架OkHttp
  9. Java多线程并发面试
  10. 【文献笔记】NOMA+D2D模型3 (D2D group)