不想做业务的技术控该选什么样的公司?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/IMbRl71u7pt5X29rlEu7/article/details/83629390

有问有答是程序视界的一个免费问答栏目,感兴趣的朋友,可以按照下面的方式参与:


  1. 发邮件给 [email protected],标题注明“有问有答”。

  2. 描述你的困惑或者问题。


我每周会慎重回答一个问题并整理成文章,(周四晚上)发布在订阅号程序视界内。


640?wx_fmt=png


安老师您好:


我是一名工作了不到2年的java程序员,平时也做一些前端的工作,坐标西安,西安理工大学本科毕业。目前所在的公司偏重业务一些,但我本人是个技术控,乐于接触各种新技术,而且现在公司的发展前景有点堪忧,所以准备跳槽。对新工作有以下几点期望(排序越靠前,是越看重的):


  1. 工作方向前景向好

  2. 工作方向越偏重技术越好

  3. 公司规模越大越好(因为自己还年轻,想着公司规模大的话,对于自己后续的发展更好些)

  4. 能在西安最好


不知道安老师是否可以推荐一些工作方向及公司?


640?wx_fmt=png


先简单说说技术和业务的关系:


  • 技术的目的,是为了解决业务问题

  • 不存在纯粹的技术性工作,所有技术性工作,最终目的必然是为了解决业务问题

  • 如果有些工作看起来像纯粹的技术,那只是业务分层的需要,这种所谓纯粹的技术,它要实现的业务,是更上层的技术中间层或业务抽象层

  • 技术只有落地到业务,才能获得更好的应用和发展,否则要么消亡,要么藏在深闺无人识

  • 技术的变革可以促进业务的发展

  • 业务的发展也可以引发技术的变革


下面是我画的一张软件分层图,能帮助我们更好的理解业务和技术的关系:


640?wx_fmt=png


宽泛一点讲,每一层软件都有业务——它的上层。只是我们更多时候所说的业务,是指的应用层业务,即和最终用户需求相关的那部分。


很多人所讨厌的业务,就是应用层业务。这是因为这部分业务变化比较频繁,今天加一个功能,明天删一个功能,今天界面这么设计,明天界面那么设计,今天加一条查询语句,明天添一个存储过程……就这么改来该去,感觉技术没什么长进,成长变缓。


但实际上,开发者的成长,有三个维度:技术、业务、软实力。哪个维度都可以很好的成长,打造出亮点,都可以行走江湖。


只不过,开发者对成长的感知,是分阶段的。


工作 5 年以下的小伙伴,因为工作中往往是执行层面的事情多,是在别人规划好的框架内完成特定任务,所以往往更关心技术。


工作稍久一点,5年、8年,一般都成了团队骨干、Leader,需要带项目、带人,格局更大一些,关注点开始向业务倾斜,因为不了解业务就无法更好的开发软件。与此同时,软实力,比如设计、架构、沟通、协同、组织等等,也开始变得重要,因为要带人带团队从更高层面把握软件,这是必须的。


工作再久一点,成了研发经理、总监,业务和软实力这两个维度的重要性,会大过技术。


扯远了,我们回来,结合前面的软件分层图来看看,假如你确确实实不愿意关心“业务层面的事情,在找工作时,可以有哪些选择。


答案是明显的,选择提供 1、2、3、4、5 这5层软件的公司,就会远离应用层的业务。如果西安没有这几类的公司,也可以考虑大公司的特定部门。


至于什么样的公司有1、2、3、4、5这几类相关的岗位,招聘网站搜一搜,从JD中就可以看出来。



我曾经写过一篇文章,专门讨论开发和技术的关系:



建议看看。



如果正在找工作,我的Chat——“如何系统有效准备一场面试”,立刻帮到你!来!识别下图二维码,给自己开个小灶。


640?wx_fmt=jpeg

猜你喜欢

转载自blog.csdn.net/IMbRl71u7pt5X29rlEu7/article/details/83629390