专栏名称: 程序员技术
最有影响力的程序员自媒体,关注程序员相关话题:程序人生、IT技术、IT职场、学习资源等。
51好读  ›  专栏  ›  程序员技术

程序员的成长离不开哪些软技能?

程序员技术  · 公众号  · 程序员  · 2017-05-26 18:42

正文



程序员要如何讨人喜欢、令人欣赏、通过自己富有积极性和支持性的行为去激励他人?比如说关心自己,关爱自己的背部、臀部乃至大脑重要吗?如果你不关心它们,它们终究会坏掉。怎样这些可以不坏掉?我们有什么需要学习的软技能?



职业生涯的四个阶段


受助和学习阶段

  • 在别人的帮助下完成分配的任务

  • 适应和熟悉工作环境

  • 遇到问题的情况下能够及时汇报问题,并在别人的帮助下解决问题


独立贡献阶段

  • 按时高质量完成分配的任务

  • 独立完成有挑战性的任务

  • 独立解决非预期问题。

  • 对整个项目/系统有整体的认识


带动他人一起贡献阶段

  • 具备深度和广度相结合的专业知识和技能

  • 能够根据需要完成团队组建

  • 能够为他人分享经验

  • 协助他人处理问题并传授处理问题的方法

  • 创建团队协作环境

  • 带领团队关注结果


领导创新阶段

  • 对行业和领域具备一定的前瞻性

  • 专业水准得到组织内部及同行的认可

  • 根据专业判断为组织制定发展战略



工作压力及如何缓解压力


心理压力源


  • 认知性: 目标模糊、不确定,约定的目标难以执行 ,时间紧或等待 ,难以选择或没有选择 。

  • 情绪性: 恐惧、焦虑、失败、悲伤、愤怒、挫折、损失和负罪感 ,厌倦产生的动机冲突、想家 ,精神上的诱惑导致丧失信仰 ,人与人的感情躯体压力源。

  • 睡眠缺乏 ,营养缺乏、疲劳 、伤病



如何 判断 自己压力过大?


如果你有发现自己有如下情况,可以判断为压力过大。


  • 不断地让自己接受新的工作,同时也不放弃原有的工作

  • 开始怀疑生活、事业或者工作的意义。

  • 虽然很喜欢自己的工作,但投入过多的时间时有感到很内疚。

  • 有时候会莫名其妙地心烦意乱,甚至感到透不过气来。

  • 你知道你的工作需要感情投入,但不知道怎么做到。

  • 希望对工作更有自信心。

  • 似乎没有其他时间学新的东西。

  • 在工作空闲的时候也很难放松。

  • 有时候会莫名其妙地心烦意乱,甚至感到透不过气来


如何 缓解 工作中的压力?


立刻缓解法:

  • 停下手头的工作,去喝杯水或者看看窗外。

  • 戴上耳机听一会音乐。

  • 随便找个话题找你身边的人聊上几句。换个其他事情做一下,转移一下注意力。

  • 闭上眼睛,可以快速浇灭怒火。

  • 转转脖子,缓解僵硬。

  • 拥抱自己,用双臂紧紧拥抱一下自己。

  • 闻闻植物,离绿色植物10厘米左右,深呼吸5次。

  • 自我解嘲。

  • 击掌、跺脚,两三分钟即可。


长期缓解法:

  • 设置一个明确的目标,努力弄清楚自己想做什么,该怎么做,越早好。尽量做自己喜欢的事,设置今后几个月或几年的目标。

  • 和谐的关系。努力在同事、合作者间寻求和谐轻松,有所回报的关系。

  • 完成工作的时间表。制定每项工作的完成时间。

  • 学会心理换档。每小时工作中抽出5分钟来放松自己。

  • 及时处理问题。越棘手的问题优先解决。

  • 快乐的工作。多参与户外活动或者体育活动。




如何控制需求


当测试人员发现一个BUG,第一时间肯定是交给开发人员修复,那么这些BUG都是开发造成的吗?不一定!很多BUG其实是由需求造成的。那么如何控制需求呢?


接到需求需要问的几个问题:


  • 就这个需求而言,客户/用户真正需要的是什么?如果客户提出“我需要一匹跑的更快的马”,你可能会为客户提供一匹汗血宝马。但是客户的真正需求是“更快”,而马只是一个解决方案,因为在汽车刚发明的时候,他可能从来没有见过汽车。

  • 这个需求真的有价值吗?如果用户提出在一个在线游戏平台做一个虚拟商品拍卖的功能,但是虚拟商品的有效期非常短,那么明显这个拍卖功能就没什么价值,因为拍卖不可能那么高时效性。

  • 这个需求是合理的吗?有没有隐藏的疏漏或者BUG。

  • 给出的需求信息里面是否完整包含“作为一个【角色】, 我想要一个【功能描述/目标期望】以满足【商业价值】”这里面的三个要素。

  • 这个需求是否还有其他关联/隐藏的疑虑需要考虑?

如果上面问题都解决了,那么就可以接着解决以下两个问题:


1. 这个需求能否分解为更小单位的需求?这样可以方便分配开发任务。

2. 这个需求如何进行测试? 任何需求都需要保证能够被测试。


在保证需求没有问题以后,就可以按照下面的步骤处理需求:

1. 对需求进行优先级排序。

2. 把需求分解为最小可开发的Task(任务)

3. 如果还有遗留的问题/风险,建一个Task来处理这些风险/问题。



如何高效的管理自己的时间(感谢@林嗣翻译)







请到「今天看啥」查看全文