ITPub博客

首页 > 数据库 > 数据库开发技术 > 程序员困局之一二

程序员困局之一二

原创 数据库开发技术 作者:安瑞哥是码农 时间:2022-05-12 08:37:36 0 删除 编辑

写在前面
前几天,一个昔日团队小伙伴问我,哥,最近感觉工作很迷茫,能不能帮我解答一番?他的问题是这样的:

问题1:进入现在这家公司后不久,来了一位能力不错的领导,进来后他提出了一些对现有项目的很多改革的想法,也提出要使用一些新的市面上上流行的技术,当时我是很开心和振奋的,但是当他把这些[好]想法向领导们提出来时,却遭到了大家的一致反对,原本列的一些实施计划也都没有实现,很快这个空降的领导感觉自己得不到重视,愤然离职。

问题2:然后新来的领导又不是很给力,能力一般不说,好像也不怎么向着底下做事的兄弟说话,目前做的事情属于公司的边缘业务,感觉没什么技术含量,做的这个产品属于公司内部使用,但却没几个人愿意用,感觉自己好像没什么价值,很迷茫...

这个小伙伴呢,跟我一起共事过大概2年多时间,追随我待过2家公司,是一个非常上进,很愿意钻研技术的人,虽然学历不高,但是凭借对技术的热情,一步步升级迭代,现在也进了鹅厂,应该说比身边大多数的同龄程序员要强。

但是即便如此,依然会碰到各种各样的职场困惑,职场困惑这个问题我相信对于所有打工人都一样,只是表现形式不同罢了。

既然把这个问题问到我这了,说明是相信我,那我自然也不敢怠慢,我没有立马回复他,而是过了一天,跟他约了个专门的时间,然后专注的、用心的、用我这么多年的打工经验跟他娓娓道来。

第1个问题

我相信对于任何一个新入职一家公司的小伙伴来说,想快速表现出自己的能力,让身边的同事和领导对自己认可,是一件再正常不过的事情了,尤其是那种[身居高位]的比如架构师、资深开发、一线负责人等等。


他们会更在意在短时间内在新公司、新团队中快速建立起自己的[权威]。当年的我也一样,入职一家新公司,职位是技术负责人,这个时候包括老板在内,团队所有的小伙伴都盯着你呢,心想,这小子到底行不行啊?会不会只是个[花架子],而且这里面不乏一些人等着看你笑话呢。


急于表现,这属于正常人的正常心态。


现实情况是,当你了解到团队现有项目情况和技术架构之后,踌躇满志,各种改良和升级建议,各种推陈出新的想法,然后文档一写好几十页,PPT一做几个晚上,正当你为自己的完美[改革]方案沾沾自喜时,却在开会时,突然,同时遭到了领导和同事们的一致反对。


为什么?


于同事们而言,你增加了他们的工作量;

于领导而言,你提高了现有项目的不确定性;


同事们求轻松,而领导则求稳。


对同事们来说,他们心想,你谁啊?一上来就改动这么大,破坏性这么强,增加我的工作量不说,我还得找时间学新技术,能不能成功不知道,但往后的日子,我肯定要加班加点了。


再说了,现有系统又不是不能用,只是系统数据量现在越来越大,我们的处理效率有点跟不上,优化下就好了呀。


而对领导来说,其实他不怎么关心你所谓的新技术,新思路,他更在乎项目能不能满足客户的预期,能不能在规定的时间节点内卖出去,稳定性压到一切。


怎么破局呢?


根据我的经验,上来就推你的新想法,新改革,只有在2种情况下可行:


一种就是现有项目已经实在维护不下去了,运维的成本远远大于开发成本,且这个时候需要领导完全跟你一条心,各种资源优先向你倾斜;另一种就是,这个项目本来就是从0开始,由你来牵头实施,并配给你相应的资源。


但是大多数情况下,公司招你进来,只是要你让这个项目变得更好,你可以改革,也可以推广新技术,但是这里面有个重要的前提是:你得在他们之间先建立起信任,让大家先肯定你。


怎么样做?


我的建议是从小事开始,从解决同事们现有的痛点问题开始,比如有人反映说现在系统处理的数据量太大,之前的老方法处理效率太低,那么你就考虑如何优化。


