0
点赞
收藏
分享

微信扫一扫

从事运维工作的程序员提高开发能力的一些方法


从事运维工作的程序员提高开发能力的一些方法_项目经理

从事运维工作的程序员提高开发能力的一些方法_运维_02

文 / 王不留(微信公众号:程序员生存指南)

 

 

与一线同事谈心,我听到的最多且最突出的声音,主要有以下两类:

 

1、项目成员的心声:不想做系统运维,只想专心做开发。

 

2、项目经理的心声:不想做项目经理,只想安心做开发。

 

调研回来后,针对这两个问题,我思考了很多。现在结合自己的经历,总结了一些想法,希望对大家工作有所帮助。

 

01

 

一、项目成员层面

 

1、原因分析

 

咱们现场目前大部分工作是系统运维。大家感觉每天都在做重复的事情,没有激情,同时因为无法接触技术,担心会落伍。

 

简而言之,即有对未来的担忧,又有对未来出路的迷茫。

 

2、解决思路

 

部门因为实际需要,无法安排所有人员从事纯研发岗位。大家一定要打破思维定势,在当前环境下,提高自己实力。

 

记得当年热播电视剧《士兵突击》,许三多被分配到红三连五班。在荒无人烟的大沙漠里,他并没有像其它战友一样,安于现状,混到退伍,而是做一件有意义的事-修路。在战友的冷眼中,他一直在踏实做这件事,最后感动战友,同心协力铺就了一条路!

 

咱们考虑下从事的运维工作。是不是每天也在安于现状,只是通过手工处理各种报障?为什么不考虑通过编写程序入手,让程序代替人工进行维护呢?

 

3、具体做法

 

1)转变思想,破除思维定势。

 

首先要树立三个观念:

 

a)我们的定位是软件设计师,不是系统维护师

 

b)积极主动用程序处理一切重复工作

 

c)我们可以写好代码

 

代码是为人服务的。不必要求代码多么经典,多么高大上。语言、中间件本无优劣之分。只是需要根据不同的场景,选用合适的语言、中间件。一般JAVA与数据库组合,可以解决绝大部分问题。

 

2)主动发现系统存在的问题。将运维工作中,把每天重复的工作进行分类。大家有没有发现。经常处理的问题,通常就是更新数据库几个字段,或重启下进程。完完全全可以用程序实现。

 

3)编写小程序解决这些问题。针对每一个或每一类问题,写一个或多个小程序小脚本去解决。不必考虑程序是否高效。只要帮你解决问题即可。

 

这样就意味着你开始逐渐脱离人工维护工作。大家首先的定位是让程序代替人工劳动。编写的小程序完全可以脱离系统架构,这样对现有的系统也不会产生运维风险。

 

4)整合优化众多小程序。写出来的这些小程序,就是你的兵。也就是说,你可以有一个兵、两个兵、乃至成百上千个兵分担你的工作。这样可以让你从繁琐的工作中解脱出来。我暂且把它们叫做“程序兵”。

 

 “程序兵”太多,不好维护。咱们就把这些小程序进行优化整合。把成百上千个兵整合重构成几十个,再进一步,重构成十个、九个或……一个大兵。

 

这些程序兵是大家自己创造的。我相信大家也有动力不断优化它们。大家在整合重构过程中,开发能力就可以得到进一步的提高。

 

5)编写经验文档,乐于分享。把程序优化到自己感到满意后,写成一份经验文档,分享给大家。

 

公司的产品通常不会只推广一个省份。你遇到的问题,别的省份也会遇到,你把自己的程序和经验,共享给其它省份,一方面帮其它同事从同样的工作出解脱出来,另一方面你在分享中也体会到一种成就感和荣耀。

 

4、预期效果

 

1)快速提高开发能力。自己主动发现问题,积极编写程序解决。即可以提高自己开发能力,又让系统运行的更加智能稳定。

 

2)有力展现自己的风采。可以充分证明自己,在研发方面,你的运维能力强;在运维方面,你的研发能力强。也让更多的同事知道你。

 

3)为转型研发创造机会。各区域的市场需求非常多,公司也非常希望区域做大做强。大家通过锻炼,把自身的能力提高,区域就不再是一个实施单元,而是一个拥有丰富的技术和运维经验人才的经营单元。

 

大家可以在本地开发新产品,而不完全依靠本部。咱们的销售同事也就无后顾之忧,可以尽情拿单,区域也就会更加强大。

 

02

二、项目经理层面

 

1、原因分析

 

项目经理的痛苦,我深有体会。上有客户骂,下有成员烦,左有领导催,右有恋人怨。总结一句就是吃力不讨好。

 

这让项目经理就容易产生想法:如果只做开发,就只需与电脑打交道。图以清静;每天都是在无休止的沟通和日常琐碎事务中度过,没有开发产品来得实际。

 

2、解决思路

 

做项目经理,也是咱们从事管理工作的第一步。请一定要坚持!

 

项目经理压力大很正常,无压力不成长。在社会生活中,人际关系是最复杂的。不与人交往,不算踏入社会。

 

项目经理通过长时间锻炼,不应只定位开发,而应有更大的格局。立足项目,多思考如何把人员管理好,把任务分配好,同时考虑项目下一步的发展方向。

 

大家可能会说,我们每天都很忙,没有时间考虑这些事情。其实这些事反而是一个项目经理最应该优先考虑的。

 

咱们项目经理经常说缺人。其实缺的不是人数,而是缺乏有经验有能力的人。项目经理需要积极引导项目成员发挥主动意识,利用程序代替重复劳动的思想,一方面让日常运维智能化,另一方面让他们的能力得到加强。

他们通过锻炼获得成长,节省出运维时间帮团队解决其它事情。

 

这种双赢局面。何乐而不为?

 

咱们做为项目经理,千万不要固步自封。要敢想敢做,把系统做得更智能,更健全,以至最后不需要人去维护。这将是一个巨大的贡献!

 

3、具体做法

 

1)转变思想,破除思维定势。

 

首先要树立以下两个观念:

 

a)我们的定位是项目经理,一名管理者

 

b)积极主动考虑用程序处理一切重复工作

 

2)汇总分析,归纳问题列表。

 

把系统长久存在的缺陷,以及每日客户反馈的问题,进行汇总和分类,形成“系统问题清单”。

 

3)任务分配,确定完成时间。

 

在不允许直接在系统上修改问题的前提下,将任务分配给所有人员。确定合理的完成时间点,形成“系统问题跟踪表”。大家在此期间,练习编写小程序解决对应问题。

 

4)编写文档,分享项目经验。

 

从系统的角度,提供问题解决经验,为其它省份的运维提供参考。

 

以上,是我在现场和大家沟通后,这段时间想到的一些解决方法。希望对大伙有所帮助。如有任何疑问,欢迎留言交流。

 

真心希望大家在运维中开阔思路,用程序解决日常重复的劳动,在运维中提高自己的开发能力,实现自己的人生价值。 

 

从事运维工作的程序员提高开发能力的一些方法_项目经理_03

* 作者简介:王不留

从事运维工作的程序员提高开发能力的一些方法_项目经理_04

从事运维工作的程序员提高开发能力的一些方法_运维_05

举报

相关推荐

0 条评论