程序人生,人生如戏

程序员的出路在哪里

很多计算机科班出身(也有转行的)同学,第一份工作都是研发,测试,项目管理之类的工作,这里面最多的应该就是从事研发相关的岗位。那我们就以研发岗来举例,聊聊我职业生涯从业以来的心得和感悟。

职业生涯前三年,是你从学生转变成一个合格的工人的第一阶段,也是关键阶段。为什么说是关键阶段呢,因为这里面伴随着身份转变的还有理念和心态的转变,有些人在学校里面自在惯了,一时之间无法适应职场的规章制度,比如说朝九晚五上班(我上班第二天感觉有点累,起不来,就让同事帮忙给领导请假,结果被领导抓典型批了一通),在电脑面前一坐就是8个小时,理论知识转变成实际产出,看着满屏代码一脸懵逼,等等。

同时这个阶段也是你进步最快的一个阶段,随着项目经验的逐渐积累,你会把学校里学到数据结构,操作系统,计算机网路等基础知识逐渐实践一下(公司业务不同,侧重点也不同),然后随着解的 bug 数量增多,你不会再看到问题的时候惊慌失措,而是会静下心来,认真分析,直至最终解决掉。在这个过程中,你可能需要请教周边的同事,帮你一起看问题。你也许会不好意思,觉得不应该麻烦别人之类的,我以前也是这样的想法。但我现在不这么认为了,凡事都讲究合作共赢,你最终目的是解决问题,不用在意用什么方法(违法的不行)。你请求同事的帮助的时候是在消耗你的情感packet,你得找机会换回去,不管是帮他们解决问题,还是请他们喝杯奶茶之类的,总之妳得换回去。总之,在这个阶段你应该快速进步,当然每个人进步速度跟公司业务,公司经营情况,角色定位相关。

接下来就进入了第二个阶段,黄金 5-7 年 。这个阶段是程序员最美好的阶段,年轻,又有几年的工作经验了,价位也不算很贵。绝大多数人在工作三年后会选择跳槽,很简单,跳槽才容易加薪嘛

 但这个时候就体现出人与人之间眼光,际遇的差距了,大部分人会选择大厂,毕竟光鲜,稳定,收入高,有明亮整洁的办公室和好的福利待遇,这是个好选择。也有少部分“天选之子”因为各种原因,在这个阶段加入了创业期的京东,今日头条,阿里巴巴等,你没法确定他们是眼光好,还是当时没得选,总之他们赢了。之前认识的一个朋友,毕业两三年在2005年加入了刚从中关村柜台搬到写字楼的京东,天天跟着刘强东写C#,后面年纪轻轻就做到了VP,早早的实现了财务自由

别人对他的评价是:他的气质跟他的身家完全不符。

可惜我没有这样的眼光 ,放弃了很多后面成长为大厂的初创企业,在黄金时期选择加入了大厂,过上了螺丝钉的生活,现在还经常拍大腿说:早知道当初就。。。。

这个阶段往往决定了你之后的职业生涯怎么走向,如果你选择了初创企业,99%无了,1%一飞冲天了,这种情况不做讨论。就拿正常在正常厂里搬砖的情况来讨论,有些人沉迷于技术,苦心专研,一直做到架构师,技术专家之类的岗位,有些人比较喜欢做管理,专研于横向和纵向经营,打好人际关系,扩大人脉。本来这两个方向没有好坏之分,每个人有适合自己的方向。

但理论跟现实是有差别的,特别是内卷严重的国内,很多程序员到了35岁就没有工作了,不是你不够优秀,而是年轻人更有性价比,所以在国内想做技术做到扫地僧那样还是挺有难度,不像国外那么纯粹,可以供养各种大牛。

所以,个人观点是,如果就是单纯的想做技术,那么就要早做打算,要么创业要么发展副业。如果就想在企业里面一直做下去,那么趁早转管理路线。为什么要趁早,因为做管理和做技术其实还是有区别的,做技术可能就整天坐在电脑面前,解决各种问题。做管理如果你还是一天到晚就坐在电脑面前,不参加各种会议,各种沟通,就自己呆着,那说明你这个管理做的很差,接下来这条路不会好走。其实世界本质就是个草台班子,不要觉得金子在哪里都会发光,也不要觉得人有多优秀才能身居高位,其实你可能缺的就是个机会或者平台。年轻的时候转管理,这个时候你带的 team 一般小而业务单一,可能你也比较熟悉,这个时候你既有时间做技术,也不需要天天为一些疑难杂证而痛苦,你有很多时间去扩展人脉,去向上管理。这样随着公司发展的越来越好,你的team也会越来越大,水到渠成。就算公司不行,你跳到别的公司,也可以继续做管理岗位,可以挑战带领更大的team或者稳妥带相应规模的 team.

