技术人成长中的得与失,想当程序员或者已经是程序员的要注意了!

2023-05-16

每个人在成长过程中,都免不了在得失中摇晃,对我来说,将来如何更好地去平衡得失,是需要思考的问题,而对新入行的年轻人来说,能从我这些总结中获得一点点启发,那我也会颇感欣慰。这,也是我对技术人成长中得失总结的意义所在。

                                      

1. 成长姿势

作为技术人,我们首先要考虑的是技术上的成长,而关于这个话题,一般又有以下三种说法,即深度优先,广度优先,或者兼而有之

深度优先也就是纵向发展,即将大部分精力放在某个技术方向上,然后成为这个方向上的专家。比如有些人,毕业后就一直做桌面软件开发,这样十年后就成为桌面软件开发方面的专家,有些人一直使用Java系技术进行开发,长时间后也可以成为Java开发方向上的专家。这些人在单个方向上有非常丰富的经验,可以快速解决这些方向上的各种技术问题,或者给出技术方案。目前来看,大厂比较青睐这类技术人才,他们在自己的方向上都能独挡一面。

广度优先也叫横向发展,一般来说就是接触各种各样的技术,使用各种各样的框架,既参与前端开发,又参与后端开发,甚至参与运维或测试。这类技术人涉略面广,什么都懂一点,杂而不精。很多创业公司都需要这样的技术人员,在公司起步时,这类技术人员可以迅速建构公司的技术体系,比较清楚公司需要哪些技术人才组合才能打造出一个完整的产品,而自己工作时也有些面面俱到的意思。然后等公司发展上了规模,系统面临更大的挑战后,就需要招聘前面提到的各个领域的技术专家来负责大系统里面的各个子系统。

兼而有之的就是技术大牛了,既符合前面对技术专家的要求,也符合杂家的要求,技术方面既有深度又有广度。毕竟人的精力是有限的,要既有深度又有广度,有时候比较难以达成,这种可能需要环境的成全并加上个人的努力和天赋。当然也有人说,就目前很多人的努力程序,要在职场混得好还根本不需要拼天赋,努力就够了,哈哈。

                          

2. 主次分明

我曾经看到过一些技术人员,花了很多时间去记忆一些非本质原理的东西,而这些东西,使用的时候查查文档就能找到了。当然你能背下来是更好的,不用查文档了,但是人的脑容量应该是有限的,我们应该花精力去理解并记忆哪些属于本质原理的内容。

基于这些本质原理的具体实现可能有很多种,如果我们理解了本质原理,以后再碰到各种具体实现时都能较快地理解了。否则,具体实现变了,你又要去记住它,而具体实现多种多样,你怎么能记得完。因此,我们应该抓住本质原理,了解一两个具体实现就好了,这样也能达到以不变应万变的效果,不变的是本质原理,变化的是具体实现。

                                       

3. 学以致用

我自己在多年的学习中,没有注意学以致用,这也是我一个多么痛的领悟。我曾经学习各种各样的理论知识,然后觉得自己高人一等,但这些东西在我的工作中基本用不上,而随着时间的流逝,这些理论知识也慢慢从我记忆中消失,当我再遇到它们的时候,只有似曾相识的感觉,却已经无法理解其原理或思想。

而另外一些人,因为业务场景的需求,深挖某一方面的技术,从应用程一直到系统层甚至到硬件层。这种学习方式就是按需学习,也可以认为是根据使用场景进行学习,任何技术都是为了解决某些使用场景下的问题而出现的。因为有了实际的使用场景,这种学习的效果就会好得多,记忆也会更深刻,因此是我目前比较提倡的一种学习方式。

另外想要成为一个优秀的、有能力程序员的话,其实作为一个开发者或者编程学习者,有一个学习的氛围跟交流圈子特别重要!这里我推荐一个C语言C++交流Q群,8-6-8-0-1-7-1-5-7,不管你是大牛还是小白,大家都一起成长进步。

                                  

4. 理论与实践

当你觉得理论知识太抽象难以理解时,可能需要动手去实践以加深理解,而当你觉得实践没有头绪时,可能是需要补补理论知识了。因此,理论与实践总是相辅相成的。没有理论的实践就像无本之木,没有实践的理论就像空中楼阁。

以我自身的经历来说,我曾经花很多时间去学习一些自己暂时用不到的技术框架,网上的各种文章都看,而且感觉文章一篇写得比一篇好,貌似自己收获很大。然而因为没有实践,我对很多概念一知半解,直到我们项目亲自需要使用的时候,我才亲自用那种架构方式去搭建系统。当我搭建完系统后,我才发现,我根本不需要花那么多时间去看别人的文章,如果我没有亲自去搭建,可能我还会再花很多时间去看类似的文章,却可能永远达不到深刻理解的程度。

