热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

为什么软件程序员的价值总是被严重的低估

在我任职于雅虎期间(大约2001-2007),我学会了做很多事情,但同等重要的,我还学会了如何避免做某些事情。对于后者,主要就是如何避免不公的对待技术人员。雅虎,尽管做出了很多善意的努力和明显的

不公平待遇

  在我任职于雅虎期间(大约 2001-2007),我学会了做很多事情,但同等重要的,我还学会了如何避免做某些事情。对于后者,主要就是如何避免不公的对待技术人员。雅虎,尽管做出了很多善意的努力和明显的例外举措,仍然没有在公司内带来技术人员地位的提高。尽管我们这些技术人员创造了大量的价值,可管理层永远都是非技术人员。不可避免的,大量优秀的人才注意到了这些,忍无可忍,愤而离开。

  在 2007 年离开雅虎后,我和别人合作创立了 Polyvore,从这时开始,我的一个人生主要目标就是,要建立一个高度重视技术人员、将他们作为一等公民对待的公司/社会环境。我毫不动摇的坚信,建立这样的环境能带来各种各样大量的好处。

  此后我一直在思考一个问题,相对于很多的社会上能创造出巨大价值的传统职业角色,为什么软件技术人员的价值会被整体的低估?我总结出三个社会学上的原因。

  一个有形,一个抽象。人们倾向于更认可他们能看得见摸得着的有形的东西。

  一栋办公大楼,坐满了在办公桌前办公的人。人们能看见这些,很自然的会认识到大楼的价值。人们面对一栋高耸如云的建筑物,会欣赏它的规模和设计。人们会习惯的认为,不管是谁在负责创造这些东西,他一定是极具价值的人。与之形成对应,人们却看不见和摸不着一个运行起来能等价于 50 个人工作的软件或一个用来设计大厦的软件。软件和其它抽象的智力劳动是因为人们不可见,所以被社会性的低估。

  缺乏测量方法。在缺乏好的方法来测量和评估一个东西的真正价值时,人们倾向于用他们的偏好来评判。人们倾向于认为大型团队=更重要。对于我们这些曾经在“大企业”工作过的人来说,这是显而易见的,一些大型公司的管理者通过组建更大的团队来扩大他们的权利机构。更多的人=更多权力&报酬。

  要公平还是要平均?人们都渴望公平。但有趣的是,人们的这种渴望却无法应用到像软件工程师这样一个人产出会比另一个人高出几个数量级的生产力异类上。一个技术人员能让一个操作过程自动化,于是 50 个人的活儿现在只需要 5 个人。人们很难接受这样的事实:一个人的报酬应该比其它人高出几个数量级,这种悬殊看起来不公平。

  还有一些实际操作上的原因。例如,用一个经理来管理一个大组织,这是必不可少的,因为少了他们事情会很快变得一团糟。这种必不可少成了他们讨价还价的资本。而相对照的,优秀的程序员总是使得自己看起来是多余的,他们能让系统在缺少他们的情况下仍能不停的工作、生产有价值的东西。只有最开明的公司老板才能真正认识到这种人的真正价值。

  如果你在做的工作正是这种创造可扩展且复杂、抽象的智力工作,很有可能你正是不被人看重并且因此被低估。

  怎么办?

  要杰出。并不是因为你是程序员,你就能创造出无数的价值。你能让你的团队的工作效率翻翻吗?你能让你开发的项目具有很好的扩展性吗?

  会讲故事/沟通。让一个复杂抽象的题目变得易于理解和欣赏的好方法就是给人们讲故事。用一种其他人能听懂的方式解释为什么你正在研究的工作很重要。一旦人们理解了其中的原因,他们也就找到了欣赏你的工作的理由。

  用合适的度量手段。采用人们易于接受的度量方法能让抽象的事物变得有具体,能够很好的让人们理解你创造的价值。如果你说你调整了图像压缩比,使得每个图像的体积减少了 4.5KB,很少人能理解你说的是什么。而当你解释说这些压缩能使得用户界面的加载速度提高 15%,那大部分人都能明白。如果你解释说页面加载延迟减少 10ms 意味着收入会增加 10%,这就更好了。每个人都理解收入是什么。

  加入正确的公司团队。最后一点,你也许应该寻找一个开明的公司,一个能按人的实际贡献、而不是按老旧的社会标准来评价人的公司,加入他们。选择的方法可以看看这个公司是不是由技术人员创立/管理的,看看这个公司是否大量的使用各种方法评价人。去看看他们都有哪些评价标准!

  你认为呢?还有什么其它原因导致程序员的价值被低估吗?你对如何选择一个正确的公司有什么好的建议?


