前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >做技术,如何使自己在重复性业务中持续提升?

做技术,如何使自己在重复性业务中持续提升?

作者头像
代码宇宙
发布2023-02-23 10:10:22
5770
发布2023-02-23 10:10:22
举报
文章被收录于专栏:代码宇宙代码宇宙

前言

每个工作两年以上的技术人都应该想过,自己每天这样的这些业务代码,并没有什么技术含量,也没有什么拿得出手的项目,在公司的始终处于螺丝钉的地位,觉得自己目前做的一切虽然对公司有价值,但是似乎对自己并没有什么价值,难道一成不变的工作内容对我们真的没有任何价值么?

1

如何定义工作的意义

这是一个老生常谈的问题,有人说工作的意义是生活、生存,有人说工作的意义在于让自己实现自己的价值,其实都对,简单来说工作就是为了过上自己想要的生活并且实现自己的价值。

为了生活的目标很容易实现,并且很容易持久实现,但是要实现自己的价值就取决于自己对自身价值的认定了。

2

应对重复性的惯性

人在刚开始做某事的时候,通常是充满激情的,想着如何将事情做好、做优,甚至不允许出现一丝一毫的纰漏,并希望得到他人的认可,感觉自己的生活充满了希望。但是如果让人持续的做某件事的时候,通常,人的大脑就会排斥这种重复,追求未知的世界,这种行为在简单、技术含量低的事情上发挥的更为明显。

3

我看到的三类人

第一类人,是认为自己的技术在阿里 P8 甚至 P9 级别,却只在一个小公司写着简单的业务代码,时刻感觉自己被大材小用了,自认清高,不屑接受任何人的建议,也不屑与别人交流,但是,他们在工作的进行中会尽可能的尝试简化重复性工作,比如自动化、优化逻辑使得代码更简单,善于学习,但是也喜欢半途而废,写出自认为比较厉害的代码,喜欢展示给别人以获称赞。

我认为努力并展示给别人以获称赞,这并没有什么不对,但是这样会使得自己过分高估自己,别人觉得你是 10 分,你信了,也认为自己就是 10 分,这不好。我个人觉得得减半,取5分,这样自己才有进步的空间,尤其是在 20 岁出头的年纪,别人夸多了很容易飘,给别人的感觉就是自己懂得比很多人都多,但实际上还欠缺很多,自带天赋和优秀的属性更应该找好正确的方向去慢慢前进,去经历更多。别人觉得好未必是好,得客观看清自己,不过分高估,也不妄自菲薄。

● ● ●

第二类人,是比较常见的一类人,对工作的激情和积极性很低,更多的是按部就班的完成上级安排的任务,自身的提升完全依靠工作中遇到的问题,很少去主动规划自身的能力体系,缺乏好奇心和刨根问底的心,这类人的工作态度为 能问则问,能查则查,能找别人帮忙写绝不自己动手,不追根问底,只在乎结果,而不享受过程,所以这类人在面对枯燥的工作时通常烦躁不堪,很难从中获取价值。

这类人身处技术圈子边缘,徘徊不定,难以突破初级这个瓶颈,我认为这类人最应该培养的是:代码思维、刨根问底的态度(↓下面会讲到↓)

● ● ●

第三类人,属于每个行业都会有的奇葩,这类人的明显特点是固执己见,在工作和同事协作会按照自己的想法一意孤行并不听前辈、同事的建议和意见,认为自己永远是对的,认为自己什么都知道,不与任何人为伍(当然,同类人除外),这类人对技术的认知大多停留在 听说阶段、见过阶段。

这类人面对工作会想尽一切办法采取投机取巧来面对问题,自身出现问题会甩锅给别人以时刻证明自己是对的,这类人不必多说,职场生涯会很难走,甚至夭折失业转行。

ps:阿里 P9 泛指通常指的是阿里巴巴一级域架构负责人,这个层次的人已经可以影响到事业部业务决策,你可以理解他们为阿里巴巴的腰部。

4

培养代码思维

代码思维这个名词阅读文章的所有人应该不陌生,即 任何问题、任何想法都想使用代码来实现、优化,自己有任何想法都想使用代码来解决问题。

代码思维虽然在营销、创业方面不适用,但是在技术人发展初期非常的有用,它会让你始终保持一颗好奇心,然而促使进步最好的良药就是那一份好奇心。

比如说,你们公司的某个项目经常性的宕机而又追踪不到问题,这个时候聪明一点的程序员会想到使用 skywalking 来追踪一下到底是哪里出了问题,而没有代码思维的程序员则只会对着空白的错误日志懊恼不堪,并且责怪产品设计有问题,导致代码过于复杂问题太多。

再比如,在写代码的时候经常因为提交错了一个文件,每次都要去百度或者笔记查怎么撤销提交的文件,然后还要在命令行写一堆命令撤销,每次这个操作都会耗费你5分钟,甚至 10 分钟的时间,有代码思维的同学就会想我能不能自己写一个代码编辑器插件,来实现右键菜单直接添加一个撤销提交的选项,于是,有了目标,阅读了插件的开发文档,自己着手写了一个插件,不仅解决了实际问题,而且还学习了如何编写插件的流程。

