0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

实际情况告诉你开发岗累,还是算法岗累

算法与数据结构 来源:算法与数据结构 作者:算法与数据结构 2020-10-26 16:03 次阅读

最近由于校招如火如荼,一些小伙伴在后台以及知乎上问我,在开发和算法之间犹豫,不知道如何抉择,想要问问究竟哪一个岗位更好?

恰好我之前在知乎上回答过“对于技术岗位而言,开发岗累还是算法岗累呢?”的问题,于是将它搬运了过来,希望能给大家一点启发和帮助。

了解我的朋友可能都知道,2015年的时候我在阿里妈妈的算法岗位实习,然而找工作的时候我阴差阳错地去了某公司的开发岗位。做了一年之后,由于各种原因,有点后悔当初的选择于是又想办法转回到了算法岗位上。所以说这两个岗位我都待过,所以就各自来谈谈它们的缺点。有的时候我们不知道我们想要什么,但往往清楚我们不能接受什么。

这两个岗位虽然说起来都是工程师、技术岗,但是两者的工作内容和性质差得真不是一点半点。从业当中,也都有心力交瘁的时候,但是体验和触发条件都不太一样。简单说一说。

首先说开发,我个人在做开发的时候,蛋疼点主要有以下几个。

开发篇

on call

on call可以理解成随时等待召唤的意思,一般来说重要项目的开发人员都是7 x 24小时on call的。

只要线上有问题,一定会有电话打进来。凌晨两三点也不是没有可能,而且很多时候,这些问题未必是你的锅,很有可能只是因为某某项目的负责人上有你的名字。

这点我想应该大小公司都有,之前和蚂蚁的同事聊天,他给我吐槽说他凌晨起夜已经成了习惯。因为好像蚂蚁到了晚上还有很大的流量,经常hbase抖动,每次抖动都会有电话打过来。还有什么烧烤吃了一半突然线上GG了,狂奔回公司查问题的,都不算是事。

不仅工作日如此,周末、假期都必须响应。所以基本上电脑随身携带是肯定的,哪怕是过年回家、出国旅游基本上也都要带着电脑。而且根据墨菲定律,千万不要有侥幸,我侥幸过两次,都中招了。最夸张的一次,在香港太平山上拿着手机看代码。。。

什么?线上故障的时候,你睡得太死了没听到电话?

Emmmm,轻则被leader说上几句,重则,可能你需要准备一下简历了。

大促熬夜

只要是电商公司,没有不大促的,只要大促,没有不要熬夜的。所以可以简单理解成只要是电商公司,那么一定会有熬夜。

大促意味着巨大的流量,自然对系统的稳定性是一个顶级的考验。就拿双十一举例,你以为只要在双十一当天多准备几台机器就好了?too young,在真正大促到来之前我们需要做很多轮的模拟流量检测,怎么模拟呢?就是搞一堆虚假的请求过来发送到服务器,看看服务器能不能抗住。这种模拟测试在行内称为压测,也叫压力测试。

一般来说每次大促至少两轮压测,由于压测可能导致系统问题,所以不能放在流量高峰期,也就是白天,只能晚上夜深人静的时候搞压测。那么你想嘛,熬夜就是必不可少的。

就算两次压测好了,两次压测加上大促当天的值班,至少每次大促都需要熬三天夜。每次熬夜,至少要两三点才能睡觉。

来来来,你告诉我,这样的大促一年有几次?

光数的出来的大促就有四次,321, 618, 11.11, 12.12……而且现在这个大促的次数还有明显地增加的趋势。

并发工作

工作当中最令人感受不好的就是并发工作,也就是一件事情你还没忙完,甚至刚刚做出一点眉目,立刻就被其他更加紧急的事情打断。

比如你在查一个bug,刚刚锁定了大概导致bug的代码区域,还没有具体检查出来,突然测试就告诉你她发现了新的bug。或者是产品过来跟你聊一个新的需求,或者是有人找你问一些关于你们系统的问题。这种连轴转的感觉是最痛苦的,只要很短的时间就会让人心力交瘁。

当然这个问题并不只是在开发岗位出现,其实任何岗位都有可能出现这个问题。但是相对来说,开发岗位出现这种情况的概率更高。因为开发往往负责的是一个或者多个系统,系统大了可能出现的各种各样的问题就很多。并且还会有很多使用系统的人问你问题,很容易出现这种情况。

其他问题

除了上面三点之外,其他蛋疼的点也很多。不过相比之下没有那么严重,所以我就放在一起说了。

比如大多数公司文档都不健全,对于开发来说接收陈年项目非常容易踩坑。而且很多时候需要直接去读源码,如果碰到之前的工程师代码能力不行的话,会导致代码非常难读,就跟眼睛被针扎了似的。

还有就是肝deadline的现象非常严重,每一个产品提的需求总会给你设一个deadline。有时候总会有各种各样的意外发生,导致你需要爆肝才能赶得上进度。比如线上出了故障排查了两天,或者是临时加了一个紧急的需求等等,无休无止地爆肝真的会让人崩溃。

