美文网首页程序员程序员@IT·互联网
应用软件系统程序员的三个立面

应用软件系统程序员的三个立面

作者: _水一 | 来源:发表于2017-12-09 12:24 被阅读764次

这几年工作的重心其实一直没有在代码上,做了很多产品的工作,一直觉得打造一个全面发展的团队一定是我价值所在,所以一直说自己最擅长谈梦想,也确实跟很多人谈了梦想怎么落地、谈了职业规划、孜孜不倦的去聊如何才能踏踏实实的走好职业中的每一步。 最近工作的交接有机会静下来想一想,到底什么是程序员,程序员的升级之路到底是怎么样的,为什么现在那么多程序员都不合格,同时构思一下自己的提升计划。

程序员其实一直在用一个特别平面的形象出现在大家的视野中,一提起来每个人总会提起那么几个不太可爱的词汇。而且铺天盖地的媒体对程序员的描述,也是那么个呆呆样子 ,到了最后程序员对自己打趣的时候,也就是那个样子。我想说那么是不对的,一群正在革新世界上各个行业,群体中60%以上的人都立志要改变这个世界,并信以为真的人,绝对不是那么个样子的。只是我们从来没有想过要好好描述一下自己,这也导致我们职业升级之路,简单到“好好学技术"这么几个字。

”好好学技术“,是个多么难的事,因为大多数行业是不需要平时不断的学习的,我们这个行业经常性的学习也才只能保证自己不被淘汰,还有人雇我们。在这之上要提高自己的水平,需要投入大量的时间和精力,也不一定真的就有效果,而且面对这么泛泛的一个话题,大家是无力的,不知道学啥是有用的、从哪学起才对。外加上一个正常人的自控力所限,结果就可想而知了。

经过这段时间的思考以后,我把应用软件系统程序员的能力线,拆成了3个立面,最终组成一个三角形作为能力的整体。为什么要限定应用软件系统程序员呢,因为程序员做的事也是千差万别的,做别的软件开发的兄弟们我也不清楚你们适不适合这个模型。

这三个立面分别是,开发能力、学术能力、管理能力,下面分别说一下。

开发能力,指的是具体在项目中工作的能力,这个是市面上绝对多数程序员都偏向的能力,泛指能干活。很多人面试的时候强调的最多的就是,我在这家公司也没啥不能干的活了,所以想换一家看看有没有什么挑战。或着某些leader评价自己的下属时会说,这人干活好着呢,巴拉巴拉的态度特别积极什么的。能平铺直叙的把代码写出来,这就可以叫能干活,这种程序员,抽象和复用仅停留在嘴上,可能用过几次,或者小范围的抽象、封装过几个工具,所以他对自己的进步的定义大都依靠外部环境,希望环境能逼迫他进步,也所以很多leader评价这种程序员只能说干活挺好的,然后就开始谈如何积极,试图用潜力陷阱迷惑别人(这招一般情况下很好使)。好一些的能对程序做大量的抽象和复用,了解底层运行机制,并因为底层运行机制,反过来调整代码的写法,进而对重构、调优有自己一套心得,这种程序员世面上就很难找了。

学术能力,之前大家其实会把所有的技术相关的问题统统定义为技术,所以研发升级之路就剩下简单的”好好学技术“,几个字了,往往很多人非常困惑的是,学了也用不上,但是做技术的不学技术也不行。今天我就想正式把这部份拆出来,在开发能力之外,独立强调学术能力。大家都知道,量变是质变的必要条件,学而所用的前提是学的足够多足够好。我们把一部分能力放到学术能力里面去,这样就和实际应用拆清关系了,有些东西是要做研究的,不一定非要实际用起来,学术是可以发表的,可以在一个方向不断加深的,学术类的宣传反过来会加强自身影响力,学术和应用的双向转换会推动能力和影响力的不断提高。为什么国内其实是没有计算机领域的大神的啊,因为我们太过关注开发能力而太过忽视学术性的研究了。

管理能力,这一点估计是大家质疑最多的,做个技术还要管理能力嘛!我来回答的话,是人就要,你个做技术的你说你算不算人。管理不一定是怎么指挥别人,同样只会指挥别人这也不叫管理。管理的第一步就是管理自我,我们都听过一句老话叫,人贵在自知,自知就是管理自我很重要的一个表象。为什么有些人做事井井有条,家庭、工作圆满和谐;有些人整天怨天尤人,好像天底下他最倒霉呢?为什么有些人会说我真难啊 ,问你到了他的境地怎么办?而另一些人好像世界上没有什么难事,总能从容的处理呢。管理其实并不是指挥人该怎么指挥,而是告诉你,如何做人,如何做事。很多人身处困境时才会说我当初不应该如何如何,现在怎么办啊?会管理的人其实身处相似的困境也不一定有好办法完全解决,但是可喜的是,他根本不会走到那一步,绝大多数的事情不是一步变成那样的,是由你之前一个又一个的选择推动着走到这一步的,管理学的就是如何做好之前一个又一个的选择。或者让你不后悔走到这一步,因为让你重走一遍的话,你还是会这么选。所以学会管理自身多么重要啊,它不仅会让你有更好的生活,也为你职场升职做好准备。管理的三个境界分享给大家:做事、做势、做局。

以上就是我对程序员成长拆开的3个立面,相对于之前笼统的”好好学技术“,将自己的成长拆分到这三个象限里,我想应该会更有针对性的提升,也会提升的更快。

相关文章

  • 应用软件系统程序员的三个立面

    这几年工作的重心其实一直没有在代码上,做了很多产品的工作,一直觉得打造一个全面发展的团队一定是我价值所在,所以一直...

  • 计算机基础2

    操作系统 程序员无法掌控所有的硬件操作细节,为了更加优化使用硬件,操作系统作为应用软件和硬件之间的中间件,让程序员...

  • 重新学习 c 语言(1) 开场白

    (1)开场白 做了近9年的程序员,确切的说是一个应用软件程序员,一个win32 应用软件程序员.虽然使用过VC等工...

  • 软件测试基础理论:什么是应用软件?

    应用软件:Application Software 应用软件(Application)是和系统软件相对应的,是用户...

  • Python Basic day01

    1,明白操作系统的作用 承上启下的作用,上为应用软件,下为硬件。是硬件系统和应用软件的桥梁。 2,运行python...

  • APP测试要点及常见Bug分类

    引言 对于产品的手机项目(应用软件),主要是进行系统测试。而针对手机应用软件APP的系统测试,我们通常从如下几个角...

  • 2017年11月8号 计算机与网络基础知识

    计算机 的系统由硬件和软件两部分组成,计算机系统中的软件通常分为系统软件和应用软件两大类。 系统软件支持应用软件的...

  • 软件系统

    软件系统包括系统软件和应用软件两大类。 应用软件:比如音乐播放器,是为用户解决各种世纪问题而编制的程序。 插曲:程...

  • 相关概念

    中间件 是提供系统软件和应用软件之间连接的软件,以便于各种部件之间的沟通,特别是应用软件对于系统软件的集中的逻辑。...

  • 计算机基本介绍

    计算机的组成:软件系统+硬件系统 1、软件系统 (分为二类:系统软件 + 应用软件) 系统软件(操作系统软件): ...

网友评论

本文标题:应用软件系统程序员的三个立面

本文链接:https://www.haomeiwen.com/subject/jumuixtx.html