怎样提高程序员的软实力,走上人生巅峰(http://bbs.jointforce.com/topic/17845?ref=myread)

简介: 文章转自《http://bbs.jointforce.com/topic/17845?ref=myread》,感谢作者分享! ---------------------------------------------------------------------------------------- 程序员是一群“死脑筋”的童鞋,总认为提高了自身的编程能力就万事大吉,走向人生巅

文章转自《http://bbs.jointforce.com/topic/17845?ref=myread》,感谢作者分享!

----------------------------------------------------------------------------------------

程序员是一群“死脑筋”的童鞋,总认为提高了自身的编程能力就万事大吉,走向人生巅峰。然而编程能力是硬实力,想要升职加薪,赢娶白富美,还是要靠职场那点软实力!程序员职业不像是别的职位,靠巴结领导,组小团体就能上位(程序员们也做不来这样的事),那么程序员的软实力是指什么?又怎么能一步一步的提高呢?





首先,程序员在工作中最常见的问题就是:产品经理/测试人员/奇葩领导日复一日的提需求,改bug。程序员们疲于更改各种小问题,每天都忙到要死,可到最后却没有大项的工作成果。
根据这个问题,程序员首先应该做的是:拿到一个需求时,好好问自己几个问题(传说中的先想再做):

1.用户真正需要的是什么?

程序员最容易犯的错误就是,抱着“我只想安安静静的写代码”,或是“我就是要搞出来一个酷炫的玩意”的心态去工作,完全不考虑业务层面、用户体验方面的问题。无论是是什么样的应用,最终是为了解决用户的问题,从而实现商业上的盈利。

因此,抛开自己,去思考用户真正需要的是什么。

2.这个需求是合理的吗?这个需求有价值吗?

在应用中,无论新增还是更新某一个功能,思考一下这个功能是否合理,比如在游戏应用中增添社交功能是合理的,但添加地图定位功能就没有必要。再来思考一下这个功能的价值,在游戏应用中增添了社交功能,那么可以方便用户之间进行互动,也便于官方推出活动或公告信息,不仅增加了应用的用户黏性,还有可能拥有了一种变现的方式。

3.这个需求所需的信息是否已经完整?

增加社交功能,明确目的后,根据结果反推这个需求的信息是否完整。功能的描述是否清晰,目标的期望是否合理等。领导轻而易举的一句话是很有可能导致你一个月的无用功的。

4.这个需求还有什么疑虑?需要团队怎样配合?如何分解需求以达到最快速度的实现?

需求的大方向确定,和团队制定好具体细节和明确的分工是重中之重。甚至于,这个功能是否可以用现成的云服务,比如APICloud上聚合API拥有国内上百家云服务商,能不能直接使用APICloud平台快速开发,能不能用某一个模块直接添加?能用云服务时不自建,这不仅是程序员对于资源的有效利用,更可以充分利用宝贵、有限的时间。

以上4条,总结一句之前领导常和我说的话,别


5.对需求进行优先级排序

6.把需求分解为最小单位的任务进行开展

7.提前预测可能的问题和风险

程序员的软实力还体现在高效的管理自己的时间上,高强度的工作使得人更容易忽略在工作中的小事。时常进行总结,更易使自己明确目标。

1.首先回顾一段时间内的工作,看看高效工作时长和浪费的时长

2.结合自己的工作经验,分析自己的优势和弱势,你浪费的时间有可能是你弱势的地方,不熟练的工作当然要花更多的时间。那么这也就是自己需要提高的地方。

3.时不时的列出近期的目标,并将目标进行分解,规划为详细的工作/学习计划,建立好日程表后尽量要求自己严格执行(如果遇到拖延很严重的时候,有可能是日程表本身出了问题)

4.常于领导及跨部门同事进行沟通,确保自己的工作方向正确,避免无效返工

5.给自己留出整块的工作时间,可以不参加的会议就不参加,同时也要给自己留出整块的私人时间,保证休息



最后,给程序员们一些舒缓工作压力的诀窍:

1.确保自己吃饱、喝足、睡好,这点说出来很傻,但有研究表明,心理压力有时是来自生理需求没有被满足,尤其是糖摄入量不足时会凸显

2.与同事保持良好的合作关系,工作环境大部分取决于人与人的关系,偶尔不安静的写代码,而是和身边的同事聊上5分钟

3.保证每周的运动量,这点是程序员最难做到但也是最重要的,正常的体力消耗会带走工作压力,有时也会给你更多的灵感。

硬实力强悍会让你成为一个Geek,然而软实力出众则让你成为一个受人爱戴的Geek!提高自己的软实力,让自己的生活与工作更愉快、更稳健。

目录
相关文章
|
程序员
每个程序员和设计师必做的10项运动(http://begeek.cn/post/8271.html?_biz=MjM5OTA1MDUyMA==&mid=407358558&idx=2&sn=b218)
文章转自:《http://begeek.cn/post/8271.html?_biz=MjM5OTA1MDUyMA==&mid=407358558&idx=2&sn=b21877f23bf4063fa311185009c1f0b7&scene=0#wechat_redirect1469003221067》感谢作责分享! --------------
1794 0
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
最近在线上往hbase导数据,因为hbase写入能力比较强,没有太在意写的问题。让业务方进行历史数据的导入操作,中间发现一个问题,写入速度太快,并且业务数据集中到其中一个region,这个region无法split掉,处于不可用状态。
1305 0
|
Web App开发 监控 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Hbase依赖的datanode日志中如果出现如下报错信息:DataXceiverjava.io.EOFException: INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Exception in receiveBlock for block  解决办法:Hbase侧配置的dfs.socket.timeout值过小,与DataNode侧配置的 dfs.socket.timeout的配置不一致,将hbase和datanode的该配置调成大并一致。
768 0
|
Web App开发 前端开发
|
Web App开发 Linux
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
内存是影响Linux性能的主要因素之一,内存资源的充足与否直接影响应用系统的使用性能。 free命令:监控Linux内存使用状况。
1124 0
|
Web App开发 大数据
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
                                                                               1.
1626 0
|
Web App开发 前端开发 测试技术
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
一、迁移步骤 1.首先安装最新版本gitlab(gitlab7.2安装) 2.停止旧版本gitlab服务 3.将旧的项目文件完整导入新的gitlab   bundle exec rake gitlab:import:r...
686 0