距离放假还有一个小时,闲来无事,写篇总结。
最近关注我的朋友不少,关注我的多半都是因为几篇博客。既然关注了,我也想分享点工作中的经验给大家。
今年的节点是跳槽。
4月份跳槽的,跳槽之前呢在上家公司还有3W多奖金没拿就走了。走的时候还是很纠结的。来这家公司10个月。总的来说是适应了公司,并作出了一些东西。也拿到了不错的奖金,算起来是不亏的。
来了后,连续负责了十几个大大小小的项目,有自己从头开发的。也有接手别人的代码。
自己开发的还挺好,接手别人的代码真的一言难尽。
最重要的就是rk3568的平台项目,需要翻老项目代码。找个花了两三个月,算是翻完了。并且沿用了两三个项目。目前问题解决的7788,重构的代码在将来复用时,留下的问题将会很少很少。而且不会像老项目,遗留较多未测试到bug,简化了许多逻辑。即使出问题也能很快定位。
这点在接手老项目时,就已经发现了,老项目的代码非常糟糕。出问题不易排查,风格散乱,多线程写法上不易于理解。
针对这种不好理解,写的很混乱的代码,借机重构代码的必要性是非常高的。
在这家公司做了不少东西,年终公司也给予了肯定和金钱上的肯定。感觉这一点是很让人舒服的。不像上一家公司,除了口头嘉奖什么也没有,虽然年终奖金不少,但还是不太好。
上家公司一个人帮他们完成蓝牙模块问题,内网相机rtsp推流问题,以及webrtc可以拉取内网相机的视频流问题。自己边学编写,开发了网页前端拉流demo,node上用js写了个sip服务器,使用开源的simple-rtsp-server服务器,纯go的版本,自学了go,在这个基础上加上了内网穿透与sip服务器交换的全过程,go开发的,才使得内网的rtsp流服务器能被外网webrtc拉流显示在前端网页。居然一点表示都没有。越想越气。
相当于一个人用C++ 做了推流,又用js写了webrtc拉流显示的逻辑,sip服务器,又用开源框架,用go在原来代码的基础上,增加了内外网穿透拉流的过程。整个东西的复杂度和背后的原理都i是自己一边看一遍搞出来的。个人觉得技术难度还是不小的。
不但如此,在开发上使用的技术和解决方案上,还会提出各种奇葩的要求,实在令人作呕。最后的问题仍然没解决。作为技术领导如果不是想着解决问题,而是想着古板的教条主义,也活该项目到死掉了。
最近也悟到一点,技术上就应该以解决问题为中心点,其他都是次要的,上家公司改了一个英伟达开源库的两行代码,被领导叫停,说是不易维护。神他妈不易维护。两行代码不易维护,那还干技术做什么呢?回家吃屎好了。
上家公司的另一个搞笑的地方是,技术经理的领导,技术总监明明技术出身,却想着如何对一款android app的软件界面一种不满意,到最后自己下场亲自做了设计方案。也就是找个他认为好的app抄了一遍。
这软件是给下游的经销商用的,也就是加起来不会有100个人用,还恶心人的一遍遍改。从最初看不到软件,到最后做出来看到软件后就一直提意见。真是应了一句话,我不知道我要什么,我也不告诉你我要什么,等你做出来了,我告诉你那不是我要的。纯纯的脑残。
这里吐槽的有点多了,哈哈,我走了,这两个项目都因为种种原因完蛋了,最后裁员了。建议大家遇到这样的公司,基本上可以提桶跑路了。
技术上打压你,做出成绩不予肯定,软件界面反复修改,最终使用者却不到100人。
新公司这几点全没有,当然新公司也有其他不好的地方。这些年跳槽不少公司,总结下来就是公司里,不是这样的事情不顺心,就是那样的事情不顺心。只能选个自己能忍受的。还好,目前这家公司确实是以解决问题为核心,像ffmpeg源码有问题了,你随便改都不会有人说什么。至于维护问题,根本就不考虑,毕竟ffmpeg版本太多了,我们一般定好后就很少更新,修改的源码会上传服务器,且用的是比较新的ffmpeg6.0版本的。
新公司福利也不错,算是四年跳三家里边最好的一家了。所以人生还是要多待几家公司才知道自己想要什么样的。
另外,选择公司就等于选择了行业和具体的项目,像音视频开发这个,主要是安全监控,互联网,算法检测设备这类的公司,除了互联网大部分都是实体工厂设备的公司。我待的三家都是智能设备。
在这些公司里选的化,尽量选择设备和软件能够影响更多人的公司。
祝大家新年快乐,技术上再攀高峰,打钱打到手软!