来聊聊程序员的职业发展路线

news2025/1/17 6:19:31

作为程序员,在开发岗位上做了几年,特别是到了30岁,这个而立之年,我们会来到一个重要的人生岔路口。就是管理和技术两个选择,一边专业路线,一边是管理路线。

在互联网的头部企业,对管理和技术是平等对待的,所以晋升会存在管理和技两个通道的

image.png

既然有了选择,就会有人纠结,不知道是选择专业路线,还是选择技术团队的管理路线。

这个选择是程序员人生中第一个大的选择,也是第一个障碍,倒不是说这个障碍是到底要不要选择管理,而更多的是对做管理的迟疑,怀疑到底能不能做好管理,做了管理之后,技术是不是就荒废了。

这种状态犹豫不决、摇摆不定的状态保持时间长了,最终会导致技术和管理都没做好,这是得不偿失的。

为了解决这个问题,有必要分析程序员职业发展的路线到底有几条,分别需要具备怎样的能力,从而做到”手中有粮,心中不慌“

image.png

01技术

技术类上,是有两个方向:架构师和技术专家

架构师他的侧重点是在“广”上,他主要负责技术的整体和架构,在业务上,需要有很深的理解,有丰富的经验,甚至能做到“走的桥比你吃的盐还多”。在技术上,能够广泛涉略,掌握的技术知识越多,内力就越加深厚。

我觉得架构师还需要三点必备能力,其一需要有极强的执行力,能够快速的给出合理的方案,推动技术落地。其二需要有极强的判断力,能够准确的找到复杂系统的疑难问题所在,就像武林高手,一眼就看出对方的破绽。最后还需要有极强的创新力,能够创造新的解决方案,解决现有技术难题。

所以从程序员到架构师的成长之路,总的指导原则是:积累经验,拓宽视野,深度思考。技术专家他的侧重点是在“专”上,这个就很好理解,就是在某个领域能够深入,能够熟悉其背后运行原理。不同的领域都会存在专家,例如:Java专家、前端专家、图像算法专家、Linux内核专家等等。专家相对架构师,更加专注,并不会考虑太多整体方案。

所以从高级开发成长为技术专家,主要是扩展领域内的技术宽度,提升领域内的技术深度。因为领域也不是特别窄的一个面,而是包含多个技术面。

举一个例子:前端目前没有发现什么可替代技术,但是前端的技术范围很广,除了基础的 HTML、CSS 和 JavaScript 技术外,还涉及前端框架、UI 库、自动化构建工具、代码管理工具等等。在每个技术面中,同样包含了很多技术点,这些技术都是知识盲区,所以需要提升技术深度。

新的技术如 Flutter WebAssembly 都是对当下前端技术的补充,真实 TS 也不是为了替代 ES ,它也是一个补充和备选方案。大佬们都说要追求高复用、高内聚、低耦合、易拓展,大家开始忙不停蹄的学习这些概念和应用实践;后来社区开始讨论低代码、人工智能,大家好像都蛮兴奋的。

这里非常推荐大家试试JNPF快速开发平台,依托的就是低代码开发技术原理,后台提供了丰富的解决方案和功能模块,大部分的应用搭建都是通过拖拽控件实现,简单易上手,在JNPF搭建使用OA系统,工作响应速度更快。可一站式搭建生产管理系统、项目管理系统、进销存管理系统、OA办公系统、人事财务等等。

开源链接:https://www.yinmaisoft.com/?csdn

低代码平台天然就具备全栈开发能力,低代码程序员天然就是全栈程序员。

组 2318.png

02管理

管理也分为了两个方向,技术管理和职业管理。顾名思义,技术管理更加倾向于技术,而职业管理完全抛开了技术,纯粹的商业方向。

技术管理,这个方向是程序员最自然的选择。大部分的技术管理者,在其从程序员转为管理岗位的时候,都是在领导或公司的要求下,被动的推到技术经理岗位上的,并非是自己当初有强烈意愿、主动去选择管理岗的。然后走上曼曼打怪进阶的路线,从技术经理岗到技术总监,带领几十号人的团队冲关,然后到成为技术业务部和事业部的技术副总裁,相当于CTO了。

技术管理需要在业务上有较深的理解,在技术上能够根据技术发展趋势,进行技术规划。在产品上能够极强的洞察力,进行产品规划。在团队加上能够规划团队建设、组织结构等等,所以这是综合素质的要求。

职业管理