因此,技术是实践出真知的,有时候真的是:干就完了,否则,你会有类似这种困惑 – 为嘛听过无数的道理,依然过不好这一生?

                                   

5. 跳槽的问题

说起跳槽,我们几乎都不陌生,而技术人员流动性相比其它工种的人士更强。网上很多人都谈论过这个话题,在这里我还是不能免俗地要抛出自己的见解。

我认为,职场初期,适当花心是可以的。因为这个阶段的我们,往往不太清楚自己到底想做什么,适合做什么。这样的话,就需要更多的尝试,尝试不同的岗位,如果能有幸找到自己感兴趣的岗位,那么基本就是值得自己今后多年精力投入的方向了,你要知道,职场上太多人,只是为了谋生而从事一份工作,根本做不到乐在其中。

当你找到自己的方向后,建议沉淀下来,从技术、行业业务角度去构建自己的核心竞争力。这种情况下,如果其他方面问题不大,不建议频繁跳槽,最好在一个公司多呆几年,学到如何开发产品、如何运维系统、如果运营产品等知识。

                                                    

6. 格局的问题

很多年前,有个在代码界略有名气的人在网上说,刚开始他觉得是数学限制了自己的发展,后来觉得是英语限制了自己的发展,再后来发现,其实那些都不是事,真正限制自己发展的,是自己的视野,也是格局。

我也是比较赞同这个观点的,你能想象一个每天只默默耕种自己那一亩三分地的人,能够去开疆扩土搞大事情吗?因此作为技术人,想要不断地成长,同样需要多关注技术发展趋势,大的方面不说,起码对自己所使用技术栈过去发展历程和未来可能的发展方向有一点点了解,大概了解技术的演变史,这样对自己的技术选择可能会有些帮助。

以上是我摸爬滚打这么多年来的心沥总结,坦率地说,其中某些方面,我自己做得也不够好,对我来说,是多么痛的领悟。这些经验总结也好,得失总结也罢,不一定对每个人都有帮助,但也许你可以借鉴一下,如果对你真有那么一点点启发,那将是我的荣幸。

最后,对于想学习编程,成为高薪资的程序员一员的小伙伴来说:学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习C/C++或者为了入行、转行学习C/C++的伙伴可以一起学习哦!

博主是一个有着7年工作经验的架构师,对于c++,自己有做资料的整合,一个完整学习C语言c++的路线,学习资料和工具。可以进我的Q群8680,17157领取,免费送给大家。希望你也能凭自己的努力,成为下一个优秀的程序员!另外博主的微信公众号是:C语言编程学习基地,欢迎关注!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

