首页 > 其他分享 >【深度思考】一线开发大头兵对于工作的感悟分享

【深度思考】一线开发大头兵对于工作的感悟分享

时间:2024-01-29 09:46:13浏览次数:31  
标签:感悟 大头 程序员 可以 自己 工作 开发 分享 复盘

目录

前言

写在前面的是关于自己的一点介绍,21年本科毕业,学的是计算机科学与技术专业,到现在工作(实习)也有两三年了。自己本身对编程和开发是有兴趣的,同时也对项目管理、团队建设方面有兴趣。

目前有两段工作经历,都是在一线当开发大头兵,职级倒是随着跳槽而有所上升。做过从0-1的SaaS、PaaS的自研项目,也做过多租户的定制化开发项目,还有过半年的 PM 的经历...这些都让我有了一些关于工作上的感悟。现在简单总结一下,拿出来和大家做分享交流。

下面主要从工作的方式方法、构建知识体系、尽早规划职业这三个大的方面展开。文章有点长,但都是自己一步步实践总结得来的,有写得不好的地方,还希望大家多包涵。


一、工作方式方法

在企业上班/打工的这一根本前提,决定了我们是企业的劳动力这个最大的基本盘。

所以既然是工作,那么就可以有一些工作上的方式方法值得总结和分享。

想要自己创业或者考公/考编,或者做自由职业的朋友可以绕道了,可能这篇文章对你的帮助不是很大。

1.1先尽人事

  • 拿出积极的态度:首先需要自己努力去解决问题,其次包括调动资源、团队协助,最好要让领导/同事知晓你的情况。

  • 摆烂并不可取,劳动是用来换取报酬的。如果平时的工作表现/绩效过不去,那么将可能会直接影响到我们的收入。

  • 对于工作量的估算要留有余地。学会平衡别人的预期,如果 3 天内能完成,那最好回复一个星期:总有别的事情会打扰你。

  • 遵守基本的职业道德:如果你负责的服务出现故障或发现一个严重的 bug ,作为开发我们应该马上对其进行修复/解决。

  • 少一些牢骚和抱怨:面对难题或者挑战时,更多地应该思考可行的解决方案,并做好与干系人的沟通和反馈。

  • 工作里对事不对人:我们需要推进的是项目,是一件件具体的事情,聚焦于如何解决问题,而不是和人做无效拉扯。

做好上面这些,假如是对于刚毕业的我来说可能并不容易,但过了两年自己开始负责项目了以后,我就能慢慢理解并适应了。

1.2关注个人成长

人对于企业没有100%的忠诚度,规章制度才是可靠的。

所以我们可以有意识地提炼日常工作成果,形成自己的个人源码库和工具库、解决某类问题的通用系统体系结构、甚至进化为框架。

众所周知对软件开发人员而言,有、无经验的一个显著区别是:新手无论完成什么开发任务都从头开始,而有经验的开发往往通过重组自己的可复用模块、类库来解决问题。

这并不是说所有可复用的东西都必须自己实现,别人成熟的、通过测试的成果也可以收集、整理到自己的知识库中。

1.3work&life balance

工作与生活的平衡,这是个老生常谈的话题。

实际程序员们可能很难做到:总有一些会议拉上你去 battle,总有一些线上的 bug 困扰着你,总会有领导安排的其它事情让你分身乏力...还有很多。工作是为了更好的生活这个主旨不会变,所以我也有自己的一些想法:

  • 拒绝无效加班。注重上班8个小时内的工作效率,即使有紧急任务,也不要自己一个人默默加班,而是看团队安排。
  • 健康的生活方式。不抽烟、不喝酒、不熬夜,不吃太饱,中午尽量休息 30-60 mins,也可以适当健身锻炼锻炼身体。
  • 合理化解压力。寻求家人/伴侣的陪伴和支持,吃完饭一起到楼下散散步溜溜弯,始终要有良好的心态去化解工作上的压力。
  • 有点兴趣爱好。周末爬爬山、去周边城市旅旅游、和家人/伴侣一起包顿饺子...都可以让我们的生活充满更多乐趣。

二、构建知识体系

知识体系是系统化的知识,具有连续性的特点,反映了一个人经过学习后所拥有的知识构成情况与结合方式。如果一个开发人员在1、2年内都没有更新过自己的知识,那么他可能已经不再属于这个行业了。

2.1夯实基础

万层高楼平地起,基础的扎实程度,可以决定开发人员在技术的道路上能走多远。

一个开发无论工作了多少年,越是到后面就越能体会,再高级的东西拆解后,就是基础知识。

我自己是在工作中切实地感受到了基础的重要性,在夯实基础方面总结了以下几点:

  • Java 最基本概念,包括类、接口和抽象类、方法和类属性
  • 面向对象的思想,继承、封装、多态的运用
  • Java 的集合、其它数据结构、常用工具类,Stream 流
  • Spring 框架的 AOP、IOC 和 Bean 的原理与应用
  • 编程思想的培养,代码与业务的结合,积累解决问题的经验等等
  • ......

2.2抽象思维

抽象思维能够超越感官直接感知信息,通过对事物的本质属性和规律的把握,使人们在认识活动中获得更深层次的知识。