怎么优化?先熟悉这个代码要处理的业务功能;再看代码编写的业务处理逻辑;然后从编程技巧的角度看数据处理的时间复杂度、空间复杂度;一级级定位原因,而不是一上来就把整个技术架构给否定了,说原来用的spark不行,要全部换成flink,这种,只能说明你的能力不够[硬核],要是我,我只会让你上一边呆着去。


不要用战略上的勤奋来掩盖战术上的无能...


我相信,只要你能够一次又一次地真正的解决了身边同事实实在在的[痛点]问题,大家对你的威望,和对你的信任只会越来越深,你在新公司的影响力才能逐渐建立,而后续你的那些改革和推陈出新就是自然而然的事情了。


要知道,程序员最信奉的一个原则就是:Talk is cheap, show me the code。


想要我服你,你得拿出真实力。


当然,这个问题是在说那个领导,并不是这位小伙伴。


第二个问题

这应该也是很多小伙伴经常遇到的,先来说说领导不给力这个事,这个领导一般指的是一线的技术leader,类似组长,项目负责人这样的角色。


我一直认为,像这种一线的负责人是最难当的,你说他是领导吧,他又并不很擅长管理,你说他是技术吧,很多时候又没有时间 coding。


对于这样的角色要求,[上要会奉承领导,下要团结好兄弟],要求你既要会理解需求,又要会写文档,做PPT,取悦领导;还要能攻克关键技术,给兄弟们排忧解难,稍有不慎,就会夹在中间受气。


先说新领导能力不行这个问题,我觉得不要轻易断定行与不行,很多时候你说的不行,可能只是不符合你的[口味],他能当你的领导,我相信一定存在某些过人之处,或者说至少在某些方面比你强,我是觉得要多站在他的角度考虑下问题,多看到他的[亮点],尝试去理解,因为只有这样,你们在一起工作才有可能更加合拍。否则,抱怨对你的工作起不到任何积极作用。


再来说说领导不向着自己,这个主要跟他的性格有关系,有的人就喜欢公事公办,一板一眼,而有的则喜欢维护自家兄弟(比如我),跟团队小伙伴打成一片。不能因为他某几件事情没有站在你这头就去否定他,这个过于主观。


我觉得只要他在工作中能做到不刻意偏袒,认真对事,就没有问题。


再来说说工作的内容,对于说项目中做的东西没什么技术含量,能力得不到增长,对于这个问题,我觉得未必是真实情况,你觉得做什么样的东西叫有技术含量呢?或者必须得用到什么技术才算你眼中的有技术含量?


对于任何技术来说,能服务于人或者项目的就是好的技术,你所说的没有技术含量,可能是指没有现在大家眼中的[大数据 人工智能]这些高大上的东西,但是你要知道,当这些技术真的出现在你面前的时候,你就真能玩的特别好吗?


而且,我不太相信你真的在这个项目上学不到东西,你花些时间跟精力研究下别人写的代码,如果你觉得不好,你有没有能力去优化,再思考下现在这个项目的技术架构,当前的这个为什么这样设计,合理吗?如果你认为不合理,应该怎么样优化,出个优化方案什么的,我觉得你有太多可以学习的地方,只是你,可能还不知道而已。


再来看边缘项目这个事情,大家都知道,现在大环境很不好,很多公司的很多业务都无法开展,很多甚至直接被砍掉了,而你现在的项目依然还活着,应该感到庆幸。谁都想接触核心业务,核心项目,关键得轮得到你啊,这个不是你想接触就能接触到的,公司毕竟不是你家开的嘛。


如何破?


我认为,在当下环境里,稍微降低下自己的预期,适当蛰伏,不要一言不合就离职,利用空闲时间多补补课,根据自己目前的专业方向,或者以后你要发展的专业方向,查漏补缺,把基础打扎实,也可以适当看下外面的机会,说不定经过你一对比,还不如你现在的状况呢。


总之一句话:大环境不好时苦练内功,时机成熟时才能破茧成蝶。


最后

职场中有句很残酷的话叫:要么忍,要么滚。


确实很辛辣,但是也照应出了当下求职环境恶劣的事实,很多时候我们的抱怨、不公,并不是你运气不好,而很可能是你实力还不够。




因公众号无法留言,如果你觉得我讲的还凑合或者有任何疑问,欢迎找我交流探讨...


原文作者:安瑞哥是码农;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2022-02-16

  • 博文量
    228
  • 访问量
    115419