技术人成长中的得与失,想当程序员或者已经是程序员的要注意了! 的相关文章

  • ireport的使用总结

    ireport的使用总结 截图居然都没显示出来 xff0c 如有需要可以到 xff08 http download csdn net detail czp0608 4140640 xff09 下载 相信很多java程序员们 xff0c 在开
  • 卡尔曼滤波C代码分析

    文章下载地址 xff1a http wenku baidu com view 3c42b7733186bceb18e8bb29
  • 作为一个新人,怎样学习嵌入式Linux?

    作为一个新人 xff0c 怎样学习嵌入式Linux xff1f 被问过太多次 xff0c 特写这篇文章来回答一下 在学习嵌入式Linux之前 xff0c 肯定要有C语言基础 汇编基础有没有无所谓 就那么几条汇编指令 xff0c 用到了一看就
  • pixhawk启动脚本分析

    Nuttx系统启动是由ardupilot mk PX4 ROMFS init d里的rcS和rc APM完成的 笔者阅读了rcS和rc APM xff0c 该脚本类似C语言 xff0c 并做了相关注释 主要是一些设备自检 xff0c 启动各
  • pixhawk ArduPilot_main启动与运行分析

    上节分析 2 个系统启动脚本 xff0c 一个是 ardupilot mk PX4 ROMFS init d 里的 rcS xff0c 另一个是 rc APM xff0c 这个脚本在 rcS 里得到了调用 xff0c 也就是说 xff0c
  • pixhawk make文件分析

    由于笔者没学过Linux等系统 xff0c 对make文件所知甚少 xff0c 本节分析可能有大量错误 xff0c 只提供参考 xff0c 随着技术积累 xff0c 以后会回过头改正错误的地方 xff0c 也非常欢迎提出指导意见 其中分析大
  • pixhawk 从main开始分析传感器数据如何流动起来,以GPS为例

    void Copter loop scheduler run time available gt MAIN LOOP MICROS 0u time available 本文以GPS数据为代表 xff0c 分析数据如何从硬件驱动层慢慢的流到主
  • pixhawk uORB初步分析

    再次编辑 xff0c 因为发现大神的解析 xff0c 添加在最后 xff0c 若一般人我不告诉他 根据自己理解画的流程图 xff1a xff08 2016 05 29加 xff09 由于上节分析GPS涉及到AP GPS PX4 read函数
  • pixhawk硬件构架

    1 Phxhawk连接线路 2 Phxhawk硬件芯片列表 处理器 STM32F427 VIT6 168 Mhz 256 KB RAM 2 MB 闪存 100Pin 32位 STM32F100C8T6 xff08 48Pin xff09 故
  • ELK-日志收集工具nxlog

    ELK 日志收集工具nxlog 文章目录 ELK 日志收集工具nxlog 前言安装语法宏变量 通用模块指令格式Module 模块名FlowControlInputType 指定输入类型OutputType xff1a 指定输出类型Exec
  • pixhawk原生码rcS分析

    代码执行流程 1 编译时将 cmake configs nuttx px4fmu v2 default cmake 文件中配置的模块全部编译并烧写到固件中去 2 地面站的配置会在 flash 中生成 fs mtd params 文件 xff
  • pixhawk win编译环境搭建

    经过笔者亲自试验搭建win编译环境 xff0c 试验成功 xff0c 以下为具体步骤 问题和解决方案 其实Linux下编译会快很多 xff0c 对于后期开发会缩短等待编译的时间 xff0c 正在尝试搭建Linux编译环境 1 pixhawk
  • pixhawk PX4FMU和PX4IO最底层启动过程分析

    首先 xff0c 大体了解PX4IO 与PX4FMU各自的任务 PX4IO STM32F100 为PIXHAWK 中专用于处理输入输出的部分 输入为支持的各类遥控器 PPM SPKT DSM SBUS 输出为电调的PWM 驱动信号 它与PX
  • pixhawk 姿态与控制部分的记录

    此篇是把之前看到的资料总结整理一遍 xff0c 大部分是搬砖 xff0c 也加入了自己的一点思考 xff0c 写的过程中晕了好多次 xff0c 先大体记录下来 xff0c 肯定有错误 xff0c 日后再改正吧 关于pixhawk程序执行流程
  • pixhawk 光流--位置估计--姿态估计--位置控制--姿态控制

    本文是边分析边写的 xff0c 顺便就记录下了分析的思路 xff0c 并不是按照教材那种思路介绍性的 xff0c 而是按照程序员分析程序的思路来的 所以读者跟着看有些地方看了意义不大 xff0c 但是这种程序分析的思路还是可以借鉴的 xff
  • pixhawk 整体架构的认识

    此篇blog的目的是对px4工程有一个整体认识 xff0c 对各个信号的流向有个了解 xff0c 以及控制算法采用的控制框架 PX4自动驾驶仪软件 可分为三大部分 xff1a 实时操作系统 中间件和飞行控制栈 1 NuttX实时操作系统 提
  • pixhawk mc_pos_control.cpp源码解读

    好久没跟新blog了 xff0c 这段时期边调试边看程序 xff0c 所以有点慢 要开始着手调试了 这篇blog是顺着上一篇pixhawk 整体架构的认识写的 xff0c 接下来看程序的话 xff0c 打算把各个功能模块理解一遍 xff0c
  • pixhawk position_estimator_inav.cpp思路整理及数据流

    写在前面 xff1a 这篇blog主要参考pixhawk的高度解算算法解读 xff0c 并且加以扩展 xff0c 扩展到其他传感器 xff0c 其实里面处理好多只是记录了流程 xff0c 至于里面实际物理意义并不是很清楚 xff0c 也希望