程序员如何培养抽象思维?在这里我也分享一下自己的理解:

  • 多阅读优秀的代码,多思考本质和原因,多通过实践来检验
    写出可阅读的、简洁易懂、可维护的代码,应该是程序员在工作中都需要追求的。在实现业务的时候,通过借助模仿优秀的开源实现,学习他人在提高代码效率、逻辑思维、处理高并发等方面是怎么做的。

  • 学会总结复盘,从中抽取有价值的经验,将成长记录下来
    复盘的内容,可以是一次线上 bug 的处理过程,可以是一次代码重构优化的过程,也可以是对一个中间件的新认识等等。复盘不是问责也不是甩锅,而是聚焦于好和不好,知其然再知其所以然,同时避免重蹈覆辙。

    不是所有人都愿意直面自己的缺点和不足,我自己最开始也不明白复盘有什么用处,觉得对领导和业务能有交代就行。但随着自己做过的项目多了起来,受到身边优秀同事的影响也在日益增多,我才明白复盘是可以让人迅速成长的不二法宝。

  • 有意识地站在更高的角度去看待问题,可能会得到不一样的答案
    作为一线开发我们更多关注的,可能是接口的参数和实现逻辑,数据库字段的设计,中间件的使用,异常的处理等实际编码问题;

    而你的 TeamLeader 可能关注的是项目的高可用,处理高并发的性能,硬件资源的成本,服务挂了怎么降低对业务的影响等;

    部门的总监则可能在考虑这个项目要不要做二期三期?对业务方有什么价值?能带来多少新用户?让谁来负责后续的运营等。

2.3广度与深度

我认为广度和深度在每个阶段的侧重点可能有所不同:

初/中级可以先从广度出发,多见识一些主流技术或者解决方案,这样在面对业务的时候可以更从容地进行设计,也能更清楚自己 CURD 的目的是什么。

高级/资深可能就要精通某一或者某几方面的通用架构/解决方案了,同时对于负责的业务有深刻的认识,可能也要负责团队的建设,从更广阔的视角去思考问题。

但其实无论是深度还是广度,都是可以遵循:先掌握基础结构,然后熟悉基本使用,最后输出解决方案。


三、尽早规划职业

我是在工作一年半左右慢慢有了对未来进行职业规划的想法,因为时间会向前走,人也会渐渐地成长。对于未来想要什么,可以慢慢给自己多找找方向去尝试。

尽管我们的工作很可能对于改变这个世界没有多大意义,但还是可以在每天的工作中用自己的方式创造价值。

3.1市场现状

首先,最重要的是目前的市场趋于饱和。

2010-2020 这十年,互联网发展如火如荼,各种公司如雨后春笋般冒出来,那时候招聘需求量大,互联网就业市场一片欣欣向荣。

而现在没有了当年的辉煌,很多互联网公司业务发展停滞,同时经过前面多年的发展,产品架构已经成熟稳定,不再需要这么多的程序员,势必要进行结构优化,那优化的对象自然是性价比低的人群。

其次,IT互联网行业高薪的宣传又吸引了一大批年轻人跑步进场,需求变少的情况下人又变多,内卷就这么产生了。高学历的人才多了很多,所谓学历贬值的论调在这几年一直都有出现。

3.2如何破局

让我们透过现象看本质:IT互联网行业的特殊性在于产出是可迭代的。这个行业程序员的产出就是软件&代码,而这个东西就是可以不断的迭代的。

分析了上面的原因,就有针对性了。软件代码这些东西是可迭代的,但有些东西是没法复制和迭代的:像是沟通协调能力、解决问题能力、规划组织能力、管理能力和人脉资源等等。这些其实就是我们经常说的软实力,这些能力才是越久越吃香。

这些能力不仅可以在日常工作中有意识的积累,也可以通过考取相关的证书来掌握理论知识,比如:软考高项(信息系统项目管理师、系统架构师)、PMP认证、阿里云/华为云高级认证等。

打开认知的局限,不只着眼于手里掌握的技术,拓展自己职业的综合能力,明白不是只有靠技术才能活下去,才能更好地“破局”。


四、文章小结

文章最后,我还有一些想说的。的确,技术逐渐会变得越来越“廉价”,不再是必须要工作多年的大佬才能驾驭的高级东西。

这里面有个很重要的原因,就是开源的力量。大家可以想一想自己参与的一些项目,用到了多少开源的东西?以一个典型的后端项目为例,可能涉及到了 MySQL、Redis、ElasticSearch、RocketMQ、Nginx、SprintBoot、Jenkins、CI/CD、Docker......

程序员要做的就是根据业务需求,把上面那一堆组件按照规则合理地堆在一起。一般就是 Nginx 负载均衡,Spring Boot/Cloud 写后端业务逻辑,Redis 做缓存,MySQL、ES、MongoDB 做数据存储,OSS/COS 做云对象存储,RocketMQ/Kafka 做消息队列,最后进行 CI/CD 操作塞到 Docker 里面部署运行。现在绝大多数的功能,开源组件都能提供,再加上现在是云的时代,各种服务都上云了,那么问题就更简单了。