另外一点是经常重复性工作,今天增删改查,明天改查增删。面试的时候高并发、分布式,进去工作之后curd。经年累月没有成长,如果是大公司的话,很多人干几年也没有过从0开始真正搭建项目的经验。

有时候产品或者运营或者是老板不好沟通也是一个问题。要么是不懂技术沟通成本很高,要么就是无脑强势,不懂装懂,我不管你觉得,我要我觉得。

算法篇

SQL boy

很多人被算法岗吸引,就是觉得算法岗高大上,机器学习人工智能。但其实真正从事之后,会发现根本不是那么回事。

如果在小公司,整天为数据发愁,不是这个数据没有,就是平台或者工具稀烂。如果在大公司,数据、平台、工具都有了,但是每天当SQL boy。你和业务谈算法,业务说明天上线,先统计上一版。老板整天告诉你,我想看这个、这个和那个,你去帮我跑一下。

你想说抽空能把某个模型优化一下,结果发现手上排的SQL根本写不完。机器学习、深度学习的模型我明明会一堆,但是眼下的事情永远只有SQL和数据。

问题难定位

做算法的过程,很多时候是一个和自己较劲的过程。

因为模型和开发的代码不同,开发用代码实现的功能结果是明确的,原因是可追溯的。但是模型不是,经常在别人场景下效果好的方法到你这里一团稀烂。特别是你老板报以期望的方法,你很难解释……太多的可能性导致模型性能不好了,可能是训练数据有问题,可能是特征有问题,有可能是流程有bug,但是老板不管这些,他们需要的是确定的结果。

并且很多人觉得查问题很简单嘛,你找几笔数据来看一下不就知道了?还有一些不懂装懂的路人,哎呀你用这样这样不就可以了?

大数据时代,只有相关性,没有因果性。几笔数据能够代表全部吗?我抽了几笔看了没问题,就能代表全部数据没问题吗?换句话说几笔数据有点小问题,就能代表这个是导致模型不行的原因吗?千万别信,信了就是大坑等着你。

我最头疼的就是老板让我去查某个问题,简直是玄学,如果是明显的问题还好,如果不是,你可能跑一堆SQL,看一堆数据还是一无所获。更蛋疼的是,可能一切都没问题,但就是效果不好,你也不知道为什么,毕竟神经网络是个黑盒。

忽悠和大忽悠

算法行业的忽悠很多,心态不好的人很有可能会扛不住。

也是因为现在算法太火了,很多不明就里的人会用仰望的目光来审视。某些时候这个是好事,比如当和投资人聊钱的时候。但大部分情况下,则未必。

比如某些决策者会有错觉,会有幻想,比如会提出一些他们自己都不信的口号。喊口号不是问题,但问题是口号里的指标要你去落实。你会发现你很有可能忍不住想要打人的冲动,其实老板也不是白痴,他们心里也门清,可能也是为了应付更高层的老板或者是投资人而已。有点像是晚晴鸦片战争时期的官员,从上到下都知道打不过英国人,但是总得想出点办法来去写篇“捷报”,不然怎么升官发财?

以前遇到过这么一档子事,说是公司的日活用户一直在降低,公司希望用机器学习的模型来筛选一批贪财的用户,给他们发5块钱红包。这样他们为了贪这5块钱就会一直活跃,也就带来了日活的增长,这样就可以和更高层的老板交差了。看起来这个逻辑非常清晰,毫无破绽。

但问题是,当时的日活有三百万,每天发多少红包呢?只有几万个。你说应该怎么办,即使算法选出来的每个用户都不流失了,那难道就能增长了?入不敷出的成语学过没有?老板才不管,你只管去做,做不好就是你能力不行。这种情况怎么办?

同样,这行吹逼的情况非常严重,简直章口就来。反正别人不知道你到底怎么做的,面试的时候有些人吹得那叫一个天花乱坠。当很多人都这么做获得好处,而你坚持底线,一直默默无闻的时候。你很难不对你的信念产生怀疑,究竟错的是你呢,还是这个世界?

以上,只是我一家之言,如果言中,请勿对号入座。

最后,世上没有完美的职业,总要有所得有所失。如果你能明白可以忍受什么,不能接受什么, 我想,你一定可以做出不后悔的选择。

今天的文章就到这里,衷心祝愿大家都能找到称心如意的工作。

责任编辑:xj

原文标题:开发岗累,还是算法岗累?

文章出处:【微信公众号:算法与数据结构】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4448

    浏览量

    90719
  • 开发
    +关注

    关注

    0

    文章

    342

    浏览量

    40600
  • 程序员
    +关注

    关注

    4

    文章

    931

    浏览量

    29566

原文标题:开发岗累,还是算法岗累?

