2019独角兽企业重金招聘Python工程师标准>>>

寻找自己的工作价值

这些年来,我看到很多颇有成绩的软件开发人员转行去了管理岗位,或者其他完全没有关联的职业。这些人这样选择的自然有自己的原因,无非是想要拿更高的薪水罢了。不过也有因为是厌倦了软件开发这种需要不断学习进步的职业。当然最常见的原因是感到无聊了,或者对自己的职业丧失了热爱。这些人通常是认为工作已经锻炼不了自己,认为他们是在把自己的时间和精力全部投入到几乎没有价值的工作中。

我的软件开发职业生涯也遇到过低迷阶段:我花费了非常时间、精力和创造力的一个项目或者任务由于某些原因被终止或者被大大削减了其功能范围。虽然我得到的物质报酬是一样多的,但是我工作前想要交付一个成功的产品的期望却破灭了,于是,我对此的感受完全没有满意,只有沮丧。这让我感觉我白白的浪费了自己的光阴在没有价值的事物上。

幻灭工作价值的唯一原因并不是取消任务。一些没有必要的任务或其他繁重的工作也会加剧软件开发的难度。这些事情总是看似对任务很有帮助的样子,却基本不存在价值。

进程

从众多软件开发人员的视角来看,冗余的进程是软件开发生产力的最大敌人。在《Process Kills Developer Passion》一书中,James Turner是这样写的,“对整个开发进程最佳实践的盲目应用让我们从一种创造性的流程变成了一种禁锢。”Turner表示所有的开发人员能力并不相同,所以就如何不同的对待他们的问题也该有此思考。“企业需要明白一点,开发人员之间本质上是完全不同的,所以你得确保分配给每个人的权重,至少是不能够对整体的士气和团队的效率造成损失的。”

我想在这行浸淫多年的人大部分都明白,一定程度的进程才是合理的,甚至是有益的。但是这个“程度”取决于项目、开发人员是否有丰富的经验以及团队的是大或小。标准化和代码约定是有很多优点的。众所周知的是,单元测试和其他质量进程是对此有极大益处的。可以这么说,最好的开发人员能够确定什么样的进程适合怎么样的情况,以及怎么样的情况是不适合的。

开会

只有那些时间短并且能够良好运行的会议才能为我们提供能使自己满意的收益,但大多数的会议都是毫无价值的,特别是如果会议还有晚点和加时等意外情况出现的话。好的会议,应该准时开始,只需要解决那些非解决不可的问题就够了。例如有的团队成员不习惯说出自己的意见,那么某些用于交流工作的并不冗长且不算正式的会议这时就显得很有必要。而在会议上,也可以讨论一些难度相对比较高的设计决策和架构权衡问题。可以这么说,运行良好的会议,产生的是积极的效果:能帮助开发人员树立一个标杆,确立更加明确的方向,提升整个团队的效率。

我曾经也发过一有个关于如何能够有效的开会的帖子。我觉得要点是学会记笔记,记下什么时候有什么人参与了,还能记录下一些重要的决策供未来自己需要是参考,或者也可以作为材料转借给一些没有参加会议的人查阅信息并且参考。

不是每一个想法都应该实施

不是每一个想法都存在属于自身的价值。开发人员在被迫去实施一些糟糕或者没用的点子时,往往会有不耐烦的心理。话说,我们很难让自己心甘情愿地去制作一些可能永远不会被使用的东西,或者更糟糕的是,这会直接影响到用户的体验。

繁琐的脚本编写任务

很多开发人员往往宁愿另外方法去找办法解决特别繁琐的脚本编写任务,也不愿手动执行,即使实际用于这两者的时间相差无几。这即便用于证明大多数开发人员讨厌繁琐任务,也是最好的例子之一。然而,开会人员这种典型的行为也是有它的积极面的。首先,可能这个我们以为是一次性的任务又有了需要再次实施的情形。其次,编写脚本的行为比仅仅只是完成一个任务所产生的价值要高得多:既可以提高自身对于脚本语言的熟悉度,又能为以后解决相关问题提供很好的思路或案例。

使用常规配置

只有在配置信息和常规配置并不想同的时候,开发者才需要把详细地配置信息提供给用户,不然就只需要使用常规配置即可。这样不仅可以节省开发者的时间,还可以减少许多枯燥的配置工作。

开始看上去没价值其实不然

大多数的情况下,我们对于任务有无价值的判断一般是正确的。但也有的任务,一开始看上去是无用的,但是后来则是发现它确实能为我们提供真实存在的利益,的确是有价值的。这种情况也提醒我们应当要对新点子保持肯定的态度,不要一棍子打死,应该仔细分析它的影响。所以软件开发经理的任务就是要将有价值的任务分配给开发人员并确保他们能理解这些任务的价值。

执行力

即便是一种非常有潜在价值的想法如果没有正确的实施,也会在极大的程度上减少它的价值。同样的,如果能正确使用代码审查、质量工具,则能创造巨大的价值,反之就是负面的影响。

结论

当我们对我们的工作有种热爱的时候,当我们在内心肯定自己所做的是有价值的时候,我们往往能很完美的完成工作。而没有价值或者低价值的任务则更容易被认为是冗余的任务从而不能很好地完成。总而言之,如果开发人员毋须被强迫于毫无价值的任务,那么显而易见的他们将更有动力更有开发的激情,也更开心。