职业管理者往往更加关心于整体产品业务的团队,不限于技术团队。比如某个事业部的总裁,或者是某个业务部的总裁。大家往往都听过某某事业部空降了领导,这个领导就是属于职业管理者,他的移动性更加强,能力更加通用。这个方向是可遇不可求的,有些人一辈子都不可能触及到。这个就是天花板上的别人家的楼板,你说难不难?

03创业

创业这个方向上,一般是作为技术合伙人来参与,如果想要自己的创业公司能够成功,必须是全能型创业团队,在技术、产品、营销等方面不能有明显的短板。

我举一个真实的例子:我的上一家公司的直接领导,辞去技术总监的职位,作为一个技术合伙人创建了一个团队,主要提供物流解决方案。前几个月和他聊,公司已经在去年实现盈利1000多万,通过股权上操作,已经成为最大的股东,掌管着整个公司的前进方向。

说到这里挺惋惜的,创立之初,当时极力的拉我入伙,被我拒绝了,理由是工资太低了,这个理由在现在看来简直可笑啊。

微信截图_20231220141646.png

04产品经理

程序员转产品经理,需要做到技术思维到产品思维的转换。

技术思维角度是从功能开始,而产品思维的角度是从业务开始。

作为程序员,当要做一个项目时候,我们最关心的是这个项目有哪些功能,然后考虑每个功能如何实现;

而作为产品经理,当要做一个项目时候,我们看重这个项目的业务场景是什么,解决用户什么问题

技术思维角度是怎么去实现功能,而产品思维角度是为什么要这个业务。

从技术思维的角度关注一个需求时候,总是先关注一个需求如何去实现,即HOW;

而从产品思维上来关注一个需求时候,应该多问一下WHY,为什么需要这个需求,多思考为什么,从而找到需求或问题的本质。

技术思维角度是向专家一样行动,而产品思维角度是向小白一样思考。

作为程序员,我们日常接触到最多的还是技术人员,这些人一般来说逻辑思维都较强,擅长使用和处理各种软件,所以总是将这种形象代入到客户身上。

但作为产品人员思考时候,将用户想得越“小白”越好,假设他们是不懂电脑,不太会玩手机,甚至不会打字的人。

05总结

上面4个方向是程序员主要的职业发展路线,作为个人来看,如果能一直做自己热爱的工作和喜欢的角色,应该是最好的状态。

不管走那一条路,一些能力是共通的,比如:技术规划、团队建设、沟通、时间管理等。处于自己的选择,可能不会选择管理方向,但是难免在以后的工作中会和管理者打交道。管理作为一种通用的素质,希望大家能够技多不压身。

总之,作为程序员,技术和管理,就像人的两条腿,所有的职业发展路线都离不开,毕竟一条腿是走不远的。

觉得不错,记得关注、转发和在看!多年经验分享,实属不易,感谢支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1340417.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(12)Linux 常见的三种进程状态

💭 前言:本章我们专门讲解进程的状态。我们先学习具体的 Linux 系统状态,再去介绍 OS 学科面对的概念如何理解 —— 运行态、终止态、阻塞态以及挂起态。 进程状态(Process Status) 什么是进程状态? 进程…

打地鼠游戏来了

主要利用js鼠标点击事件和window.setInterval()回调函数来进行实现的. 源码获取方式:链接:https://pan.baidu.com/s/1eW9qvX3zFH9qlH82-I4yOA 提取码:1233

1.2.3 TCP/IP参考模型

一、OSI参考模型与TCP/IP参考模型 1、应用层:将表示层和会话层都纳入其中,形成一个比较大的层次,包含所有的高层协议 2、传输层:实现端到端的,进程与进程之间的通信。 3、网际层:TCP/IOP模型中最关键的部…

Arduino平台软硬件原理及使用——发光二极管(LED灯)的使用