文章出处:【微信号:TheAlgorithm,微信公众号:算法与数据结构】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    关于给宋的超级大懒觉

    关于matlab仿真阿宋懒觉,基于全相位滤波器,主要功能消除ISI
    发表于 04-03 13:46

    鸿蒙这么大声势,为何迟迟看不见岗位?最新数据来了

    9月鸿蒙原生应用全面启动以来,金融、生活、社交、娱乐等领域的鸿蒙原生应用加速开发,带动人才需求持续释放,吸引大量人才涌入。鸿蒙开发是核心,移动研发、软件研发、前端开发位列前三,招聘职
    发表于 02-29 20:53

    软件测试的7大原则,漏了几条?

    clustering) 缺陷群集,指出少数功能模块包含测试到的大多数缺陷。这是帕托原理在软件测试中的应用:大约80%的问题出现在20%的功能模块中。 根据经验,可以识别出有风险的模块。但是这种方法也有局限性
    发表于 01-18 09:39

    LTC6812断开两根及断开跨接铜排上的检测线时,检测结果与实际情况不相符,这个现象是否正常?

    ; 当剪断的测量线测量接的时跨接用的铜排时,引脚上的前后压差不小于-400mV; 断开两根以及断开跨接铜排上的检测线时,检测结果与实际情况不相符,请问这个现象是否正常?
    发表于 01-04 07:09

    【先楫HPM5361EVK开发板试用体验】-03-如何激活SEGGER Embedded Studio开发工具

    :尽量使用英文或者拼音 2:MAC地址需要去掉横否则会出现以下失败的原因。 3:使用的MAC尽量是你们的有线网卡的MAC地址。 完成这个之后我们就可以申请到Liscence了,只需要等邮件,一般情况
    发表于 12-09 16:35

    DSP岗位热招中,还有其他嵌入式软硬件

    ,SVPWM,软件锁相,孤岛,下垂控制等); 熟悉控制理论,具备环路稳定性设计和分析能力 ; 熟悉使用Matlab/Psim等仿真软件进行算法开发和仿真;
    发表于 12-05 16:12

    在什么情况下可以把实际电源等效化成“理想的恒压源、恒流源”?

    是指提供电能以供电路元件正常运行的设备或装置。常见的电源类型有电池和电网等。电源的一般特点是能够提供一定的电压和电流。然而,在实际情况中,电源会受到各种因素的影响,比如内阻、负载的变化、温度等。因此,我们往往希
    的头像 发表于 11-30 14:49 432次阅读

    【爱芯派 Pro 开发板试用体验】实际场景应用

    。 本地算法、本地缓存,网络依赖性低。 实际2 实际3 基于目前的测试 还是会有1%左右的偏差 特别异常---把赶猪板识别成猪了 设备无人化操作预期目标 全智能
    发表于 11-27 08:57

    AD8232设计的一阶高通和二阶低通混合实际情况和软件模拟情况不符怎么解决?

    倍左右的放大, 想要达到一个信号在20-500Hz衰减很小,而且相位移动较小的效果。 从图上来看设计的滤波器应该能够满足条件呀~ 可是实际当中输入正弦波信号之后 信号在100Hz以后就开始产生
    发表于 11-22 07:14

    【爱芯派 Pro 开发板试用体验】智能数猪项目概述

    本帖最后由 邓云秀 于 2023-11-29 13:44 编辑 规模化猪场生猪出栏时,农场售猪短则一天长则几天,管理耗费人力;同时由于买卖中间环节的监管不到位,可能存在不少人为干预的情况
    发表于 11-13 09:40

    车辆导航系统中最优路径算法的研究

    的一个重要应用本文以阜新市城市地图为基础,利用c#编程,通过道路的宽度,长度,以及各个时段的车流量等实际情况为道路设置权重,采用改进的 Di jkstra算法进行最优路径的选择计算,达到了最优路径搜寻
    发表于 09-21 06:25

    理想电源与实际电源的区别

    理想电源和实际电源在电压、内阻、电能等方面存在一些区别: 电压:理想电源的端电压是一个恒定的常数,与电流的大小无关,电流由负载电阻确定。而实际电源的电压会随着实际情况发生变动。 内阻:理想电源没有
    的头像 发表于 09-14 16:28 3281次阅读

    工业电源线和数据线的保护

    在编写本白皮书时,行业委员会对电子行业进行了一项关于EOS的全球调查。结果证实了长期以来的观点,即EOS是产品故障帕托图上的“高杠”之一。从EOS调查来看,响应者报告超过[20%的总故障与EOS
    发表于 09-07 06:31

    用N76E003的IAP保存时数据,N76E003的IAP是不是每次写数据都要擦除?

    用N76E003的IAP保存时数据,一分钟保存一次, 问题是N76E003的IAP是不是每次写数据都要擦除 如果每次擦除不是用不了多久100000次就用完了 部分代码如下: volatile
    发表于 06-21 06:24

    有没有办法在没有实际射频分析仪的情况下测量ESP8266 TX功率?

    您好, 根据规范,ESP8266 可以低至 +2.5V 工作。 知道 wifi TX 电源是否保持不变到 +2.5V? 还是随电源电压变化? 有没有办法在没有实际射频分析仪的情况下测
    发表于 05-31 08:10