这是我对团队每个新进员工说的第一件事情.这句话的意思是,我并不关心你是如何快速完成任务的,哪怕代码很差,只要它像救生艇通气门一样管用就行.这句话也是我最喜欢的座右铭之一.
  这个说法其实很合理:我们的工作是思考客户提出的问题,然后制定解决方案.思考第一,代码第二,公司请我们的最终目的不是写代码,而是想出解决方案.
  话粗理不粗.
  付你薪水不是让你来思考的,也不是让你来写代码的,你的目的是交付产品.如果不能交付有效的产品给客户,那么你的知识,技能,态度,以及所有能让人成为高效程序员的特性又有什么意义呢?!
  没有客户会说:"嗯,如果能用空格代替tab键表示缩进,那代码将更具可读性."也没有客户会要求我们使用单向散列存储的密码,事实上他们可能听都没听说过.没有客户会强求我们想出所有可能的架构和平台,然后择优选用.更加没有客户会问及他们的项目使用的是什么代码标准.
  客户不在乎代码,也不在乎架构,更加不在乎整个系统是否臃肿不堪.他们想要的就是解决他们的问题.
  真正的难点在于权衡以下这两个极端:我们的工作就是写代码,亦或是认为,代码和产品这两个条件永远无法同时满足.
  下面让我们认识两位新手程序员——Sam和Ted.ps:如有雷同,纯属巧合.


  Sam是一名从刚从当地一所大学毕业的新员工,是个标标准准的学霸.她的面试和FizzBuzz测试表现都非常出色,现在她正式开始她的第一天程序员生涯工作(被聘用了!).你,作为项目负责人,指派给她第一个任务.因为她才刚开始,所以任务并不难,你(作为一名有经验的开发人员)觉得大概一小时时间就能搞定,不过,你基于保守估计,认为她可能需要用一天的时间.
  最终她花了一个星期时间!从第二天开始,每次检查的时候,她都信誓旦旦地说一切进展顺利,代码会写得非常完美.最后终于完成了,果然如她所说的那样:代码完美得像艺术品.但是,请注意,她花了一个星期的时间才完成了这项本应该不超过一天的任务.
  现在,来说说Ted.


  Ted和Sam同一天被录用.他的面试也很顺利,尽管他完成问题的速度非常快.你也给了Ted一个相对简单的任务:大概需要一天时间.
  但是他只花了一小时!在你中午的休息时间,Ted就噌噌噌跑过来交任务了——瞧那骄傲自得沾沾自喜的样子,仿佛在一个劲说"求表扬,求给赞!"但是一看他的代码,就只能呵呵了:很多复制粘贴来的代码片段,乱七八糟的函数命名,组织混乱,雾里看花的解释,等等等等,就像一锅大杂烩一样,你不认识我我也不认识你.
  你的团队更属意谁呢,Sam还是Ted?都不是.这两个实际上都不能提供真正的产品?他们一样糟糕:一个思考得太多,另一个则思考得太少.
  所以,谨记这一点,付你薪水不仅仅是让你来写代码的,也不是仅仅只需要思考,你还需要开发出能够解决问题的产品.

[No000008]发工资不仅仅是让你写代码的的更多相关文章

  1. 一段发工资的shell代码

    人事发工资条之前是一个个截图发到我们的邮箱里,看人事妹纸是一个善良而又美丽的姑凉,于是乎写了一段shell代码实现批量发短信至各个手机号.不多说了,上代码,其实很简单,我都不好意思上传,还是记录下吧, ...

  2. python实现发工资脚本

    好开心啊,在旁边大神的帮助下,终于实现了发工资的python脚本,之前用shell写的老出错,刚才测试,发80个人工资详情,妥妥的,代码如下: from email.mime.multipart im ...

  3. POJ3040给奶牛发工资

    题意:       有n种硬币,每种硬币有mi个,然后让你给奶牛发工资,每周发至少c元(就是不找零钱的意思)然后问你能发几周?(硬币之间都是倍数关系) 思路:       这个题目做了两天,丢脸,看完 ...

  4. HDOJ2021发工资咯:)

    发工资咯:) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  5. HDOJ 2021 发工资咯:)(利用了一种取余的思想)

    Problem Description 作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵 但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处 ...

  6. (简单贪心) 发工资咯:) hdu2021

    发工资咯:) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  7. HDU 2021 发工资咯:)

    http://acm.hdu.edu.cn/showproblem.php?pid=2021 Problem Description 作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的 ...

  8. HDU2021发工资咯:)

    Problem Description 作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵 但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处 ...

  9. HDACM2021(发工资)

    发工资咯:) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

随机推荐

  1. ArcGIS JS 学习笔记2 实现仿百度的拖拽画圆

    一.前言 吐槽一下,百度在国内除了百度地图是良心产品外,其他的真的不敢恭维.在上一篇笔记里,我已经实现了自定义的地图测量模块.在百度地图里面(其他地图)都有一个周边搜索的功能,拖拽画一个圆,然后以圆半 ...

  2. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q29-Q31)

    Question 29 You are designing a SharePoint 2010 intranet site at your company. The accounting depart ...

  3. 用swift实现自动录音器

    基本介绍 自动录音与一般录音区别在:不用像微信那样按下录音-松手结束,而是根据说话声音的大小自动判断该录音和该停止的点,然后可以做到结束录音之后马上播放出来.类似于达到会说话的汤姆猫那样的效果. 在自 ...

  4. Ida动态修改android程序的内存数据和寄存器数值,绕过so文件的判断语句

    我们继续分析自毁程序密码这个app,我们发现该程序会用fopen ()打开/proc/[pid]/status这个文件,随后会用fgets()和strstr()来获取,于是我们在strstr()处下个 ...

  5. Android Actitity的生命周期

    新建项目,MainActivity代码如下: package com.wuyudong.lifecycle; import android.os.Bundle; import android.app. ...

  6. 深入.net(数据类型)

    C#究竟为我们提供了哪些“数据类型”供我们使用?这些类型有什么样的“特征”? 数据类型的分类: --- 数据类型是存放数据的容器.那么我们就以它们“存放数据的方式”分类! 1.值类型:变量中直接存放着 ...

  7. 【代码笔记】iOS-16进制颜色与UIColor互转

    一,效果图 二,工程目录. 三,代码 RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // Do any additio ...

  8. 心理控制方法——阅读Notes

    1.自助式情感手术 祛除自我意象中的伤疤的要点 2. 你制造错误,但是错误不应造就你    你身上的缺点不是你的错  3. 不仅要原谅别人,也要原谅自己 4. 怨恨是一条通向失败的道路 5. 注意来 ...

  9. 各类 HTTP 返回状态代码详解

    完整版 1**(信息类):表示接收到请求并且继续处理 100——客户必须继续发出请求 101——客户要求服务器根据请求转换HTTP协议版本 2**(响应成功):表示动作被成功接收.理解和接受 200— ...

  10. 大家一起和snailren学java-(13)字符串

    “好久没有写这个系列了.其实也有在看,不过觉得一些很基本的都写上来没意思.现在打算的是将整本书看完后,最后整合为一篇blog,筛选出一些平时没有注意到的或者更深入的理解” 在写程序中,字符串Strin ...