推荐阅读
  • 驱动程序的基本结构1、Windows驱动程序中重要的数据结构1.1、驱动对象(DRIVER_OBJECT)每个驱动程序会有唯一的驱动对象与之对应,并且这个驱动对象是在驱 ... [详细]
  • Redis 是一个高性能的开源键值存储系统,支持多种数据结构。本文将详细介绍 Redis 中的六种底层数据结构及其在对象系统中的应用,包括字符串对象、列表对象、哈希对象、集合对象和有序集合对象。通过12张图解,帮助读者全面理解 Redis 的数据结构和对象系统。 ... [详细]
  • 本文介绍了 JSON Schema 和 XML Schema 的基本概念,并详细讲解了如何使用 AJV 进行 JSON 数据校验。通过具体的示例和扩展方法,帮助读者更好地理解和应用这些工具。 ... [详细]
  • 阿里面试题解析:分库分表后的无限扩容瓶颈与解决方案
    本文探讨了在分布式系统中,分库分表后的无限扩容问题及其解决方案。通过分析不同阶段的服务架构演变,提出了单元化作为解决数据库连接数过多的有效方法。 ... [详细]
  • Linux笔记:JDK安装与环境变量配置
    本文详细介绍了在Linux系统中安装JDK并配置环境变量的步骤,帮助读者顺利完成Java开发环境的搭建。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 整理于2020年10月下旬:总结过去,展望未来Itistoughtodayandtomorrowwillbetougher.butthedayaftertomorrowisbeau ... [详细]
  • 红米手机如何高效传输照片至电脑
    本文介绍了一种简单有效的方法,将红米手机上的原图照片传输到电脑上。这种方法无需额外的硬件或软件,仅依赖于微信的收藏功能即可实现。 ... [详细]
  • 【转】强大的矩阵奇异值分解(SVD)及其应用
    在工程实践中,经常要对大矩阵进行计算,除了使用分布式处理方法以外,就是通过理论方法,对矩阵降维。一下文章,我在 ... [详细]
  • 今日深入研究了树状数组,感觉难度较大,通过课件和博客辅助学习,仍有许多疑惑。主要探讨了老师推荐的三道题目,初步掌握了树状数组的基本用法。同时,还学习了逆序数和离散化的概念及其应用。 ... [详细]
  • hdu4539郑厂长系列故事——排兵布阵http:acm.hdu.edu.cnshowproblem.php?pid4539问题描述:给你一个n行m列的0-1矩阵,0表示不 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • Bootstrap 插件使用指南
    本文详细介绍了如何在 Web 前端开发中使用 Bootstrap 插件,包括自动触发插件的方法、插件的引用方式以及具体的实例。 ... [详细]
  • 本文介绍了 Go 语言中的高性能、可扩展、轻量级 Web 框架 Echo。Echo 框架简单易用,仅需几行代码即可启动一个高性能 HTTP 服务。 ... [详细]
  • 本文详细介绍如何使用Netzob工具逆向未知通信协议,涵盖从基本安装到高级模糊测试的全过程。通过实例演示,帮助读者掌握Netzob的核心功能。 ... [详细]
author-avatar
一颗顽石
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有