有句很扎心的话,架构师只有责任,没有权利。很多初创企业会找几个技术专家来试水,效果不好就拿来背锅。做管理的话也可以这样做,也很多人这样做。比如说,一个不太懂技术的人来带领一个技术团队,你肯定觉得这会很困难。其实不然,他们往往会再搞来一两个牛逼的架构师来替他判断决策,解决各种疑难杂证,一旦出了问题或者效果不好,还可以甩锅给他们,自己反倒安然无恙

是不是觉得做技术的很惨,替罪羊,背锅侠的代名词。

其实也不能这么说,现在很多大厂的创始人都是做技术出身的,差别在于他用技术变现了,同样的时间我们在厂里做螺丝钉,搬砖,他们在自己的作坊里调研市场,研究商业模式,推出自己的产品。这是两条完全不同的路,我们朝九晚九的搬砖,用时间获取稳定固定的报酬,他们在没日没夜的一遍一遍试错,修改,验证,试错,修改,验证。。。。。。。高投入高风险高收益。

所以,程序员的出路到底在哪里呢,干了这么多年我也说不上来,只是有一些自己的心得和感悟,记录下来。也许找一家有上市潜力的公司,干个几年,等公司上市股价大涨,然后财务自由,世界旅游。又或许程序员的出路就是不做程序员了,而是新铁人三项和吉祥三宝

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

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

相关文章

传感器:基于STM32F103/407系AHT20温湿度传感器数据采集