刚学的想上手试试吗?在线编程,码农谷智能开发在线编辑器

转载于:https://my.oschina.net/u/2509115/blog/527934

暴怒程序员的呐喊:别让我做那些没用的东西相关推荐

  1. 《程序员的呐喊》读书笔记

    <程序员的呐喊>是Google一位老程序员的经验总结,文中展现了他对各大语言如Java.C/C++.Lisp.Python.Ruby.Perl等的极端观点,比如大力吐槽C++,极力推崇C. ...

  2. 程序员的呐喊--读书感悟

    <程序员的呐喊>是Google一位老程序员的经验总结,文中展现了他对各大语言如Java.C/C++.Lisp.Python.Ruby.Perl等的极端观点,比如大力吐槽C++,极力推崇C. ...

  3. 《程序员的呐喊》一一1.2 巴别塔

    本节书摘来自异步社区出版社<程序员的呐喊>一书中的第1章,第1.2节,作者:[美]Steve Yegge ,更多章节内容可以访问云栖社区"异步社区"公众号查看. 1.2 ...

  4. 《程序员的呐喊》一一1.1 作者手记:巴别塔

    本节书摘来自异步社区出版社<程序员的呐喊>一书中的第1章,第1.1节,作者:[美]Steve Yegge ,更多章节内容可以访问云栖社区"异步社区"公众号查看. 1.1 ...

  5. 吐槽java之《程序员的呐喊》读后总结

    <程序员的呐喊>读后总结 --关于java的批判 一.写在总结前面的一些废话 <程序员的呐喊>(后文简称呐喊),是一本非常有趣的散篇,全文都是作者对目前软件开发界的看法,主要翻 ...

  6. 《程序员的呐喊》读书笔记(下)

    接着<程序员的呐喊>读书笔记(上),继续分享下篇,这次干货比较多哦,有静动态类型的优缺点.强弱类型系统的对抗.设计模式.程序员的数学.编译器的重要性以及保守派自由派的较量,一时消化不了的建 ...

  7. 《程序员的呐喊》一一1.6 神秘机器的笔记

    本节书摘来自异步社区出版社<程序员的呐喊>一书中的第1章,第1.6节,作者:[美]Steve Yegge ,更多章节内容可以访问云栖社区"异步社区"公众号查看. 1.6 ...

  8. 《程序员的呐喊》读书笔记(上)

    <程序员的呐喊>是Google一位老程序员的经验总结,文中展现了他对各大语言如Java.C/C++.Lisp.Python.Ruby.Perl等的极端观点,比如大力吐槽C++,极力推崇C. ...

  9. 为什么程序员都很排斥面试时做题?答不出题的程序员会是大牛吗?

    相信很多人都有过这样的经历,就是去面试的时候,先被要求做题. 如果像下面的判断选择还好! 如果是让写个什么算法之类的,那就呵呵了!每天和鼠标握手,还哪会写字啊! 关于这件事,很多小伙伴纷纷吐槽. 网友 ...

最新文章

  1. Spring Security 实战干货:自定义配置类入口 WebSecurityConfigurerAdapter
  2. python中title用法_在CSV fi中使用Title()
  3. 探索 Java 隐藏的开销
  4. 内置函数之sorted,filter,map
  5. 命令行中,变量 date time 格式化设定
  6. Hammer.js分析(四)——recognizer.js
  7. jmeter线程跳转_有什么方法调用jmeter的接口
  8. 车型代号对照表_车型与VIN代号对照表
  9. matlab的syms无法在函数中使用_matlab syms什么意思_常见问题解析
  10. 小卖部做成了我们没有做成的事
  11. gitHub官网访问慢的问题
  12. TWebLive基于TRTC和IM实现web群直播
  13. 计算机神奇的画图教学反思,《画图》信息技术教学反思
  14. oracle求非偶非素数的和,Sub Maths__写给非数学专业的朋友们
  15. 企业级市场“两马战”:云计算将成重要战场
  16. clo*******e:项目管理随记
  17. C++视频会议demo源码下载
  18. html转docx文档
  19. LPCTSTR 转换成 char *
  20. linux减小根目录空间_Linux下调整根目录的空间大小,空间分配情况

热门文章

  1. 转载-做一个双向自豪的人
  2. tcp socket的发送与接收缓冲区
  3. AndroidStudio安卓原生开发_Activity_生命周期_单activity的生命周期_多activity启动关闭的时候生命周期关系---Android原生开发工作笔记85
  4. Seata多微服务互相调用_全局分布式事物使用案例_Account-Module 账户微服务说明---微服务升级_SpringCloud Alibaba工作笔记0064
  5. SpringColoud学习笔记007---杂七杂八001--@Resource与@Autowired注解的区别
  6. 小程序-读取视频数据 每个N帧采样保存
  7. unsigned char bcd串乱码问题解决
  8. python 正交矩阵_协方差矩阵的计算、PCA
  9. 搜索引擎的那些事(摘取价格数据)
  10. 线性筛法 欧拉筛c语言,[洛谷P3383][模板]线性筛素数-欧拉筛法