文章目录 一、发光二极管的发光原理 二、发光二极管正负极的辨别 三、发光二极管在Arduino中的使用 一、发光二极管的发光原理 通过上述两幅图像对发光二极管的结构及发光原理进行理解; 从物理学的角度而言,当电流通过晶片时(N区的电子向P区移…

腾讯云轻量应用服务器和云服务器有什么区别?买哪个好

腾讯云轻量服务器和云服务器有什么区别?为什么轻量应用服务器价格便宜?是因为轻量服务器CPU内存性能比云服务器CVM性能差吗?轻量应用服务器适合中小企业或个人开发者搭建企业官网、博客论坛、微信小程序或开发测试环境,云服务器CV…

【node-express】实现省县市/区三级联动接口

省县市/区三级联动接口 介绍接口步骤代码部分 介绍 源码地址:https://github.com/thinkasany/nestjs-course-code/tree/master/demo/address 使用 navicat 导入sql文件,新增表,然后只需要一个接口 localhost:3001/region?parentId1, 不断的…

uni-app新建页面

新建页面 一、右键点击 pages 文件夹,点击新建页面。 二、输入页面名称、选择创建 vue 文件、勾选创建同名目录、选择默认模板、勾选在 pages.json 中注册、点击创建即可。 原创作者:吴小糖 创作时间:2023.12.28

数据结构与算法(C语言版)P10——图

1、图的基本概念和术语 前面学过: 线性是一对一树形是一对多 而今天要学习的图形结构是多对多。 图的定义: G(V,E) V:顶点(数据元素)的__有穷非空__集合。E:边的有穷集合。 __有向图:__每条边都是有方向的 __无…

每周一算法:区间覆盖

问题描述 给定 N N N个闭区间 [ a i , b i ] [a_i,b_i] [ai​,bi​],以及一个线段区间 [ s , t ] [s,t] [s,t],请你选择尽量少的区间,将指定线段区间完全覆盖。 输出最少区间数,如果无法完全覆盖则输出 − 1 -1 −1。 输入格式…

程序员如何高效学习技术?

我们相信努力学习一定会有收获,但是方法不当,既让人身心疲惫,也没有切实的回报。 不少朋友每天都阅读技术文章,但是第二天就忘干净了。工作中领导和同事都认可你的沟通和技术能力,但是跳槽面试却屡屡碰壁。面试官问技术…

javaWebssh民宿管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh民宿管理系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模 式开发。开发环境为TOMCAT7.0,My…

Graph Transformer2023最新研究成果汇总,附15篇必看论文

图Transformer是一种结合了Transformer模型和图神经网络(GNN)的框架,用于在图形结构数据上执行预测任务。在图Transformer中,Transformer的自注意力机制被用来学习节点之间的关系,而GNN则被用来生成节点的嵌入表示。通…

百模大战中的AI行业新趋势:开启技术变革的大门

引言 在百模大战中,AI行业的发展正在经历前所未有的变革。这场竞争不仅推动了AI技术的快速发展,也揭示了AI行业的新趋势。本文将深入探讨这些方向,为读者提供对AI行业未来发展的深刻洞察。 一、技术进步 百模大战的激烈竞争推动了AI技术的飞…

VR全景图片制作时有哪些技巧,VR全景图片能带来哪些好处

引言: VR全景图片是通过虚拟现实技术制作出的具有沉浸感的图片,能够提供给用户一种身临其境的感觉。在宣传方面,它有着独特的优势和潜力,能够帮助吸引更多的潜在客户,那么VR全景图片制作时有哪些技巧,VR全…

uni-app uni.scss内置全局样式变量

锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…

【快速全面掌握 WAMPServer】04.人生初体验

网管小贾 / sysadm.cc 我们在前面的教程中为小伙伴们详细地介绍了 WampServer 的安装方法,相信大家对于如何安装应该已经有了一个比较完全的掌握。 在完全掌握安装方法之后,我们还可以更加便捷地使用我为大家提供的一键安装批处理程序来快速搞定安装部署…

Qt Creator可视化交互界面exe快速入门4

上一期介绍了信号与槽,本期介绍加法计算器 我们来新建一个项目 然后拖动设置按钮 还需要个输出框 这里拖动Line Edit 我这里只是简单演示一下,做个低配版计算器,再加个加号和一个等于号就结束了。 然后回到代码编辑部分,我们需要…

关于SQL时间盲注(基于sleep函数)的手动测试、burpsuite爆破、sqlmap全自动化注入

SQL时间注入是一种常见的SQL注入攻击方式,攻击者通过在SQL语句中注入时间相关的代码,来获取敏感信息或者执行非法操作。其基本原理如下: 攻击者向Web应用程序中输入一段恶意代码,通过SQL语句查询数据库,并注入时间相关…

postman使用-03发送请求

文章目录 请求1.新建请求2.选择请求方式3.填写请求URL4.填写请求参数get请求参数在params中填写(填完后在url中会自动显示)post请求参数在body中填写,根据接口文档请求头里面的content-type选择body中的数据类型post请求参数为json-选择raw-选…

HDFS客户端UnknownHostException事故解析

文章目录 前言事故现场问题分析是否是整个域名解析服务当时都出问题了是否是出问题的pods本身的域名解析有问题 异常发生的全部过程域名的解析是什么时候发生的,怎么发生的域名解析的详细流程 重试发生在什么地方为什么重试会无效 Bugfix代码详解关于StandardHostRe…