大家好,由于最近一年多的时间我真的非常忙,导致我差不多有一年半甚至更久的时间没有写公众号了,这个肺腑之言系列差不多也有2年没有更新了,前几天翻了翻我之前的原创,发现上一次原创还停留在2020年,在这里真的要深深地说一声抱歉,以后我会每周抽出一定的时间来更新我的公众号。
今天要聊的话题就是一个算法工程师的自我提升,这一年以来,针对这个方面我也有很多自己的感想,今天就想趁着这个机会跟大家聊一聊。
算法工程师的几个阶段
在说算法工程师如何进行自我提升之前,我们首先给算法工程师做一个简单的阶段分类,我们可以先简单的把算法工程师划分成几个阶段,新手入门、目标明确、自以为是、新手入门。
总结起来就是下面这张图:
新手入门
在刚刚踏入算法工程师的行业时,大部分人都是抱着学习的心态,知道自己是新人,因此都怀着比较谦虚的心态,一般这个阶段的同学,都能够学到很多东西,虽然这里面会包括很多有用的东西,以及很多没有用的东西,但社会是个大染缸,染成啥样,基本上都是看自己。
对于一个刚入门的算法工程师来说,多听、多看、多做、多请教是最核心的要素。记得我在大学毕业实习的时候,我实习单位的领导就跟我说过这么一句话:“你现在是实习期,你的任务就是抓住公司的各个大神问,追着他们屁股后面问,把自己不会的问题都弄懂,这样你才能成长的非常快”,这句话至今也非常受用,也非常适合阅读这篇文章的各位同学们。无论是实习期,还是一个刚刚毕业的应届毕业生,对于一个在公司已经工作了几年的老鸟来说,其实大家就是新人,无论你在学校的时候做的东西多么牛,发了多少篇优质的论文,实际上对于公司来讲,你就是一个新人。所以,作为一个新人而言,就应该把握新人的这一波优势,不厌其烦的请教问题,这个时候,大家都愿意帮你。
新手入门阶段,最重要的是找准定位,一般来讲,我们可以从大学毕业开始,甚至从实习期开始,花费半年到一年的时间给自己找准定位,用半年到一年的时间清楚自己未来到底应该往哪条线走,是专注于算法,还是算法加工程,是做NLP方向、CV方向还是强化学习等,如果是做NLP方向,是专注于文本生成还是智能问答再或者是一些其他方面的细分类别。
对于新手入门阶段的同学们而言,其实刚开始我建议先去在各个方面做一些尝试,因为只有在各个方面都做了一定的尝试之后,才能够更清楚自己想要的是什么,只有这样,才能够使自己的目标坚定不移。
这里很多人会说,如果我不尝试其他方向,一开始我就选择一个方向,这样不可以吗?对于这个问题,我认为,对于少部分目标非常确定,甚至说细分目标非常确定的人来说是适用的,但是对于一个还在摇摆期和大多数的同学来说,并不是很适用。因为很多时候,人们都有这山望着那山高的心理,总想着去尝试一下其他的领域,总感觉目前的工作既然我能做,那么其他的我也可以,这样的话,就会使自己频繁的在不同的细分领域中跳来跳去,最后导致什么都会一点,但是什么都不精,与其这样,还不如一开始就把想要尝试的领域都去试试,这样反而容易知道自己到底想要的是什么,以及下一个阶段应该怎么去做,怎么去朝着目标努力前行。
目标明确
随着自己对行业和自身岗位的认知,大部分的人就会进入到第二个阶段,在这个阶段,每一位同学都有了相对明确的目标,都知道自己接下来要做什么,并且已经为自己制定出一系列计划,并按照这个目标努力前行。
一般来讲,当一个人有了明确的目标的时候,就会变得异常兴奋,也会变得异常有干劲。那一段时间,心里想的都是自己如何去努力,如何去朝着目标前进,给自己制定了一套近似于完美的计划,并按照这个计划来执行,往往在这个阶段,大家的技术都会走向一个新台阶,做的事情更加专一,研究的内容更加深入,从宽泛的技术点中提取出了适合自己的内容,并对这些内容深入的去了解。
这个时候,你会发现,自己的进步非常快,之前很多不懂的问题也一下子变得豁然开朗。在这个阶段,大家往往更想把一件事做到极致,做到一个近似于完美的程度,慢慢的你会发现,自己已经不知不觉的成为了公司底层开发人员的中坚力量。因为在这个阶段,你会发现对于上级分配的任务,你都可以做到得心应手,而且即使你一时半会做不出来,也会想方设法、加班加点、请教他人的将这个任务完成。
在这个阶段,往往是职业生涯中干劲最足的时候,也是想法最多的时候,大家往往都会在公司努力的表现自己,努力想办法得到领导和同事的认可。这个时刻,也是职业生涯中最辉煌的时刻。
目标明确的阶段,往往会占职业生涯中很长一段时间,一般来讲,往往是在刚入行的第三年到第十年,甚至更久,在这个阶段,我们要做的就是汲取、汲取再汲取,一边学习、一边工作,每天想尽一切办法去充实自己,去努力奋斗。
自以为是
当自己经过了十年左右的职场生涯后,大部分算法工程师到了中阶段,这个时候,大部分人也已经成家立业,娃差不多也都可以打酱油了,此时就会进入第三个阶段,也就是自以为是的阶段。我认为,这个阶段基本上是任何一个算法工程师,甚至说是任何一个工程师都绕不过的坎。
古人云,三十而立,一般32~35岁就是这个阶段的开始。因为已经有了一定的社会阅历,甚至已经跳了很多次槽,工资相比于刚刚毕业的时候也翻了好几倍,这个是,显然已经成为了技术上的顶梁柱,企业里的高级工程师,另外,也变成了一个名副其实的企业老油条。此时的你,下面可能会带着几个人去做事情,晋升成为了一名leader。
一般来讲,人往往在这个时候就会飘起来,尤其是事业越顺利的时候,飘的越厉害。这个时候,大多数的人都会觉得自己该会的已经会的差不多了,自己所处的领域中基本上也没有什么问题可以难倒自己了,自己俨然已经成为别人口中的技术大牛,因此,在这个时候,很多人都会变得飘飘然。
透过问题看本质,为什么会出现这样的情况呢?
我认为,出现这种情况最根本的原因就在于对自身业务的过度熟悉,对其他技术的不关心所导致的。很多人一旦在自己的工作领域做的时间久了,就会形成一套相对比较固话的思维,当很多事情都做的很熟悉的时候,就很难去接受新的事物,但是时间是在不断前进的,技术是在不断更迭的,每年都会产生大量的技术,很多比较古老的技术都会逐渐的被新技术所取代,这里并不是说老的技术不好,只是说很多老的技术相比于新的技术而言,会变得开发效率低,出错率高,甚至新的技术已经能够通过几行代码就能实现的问题,用老的技术可能还要写上几百行代码才能实现。但是有的时候,很多老员工就希望安于现状,不希望做大的改变,也不想去接受新的技术,因此就会只守着自己的一亩三分地。
从另一方面讲,在这个阶段的算法工程师,会潜意识的认为自己是对的,只要坚持自己的就一定不会错,因此,也就很难听进去别人的建议,甚至有的时候即使嘴上是听的,但是心里是不服气的,其内心的真实想法往往是:“我工作了这么多年,还用你教吗?”,实际上这就是潜意识的认为自己是一个老资历的人,很难听进去别人的话的一种表现,也是一种自以为是的表现。
实际上,任何一个算法工程师,或者说任何一个开发工程师,基本上都会经历这样的时期,人总有骄傲的时候,总有认为自己很厉害的时候,这其实是很正常的,这个阶段在职业经历中也会存在比较长的一段时间,但是无论什么时候,我们都要记住人外有人天外有天这个道理,要不断的吸取新的技术和新的事物,才能够更好的进步。
自以为是阶段是职业生涯的一道坎,迈过去了,后面才会一片坦途。
新手入门
到了最后,很多人会发现,自己其实还有很多不会的,还有很多东西需要学,突然认识到了前面的自以为是,突然发现其实很多事情换一个角度、换一种方法来做,实际上会更快捷、更方便,经过了十几年的工作之后,突然意识到自己只是沧海一粟,还需要不断提升的时候,此时才真正的进入到开悟之路,才开始慢慢的向着大师之路走去。
写在最后
作为一个算法工程师,应该抱着活到老学到老的心态,在我看来,所谓的算法工程师的自我提升,实际上是就在我们工作中的每一步,不骄不躁、不卑不亢,脚踏实地的将每件事做好,从而使自己慢慢走向上图中的大师之路。
END