既然我们身处在这个行业,那么就要做好持续学习的准备,不断打怪升级,锻炼综合能力,做到让经验随着年龄的增长成真正的正比。

毕竟,所有平凡的日子加起来,就将汇集成为你的一生。

标签:感悟,大头,程序员,可以,自己,工作,开发,分享,复盘
From: https://www.cnblogs.com/CodeBlogMan/p/17983370

相关文章

  • 案例分享:一个数据丢失惨案
    前言最近,有开发同事联系我反馈一个问题,说开发环境出现了数据丢失的情况,想让DBA帮忙排查一下是不是数据库的问题。我心想大概率是程序bug,不太可能是数据库的问题。不过还是要排查一下才会心安,毕竟对于一个DBA而言,数据丢失无疑是最令人紧张的一件事情。问题排查开始进行排查之前,......
  • 通达信【寻妖记】幅图选股公式 大概率捉妖 简洁浓缩 分析股票的强度指标 源码文件分享
    通达信【寻妖记】幅图选股公式简洁浓缩分析股票的强度指标源码文件分享原公式完全加密,时间限时,股海网解密源码文件分享,已经解除时间限制,可以永久使用,并新增选股公式一个本指标叠加了资金流动、筹码流动、股票情绪三个元素,是一个综合性的评价指标,可用于选股、操盘。这个指标......
  • 2024最新苹果iOS17.3微信分身详解分享
    微信是目前最流行的社交软件之一,拥有庞大的用户群体。然而,对于一些需要同时使用多个微信账号的用户来说,使用官方版微信就显得有些不方便。iOS分身微信软件可以解决这个问题,它可以让用户在同一台设备上同时登录多个微信账号,从而实现工作生活两不误。iOS分身微信软件的优势iOS......
  • 2024最新分享iZotope RX 10 Audio Editor Advanced for Mac 直装版
    iZotopeRX10AudioEditorAdvanced是一款先进的音频编辑软件,由iZotope公司推出。以其卓越的音频修复和恢复功能而著称,可消除录音中的噪音、杂音和其他缺陷。RX10集成了先进的算法和直观的用户界面,提供精准而高效的音频修复工具,适用于音乐制作、后期制作和广播领域。软件支持......
  • 2024最新分享FabFilter Total bundle 2023 for Mac 直装版
    FabFilter音频插件工具集,共包含14款音频插件。这14款插件分别是均衡器、混响、压缩器、多频段动态、限幅器、扩展器、创意多频带失真、延迟、滤波器和合成器。通过这些插件,用户可以满足制作混音和母带的需求。FabFilterTotalbundle2023forMac直装版FabFilterTotalBundl......
  • 通达信【乾坤地势坤】幅图选股公式 阶段底部安全买入 十拿九稳 源码文件分享
     本公式以安全为前提,如果你想要暴利,以下就别再看了,十拿九稳,可能稍微夸张了一点点,那起码出十个票有八个能涨是真的哦!都是回调底部起涨的个股,当然也不排除会出现暴利大牛股!设计此指标应用到一阴一阳之味道,专做阶段性底部,可以短中线结合使用!物理学是描述自然界各种规律最早、最彻......
  • 通达信【智取妖底】幅图选股公式 做短线及短波段精准抄底系统 源码文件分享
    主力运作股大跌后底部拉升起爆思路.思路安全.稳中求胜.狙击短线妖股必备利器.适合做短线和短波段.指标不含未来,放心使用. 智取妖底系统为:主力运作股大跌后底部低位拉升起爆思路.这是一种非常彪悍的洗盘手法,快速洗盘完成后一般会有更大的涨幅,本公司长期致力于研究各种主力的......
  • 【专题】2022中国工业机器人市场研究报告PDF合集分享(附原数据表)
    报告链接:https://tecdat.cn/?p=33224本报告合集将基于中国工业产业升级和智能制造的背景,通过对供应端市场和产业链的分析,结合投资视角,探讨工业机器人企业如何增强自身竞争力,推动中国工业产业发展,为企业带来新的增长和转型机会,并从而思考中国工业机器人行业的现状和未来趋势。阅读......
  • 通达信【小楷超级竞价秘籍】竞价低吸+激进模式二合一玩转竞价 源码文件分享
     本套竞价指标,原价200金钻哦(1金钻=10元,就是2000元哦)小楷超级竞价秘籍,经过半年时间的研发测试,现在将这套系统推出!一、此指标包括选股预警+使用说明,预警时间为上午9.25-9.30分二、此指标包括两种竞价模式竞价激进模式+竞价低吸模式三、竞价激进模式适用于激进选手,出票一般都是......
  • 通达信【掘金红筹】全套公式 共29个指标 暴利到极致 底部连续涨停 捉妖抄底指标 源码
    通达信【掘金红筹】全套公式底部连续涨停捉妖抄底指标黑马启动源码文件分享指标包括主图附图选股指标在内,一共29个指标标准启动:股票启动连续涨停的第一日,发出‘标准启动信号强力启动:标准信号发出信号偏多,强力启动会进行筛选和屏蔽超级启动:标准启动信号多,强力启动信号少,超......