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

2023-11-06 18:18

本文主要是介绍应用软件系统程序员的三个立面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

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

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

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

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

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

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

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

原文地址:http://www.cnblogs.com/breezeli/p/6940617.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

这篇关于应用软件系统程序员的三个立面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/358246

相关文章

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

电脑找不到mfc90u.dll文件怎么办? 系统报错mfc90u.dll丢失修复的5种方案

《电脑找不到mfc90u.dll文件怎么办?系统报错mfc90u.dll丢失修复的5种方案》在我们日常使用电脑的过程中,可能会遇到一些软件或系统错误,其中之一就是mfc90u.dll丢失,那么,mf... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

Linux系统之dns域名解析全过程

《Linux系统之dns域名解析全过程》:本文主要介绍Linux系统之dns域名解析全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、dns域名解析介绍1、DNS核心概念1.1 区域 zone1.2 记录 record二、DNS服务的配置1、正向解析的配置

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重