随机推荐

  • 调试记录(一)pixhawk参数设置的问题

    一 光流模式进入不了 1 xff0e 网上下载的固件 xff0c 进入定点模式 xff0c qgc显示 拒绝 烧写自己编译的固件定高和定点都 拒绝 并且按照 xff08 源码解读 xff09 position estimator inav
  • 卡尔曼算法笔记---思想和实际应用物理含义的理解

    此片blog的目的是理解卡尔曼算法的思想和实际应用的物理含义 xff0c 想法很好 xff0c 却只能理解冰山一角 xff0c 先记下这一角 另本blog参考卡尔曼滤波 从推导到应用和徐亦达卡尔曼推导视频 首先认识卡尔曼算法在数学领域是什么
  • ELK-LogStash6.5.4

    ELK LogStash6 5 4 前言 与Elasticsearch Kibana不同 xff0c Logstash默认并不作为系统服务安装 xff0c 我们也不建议作为服务启动 主要原因为 xff1a 大多数情况下 xff0c Elas
  • pixhawk博客导读

    写的东西有点多 xff0c 写的也有点乱 xff0c 看题目也不知道内容是什么 xff0c 为了方便网友观看自己感兴趣的地方 xff0c 笔者把pixhawk博客归类一下 由于笔者也是边学习边写的 xff0c 难免有错误 xff0c 还请多
  • 科普“智能导航”--整理自大疆工程师

    1 飞行器想要稳定飞行 xff0c 需要 15 个状态量 xff1a 三维角度 xff0c 三维角度对应的三维速度 三维加速度 三维角速度 xff0c 三维位置 传感器的测量如下 xff1a 2 传感器自身的限制 xff1a 1 惯性测量元
  • pixhawk px4 字符型设备驱动

    分析字符型设备为什么register open read write怎样与底层驱动代码联系在一起的 xff0c 为什么需要注册 xff0c 为什么会有路径 xff0c 为什么open之后read write就可以读 写了 另 xff1a 此
  • pixhawk px4 spi设备驱动

    此篇blog是以nuttx官网介绍为出发点 xff0c 先分析如何初始化的 xff0c 再分析如何读取传感器数据的 xff0c 最后对比了字符型设备操作和spi驱动的实现方式的差别 如有错误还请指正 6 字符型设备 所有的结构体和API都在
  • Linux驱动概念扫盲篇

    驱动程序完全隐藏了设备工作的细节 用户的活动通过一套标准化的调用来进行 这些调用与特别的驱动是独立的 设备驱动的角色就是将这些调用映射到作用于实际硬件的和设备相关的操作上 驱动应当做到使硬件可用 将所有关于如何使用硬件的事情留给应用程序 一
  • ardupilot & px4 书写自己的app & drivers (二)

    新建任务列表任务 打印时间 任务列表 const AP Scheduler span class hljs tag Task span Copter span class hljs tag scheduler tasks span span
  • Docs » Learning the ArduPilot Codebase » EKF » Extended Kalman Filter Navigation Overview and Tuning

    原文 xff1a http ardupilot org dev docs extended kalman filter html extended kalman filter navigation overview and tuning 本
  • Linux常用命令

    压缩 解压命令 01 tar格式 解包 xff1a xff0a xff0a xff0a xff0a xff0a xff0a xff0a tar xvf FileName tar 打包 xff1a xff0a xff0a xff0a xff0
  • linux C编程控制树莓派

    系统准备 1 xff09 打开Win32DiskImager exe 2 xff09 PC机插入sd卡 3 xff09 选择要烧录的系统 xff0c 笔者选择Ubuntu mate 16 04 4 xff09 烧录 显示 默认HDMI显示
  • mission planner发送数据之mavlink

    前段时间研究mp的地面站 xff0c 看了几天有点体会 xff0c 看网上的解析比较少 xff0c 写上来和大家分享下 xff0c 全是自己的理解 xff0c 东西比较少 xff0c 硬货不多 xff0c 还请见谅 最开始是想做个无人机超声
  • ELK-使用nxlog+filebeat采集不同类型的日志输出到logstash

    ELK 使用nxlog 43 filebeat采集不同类型的日志输出到logstash 文章目录 ELK 使用nxlog 43 filebeat采集不同类型的日志输出到logstash 前言正常的采集配置开启多个端口监听优化nxlog xf
  • docker搭建prometheus监控

    介绍 prometheus是开源的监控解决方案 他的监控侧重于云原生应用 xff0c 例容器 k8s集群 prometheus通过各种各样的exporter去监控各种metric指标数据 xff08 本期目标 xff1a docker部署p
  • 回首2013,展望2014

    此刻值此2013年末 xff0c 明天便是元旦 近日浏览CSDN论坛时 xff0c 发现有许多的坛友都在写2013年度总结 xff0c 博客作为个人的名片 xff0c 也决定开始尝试写博客 xff0c 我的第一篇博客就是关于2013年度总结
  • MSSQL分享:sp_writeall 将文本文件内容全部写入某一文件

    alter PROC sp writeall 64 dirpath varchar 1024 64 filetype varchar 255 61 39 sql 39 as declare 64 sql varchar 4000 64 sq
  • 多旋翼飞行器设计与控制实践学习总结

    在11 4 3半自主控制模式控制器上加入自己的控制器 注意事项 1 在进行硬件在环仿真时必须保证整个系统是离散控制系统 xff0c 这里有一个傻瓜式的方式 xff0c 就是一键将所有模块均替换为离散模块 xff0c 可以参照这个连接 htt
  • 如何看英文文档

    本一直以为看不懂官方英文文档是因为词汇量不够 后来发现其实并不是 xff0c 如果没有专业背景 xff0c 没有相应的知识点 xff0c 就算你认识这个单词 xff0c 也会看不懂他在说什么 理由如下 xff1a 在看MyBatis Gen
  • 技术人成长中的得与失,想当程序员或者已经是程序员的要注意了!

    每个人在成长过程中 xff0c 都免不了在得失中摇晃 xff0c 对我来说 xff0c 将来如何更好地去平衡得失 xff0c 是需要思考的问题 xff0c 而对新入行的年轻人来说 xff0c 能从我这些总结中获得一点点启发 xff0c 那我