|

文|洪生鹏
昨晚,后台有位读者加了我微信,聊了许久。
经了解,张工是一名程序员,毕业后到一家外包公司上班,工作一年多了,现在目前每天都有做不完的项目,经常需要加班,但工作内容主要是增删改查,技术得不到提升。
为了改变现状,最近张工到一个互联网公司面试,面试过程中被问到了redis、kafka、多线程编程等技术知识时,张工大部分耳熟却不能详,有的甚至听都没听说过,因为项目中根本就没有使用过技术。
面试受挫后,张工深感焦虑。
工作中自身技术得不到提升,这对程序员来说是一件相当痛苦的事情。
互联网行业是一个变化发展很快的行业,行业自身在不断的发展进步,同时行业的知识和技能也在不断的更新迭代着。
如果自身技能跟不上步伐,很容易被淘汰,这时候难免会焦虑。
工作一年,工作主要内容是增删改查, 这很正常,但要因此说增删改查没有什么技术含量吗?
那倒不一定,软件行业,大部分业务都脱离不了增删改查,增删改查是基本功,不能忽视,好比画鸡蛋容易,但要是画出的鸡蛋能与达芬奇画出的鸡蛋比,那可就不简单了。
对此,有网友表示:
[list,
[*,我工作也差不多5年了,不说增删改查,单纯查询一项我都没有领会到其精髓。
[*,有时间自己多学习学习,先踏实做好手上的事,你才毕业不到一年,别想着跑!
[*,谁说增删改查没有技术含量,你搞个并发试试。
[/list,确实,同样是增删改查,为什么经验丰富的人编写的接口稳定又高效,而经验相对不足,总出现这样那样的问题。
譬如订单接口,经验不足的开发人员,容易出现重复支付的逻辑。用户调起支付网关进行支付,支付成功了,但由于某种情况导致未接收到第三方成功回执,系统此时还是认为未支付成功,用户此时又支付了一次并且成功了。
技术是需要沉淀的,把握好每一个细节,争取把每一个细节都研究透彻,切忌好高骛远,简单事情重复做,每做一次都要有新的思考,而不是简单的机械劳动,把1年的工作经验用了2-3年。
01、 为什么要制定工作目标?
每天工作主要内容是增删改查,越来越焦虑,我想可能是缺少制定合理的目标。
《礼记·中庸》提到:“凡事预则立,不预则废.”,说明了目标和计划的重要性。
很多时候,我们都是走一步算一步,缺少目标的定制和计划,对于目标,认为这个很虚,没有必要,每天工作那么忙,还定什么目标,也就缺少对目标的实施,这阶段到底完成了多少,实现了多少,还是那些未能实现,是什么原因导致的,都无从知晓。
目标明确,当我们面临工作的坎坷时,聚焦于目标,我们能更快行动防止拖延,不再徘徊不定和内心纠结;当我们想偷懒,敷衍工作时,坚定于目标,从而不轻易得过且过;另外,当我们制定的目标完成后,会很有成就感,对自己所从事的工作更有兴趣和激情,形成一个良性循环。
可见制定目标是多么的重要。
02、如何正确的设定工作目标?
在这里给大家推荐一个很实用的目标制定策略SMART模型,按照这个模型来说,一个高质量的目标应该具备以下5个要素:
1. S代表的是Specific:目标内容要具体
好的目标首先应该让自己明白自己应该做什么。
例如,在程序设计中,作为一名软件开发人员,我们经常制定像“完成会员模块功能”这样的目标。
不知你有没有留意到,这样的目标其实并不够具体。
因为这个目标没有说明自己完成会员模块的具体功能(会员登录注册、优惠券、签到功能、支付功能)
这种笼统的目标,一时间让人无从下手。
如果把目标设定为“完成会员签到功能”就是一个比较具体的目标。
而且在这期间,必须按照会员签到这个流程去实现签到领积分的功能。
所以,试着把自己的目标不断的具体化,不仅能体现你的思考和分析过程,
也能把问题想得越全面和深入,目标的质量就越高。
目标越具体,之后的执行计划就越高效,因为它更容易激发执行的动力,更有成就感。
2. M代表的是Measurable:衡量指标要量化
什么是可衡量的目标?就是要知道目标做到什么程度才算是完成。
比如“这个月熟悉RabbitMQ消息中间件”,这样你就很明确地知道,
这个月只要掌握了RabbitMQ消息中间件就可以定为完成目标。
但是如果你的目标制定的是“这个也熟悉消息中间件”,这就稍微有点广泛了。是掌握了哪一项消息中间件算是完成,是用kafka还是RabbitMQ。
所以像这种不可衡量的目标很难执行,因为无法确定完成点,也很容易给自己找退路,比如看了RabbitMQ,中途看不下去了,转向看kafka了,而kafka又看不下去了。
举一个程序设计工作中优化的例子,比如你要优化订单列表的查询效率,如何衡量你优化成功没?那么,你的目标设定,就就应该像是“优化后的订单查询效率,查询效率提升20%这种,可衡量的。
这样你做设计的时候方向很明确,结果也是可衡量的。
制定可衡量目标,还能促使你跟进结果,来证明你的价值和目标达成的效果。
3. A代表的是Achievable:目标制定要实际、可实现
目标的设定一定是可实现的、切合实际的。
目标不要给自己设的太远太大,要结合自身实际情况,要在达成目标后给自己一个满足感和一个积极的反馈,这样不会被自己的目标吓倒,给自己坚持下去的动力。
当一个人习惯于完不成自己制定的目标时,那么任何目标对他来说都是没有意义的,长期还会让自己对目标的设定麻木,不会对自己的行为负责。
如果你技术水平有限,你现在在做一些非核心的功能模块,那么你的目标可以设定为,努力争取能独立负责一个模块的开发。
如果你已经独立承担过项目的研发工作,那么你的目标可以设定为,提升统筹全局,深入了解系统业务能力。
总的来说就是给自己设定符合现实情况,且可实现的目标,一步一个脚印的走。
4. R代表的是Relevant:目标要与职业目标一致
相关性,指的是目标是否与你长远的理想、需求密切相关。这个要素主要衡量的是目标对你是不是真的有意义。不要表面看起来很努力,实际方向却早已脱离轨道,越走越远,越努力越焦虑。
5. T代表的是Time:完成工作需要的时间,预计达成结果的时间。
没有时间限制的目标,即使目标被量化或细化了,也可能会使目标实现变得遥遥无期。
因为你可以轻而易举地为自己找到拖延懈怠的借口,而且也不知道用什么样的行动、什么样的力度去实现它。
有些人喜欢用“尽快、尽量”这样的字眼来表示时间限制,这种过于主观、不够严谨的概念在目标设置里是不可取的,必须要用明确的时间限制来定义,比如当天,截止明天。
对于一个积极主动的人来说,目标的时间限制可以给他提供一个提前完成的动力,给自己提出时间的要求,不仅能提升执行的效率,还能给自己适当的压力。
总结
目标对每个人都很重要,不管是工作目标还是生活目标,会让我们更有方向和动力,同时根据SMART模型,让自己在特定时间内做具体的、可衡量的目标。
机会是靠自己的努力和时刻准备着的意志创造出来的。
所以少点抱怨,兄弟姐妹们,制定完目标,就开始奋斗吧,2020年已经过去了三分之一了,希望你今年能完成设定的每一个目标。
-END- |
|