一、IIC总线 1、IIC总线概念 I2C(Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有…

很好,搞搞期末

我要开始啦!bulabulabulabulabula. 例题 物理地址DS*16有效地址 1.直接寻址 2.直接寻址(允许符号代替数值,变量存的地址) 3.基址寻址(16位:用寄存器SI、DI、BX、BP存的有效地址) 下面是寄存器…

机器人如何实现智能化的自主定位与导航?

机器人实现智能化自主定位与导航,需融合多传感器数据、高效算法及硬件支撑,以下从技术框架、核心技术、典型应用场景等方面详细解析: 一、技术框架:定位与导航的核心环节 机器人自主定位导航通常包含三个关键步骤,形…

AI医疗行业全景图

AI医疗是以互联网为依托,通过基础设施的搭建及数据的收集,将人工智能技术及大数据服务应用于医疗行业中,提升医疗行业的诊断效率及服务质量,更好的解决医疗资源短缺、人口老龄化的问题AI在医疗领域应用广泛,覆盖医疗服…

Meta-KDD2025-RPG-token级别并行生成式提高效率!

文章目录 1. 背景2. 方法2.1 长语义id2.1.1 获取 item embedding2.1.2 item embedding 离散化 2.2 并行生成语义 id2.2.1 训练(item串行,token并行)2.2.2 高效 logit 打分暴力枚举式打分:高效实现:复杂度分析&#xff…

快速搭建MySQL8.0本地数据库,连接idea

1.打开终端,按顺序输入命令,在root用户下,创建用户和数据库 1.进入数据库 mysql -u root -p 2.创建专用数据库 create database 数据库名 character set utf8mb4 3.使用数据库 use 数据库名 4.设置此数据库用户 create user "用户名&q…

Docker 常用运维命令

Docker 提供了一系列命令来帮助开发者和运维人员管理容器、镜像以及其他 Docker 对象。以下是一些常用的 Docker 运维命令&#xff0c;这些命令可以帮助你更高效地进行日常操作&#xff1a; 容器相关命令 启动容器&#xff1a; docker start <container_id_or_name>停止…

linux下MQTT订阅发布验证-mosquitto安装测试流程

本文详细介绍了&#xff0c;如何在linux环境搭建一个MQTT server, 并同时安装 了客户端 &#xff0c;进行了mqtt消息发布、订阅验证。 mosquitto 服务端安装(ubuntu) #添加源 sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppasudo apt update # install mosquitto su…

Source Insight 的简单介绍

对 Source Insight 进行一次全面深入的介绍。这款软件在特定开发者群体中&#xff08;尤其是嵌入式、驱动、系统级编程领域&#xff09;享有极高的声誉&#xff0c;被誉为“源码阅读和分析的神器”。 一、 起源与历史 诞生背景 (1990年代中后期)&#xff1a; 在1990年代中后期…

Linux 系统中,查询 JDK 的安装目录

在 Linux 系统中&#xff0c;查询 JDK 的安装目录可以通过以下几种常用方法&#xff1a; 方法 1&#xff1a;通过 update-alternatives 查询&#xff08;推荐&#xff09; 适用于通过包管理器&#xff08;如 apt/yum&#xff09;安装的 JDK&#xff1a; sudo update-alternat…

简单工厂、工厂、抽象工厂模式

简单工厂、工厂、抽象工厂模式 1. **简单工厂模式&#xff08;Simple Factory&#xff09;**2. **工厂方法模式&#xff08;Factory Method&#xff09;**3. **抽象工厂模式&#xff08;Abstract Factory&#xff09;**对比总结 以下是三种工厂模式在C#中的实现与对比分析&…

如何在Redis中实现缓存功能

Redis 是一种高性能的键值存储系统&#xff0c;广泛用于实现缓存功能。它通过将数据存储在内存中&#xff0c;能够快速读写数据&#xff0c;从而显著提高应用程序的性能。在Redis中实现缓存功能需要结合数据读写策略、失效机制及性能优化方案。 一、Redis作为缓存的核心优势 …

Kafka消费者客户端源码深度解析:从架构到核心流程

在Kafka生态系统中&#xff0c;消费者客户端作为数据消费的入口&#xff0c;其设计与实现直接影响数据处理的效率和可靠性。本文将深入Kafka消费者客户端源码&#xff0c;通过核心组件解析、流程拆解与源码分析&#xff0c;揭示其高性能消费背后的技术奥秘&#xff0c;并辅以架…

从0开始学习R语言--Day26--因果推断

很多时候我们在探讨数据的相关性问题时&#xff0c;很容易会忽略到底是数据本身的特点还是真的是因为特征的区分导致的不同&#xff0c;从而误以为是特征起的效果比较大。 这就好比测试一款新药是否真的能治病&#xff0c;假如吃药的患者康复的更快&#xff0c;那到底是因为药…

Python 中布尔值的使用:掌握逻辑判断的核心

在 Python 中&#xff0c;布尔值&#xff08;bool&#xff09;是进行逻辑判断的基础。布尔值只有两个可能的值&#xff1a;True 和 False。通过布尔值&#xff0c;你可以实现条件判断、循环控制以及其他逻辑操作。今天&#xff0c;就让我们一起深入探讨如何在 Python 中使用布尔…

IDEA 中 Tomcat 部署 Java Web 项目(Maven 多模块 非 Maven 通用版)(linux+windows)

引言 Java Web 开发中&#xff0c;Tomcat 是最常用的 Servlet 容器&#xff0c;而项目类型通常分为 Maven 管理&#xff08;依赖自动处理、多模块聚合&#xff09; 和 非 Maven 纯手工管理&#xff08;手动引入 jar 包、配置项目结构&#xff09;。本文覆盖 两种项目类型 的 T…

使用 React Native Web 实现三端统一开发

使用 React Native Web 实现三端统一开发 关键点 React Native Web 简介&#xff1a;React Native Web 是一个允许开发者使用 React Native 组件和 API 构建 Web 应用的库&#xff0c;支持在 iOS、Android 和 Web 上使用同一套代码。架构&#xff1a;通过 React DOM 渲染 Rea…

分享一个git上基于std::array实现的循环队列(Cycle Queue)模板类库

为充分利用向量空间,克服“假溢出”现象的方法是:将向量空间想象为一个首尾相接的圆环,并称这种向量为循环向量。存储在其中的队列称为循环队列(Circular Queue)。循环队列是把顺序队列首尾相连,把存储队列元素的表从逻辑上看成一个环,成为循环队列。 网上有很多关于循…

三维视频融合平台:如何构建动态感知的数字空间

分享大纲&#xff1a; 你的三维平台为何不能承载动态视频捷码打造三维视频融合平台的三步法则为何选择捷码 在智慧城市建设过程中&#xff0c;将实时视频与三维空间结合&#xff0c;已经成为一种主流趋势。传统视频监控模式&#xff0c;经常面临视频分散、操作复杂等问题。然而…

【AI Study】第五天,Matplotlib(5)- 颜色映射

文章概要 本文详细介绍 Matplotlib 的颜色映射功能&#xff0c;包括&#xff1a; 颜色映射类型颜色映射设置数据标准化颜色条 颜色映射类型 pcolormesh import matplotlib.pyplot as plt import numpy as np# 创建网格数据 x np.linspace(-3, 3, 100) y np.linspace(-3,…