总结一下,程序员思维就是实际问题和技术的碰撞,提高自己用专业知识解决问题的能力。

ps:第二个例子,是真实遇到的问题,插件我于 2019 年编写,虽然只是一个简单的插件,但是节省了我几百分钟的时间。如果你想了解这个插件,那么你可以在公众号回复:插件。

5

刨根问底的好处

往往只有在面试之前,我们才会深刻认识到,自己的能力都仅仅停留在实践阶段,理论知识早已忘空,那么,为什么理论知识会忘?因为你并没有刨根问底的了解过这些问题,比如说只是枯燥的记住了 :SpringMVC 是由 Servlet 实现,以及和 Struts2 的区别等等,那么我问你,SpringMVC 的静态资源解析逻辑是怎么样的,视图加载器的优先级又是怎么调配的,拦截器和过滤器的执行有什么区别、有什么特点等等等等。(如果你对这里有兴趣可以阅读一下文章: 一次请求 SpringMVC 到底做了什么?)

此只是举例说明,都可以通过搜索引擎找的到答案,但是搜索引擎只会直接告诉你答案,有的答案甚至是错误的。答案在大脑中存在的时间是非常短暂的,就像我告诉你今天的考题选择题的答案是 ABDCDADC 一样,你顶多记到明天,后天就只记得开头的A甚至完全不记得了,而且这不会给你带来任何实质性的进步,你需要做的是翻阅源码,翻阅官方文档,这才是正确的姿势,因为你想了解一个问题的本质就需要寻找本质。

在工作中,遇到问题,首先去搜索引擎查阅资料,然后解决问题,问题解决完后,不要沉浸在喜悦和骄傲中,应该去探究发生这个问题的根本原因,以及如何规避这个问题,这在以后再做这件事的时候会助你行云流水,每次都吸收一点新的知识,这件工作也就有了它的意义。

ps:这里第二段涉及专业知识,但是提到的理论是对于任何职场人士是通用的,即解决问题人人都会,但探究问题的心不是人人都有,做到比别人更进一步,自然也就会更胜一筹。

6

广度和深度

个人见解,在入行初期,最应该提升自己对本行业的广度,即了解的技术越多,遇到的问题越多,越能够加速成长,持续进步,第一步不应盲目钻研某种业务和技术,现在的招聘需求写的很明确,要求你会的东西很多,要求你精通的东西很少,企业要的人绝对是善于解决问题的人,而不是只会复制粘贴的 CV 工程师,这一点要非常的清楚。

但是很多小伙伴不知道如何进阶,或者是感觉自己已经遇到了职业发展瓶颈,这里举几个例子,供参考。

后端方向:在熟悉各种主流框架的开发前提下,应该尽可能的去分析源码,参加开源,逐步提高自己的技术广度和深度,源码晦涩难懂仅仅是刚开始尝试阶段的感受,实在读不懂,就去看别人的分析一步一步跟着阅读,推荐 Mybatis 、SpringMVC 作为入门。

安卓方向:安卓我了解的比较少,但是我个人认为移动端 性能 、交互 永远是第一位的,所以可以将这两个点作为深度研究的方向,试想你要是能把一个体积庞大运行很卡的软件做到很流畅,企业肯定抢着要,尤其是互联网企业。

前端方向:前端在近几年发展迅速,各种框架层出不穷,我认为前端广度不应扩展太宽,基础的 ES 标准一定熟记于心,玩转主流框架的同时,应该逐步深入了解某一框架,达到熟练甚至精通标准,可以尝试维护一套自己的代码库,或者是开发一些自己常用的插件,让自己的工作中可以以更少的时间产出更多的产品,毕竟框架再多,也都是换汤不换药。

其他行业:对于其他行业而言,我只能说,互联网行业发展迅速,适当的了解编程或者互联网的其他行业,不管是对自身工作还是对未来发展都是有一定好处的,但是不要盲目的去学习编程(比如 Python ,应该在自己了解基础电脑知识和编程的概念的情况下去尝试),一旦失败,就会产生很强烈的挫败感,人对于挫败感的接受能力一般很差,继而对编程甚至互联网行业失去兴趣。

N

写在最后

本文从重复性工作为切入点,讲了很多在实际工作中遇到的问题和解决方案,但是每个人的经历、所处的阶段、甚至是认知的不同,都会对每个点都自己独特的见解,但只要有着 “乐以忘忧,不知老之将至云尔” 的精神,相信每一个人在自己的小宇宙都会有所成就。

其实,我从一个 16 岁稚嫩的骚年到 21 岁的现在,一直有一股强有力的信念支撑着我,如果你想了解的话,在公众号聊天窗口回复:经历 查看吧。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 代码宇宙 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档