个人经历
2017年毕业后就在广州工作,有3段工作经历。
- 刚出道时在一家小公司做爬虫后台开发,开发语言是go语言,刚出道的我抱着对技术的极大热情。
学习分布式系统的知识、看源码,设计并实现了一个分布式的爬虫系统,这个系统实质是增加了一个任务调度功能,可以让多个爬虫任务在不同的机器间分配以及调度。从而达到负载均衡以及容错的功能。
运气很好,第一份工作的一个项目就把后端的基本知识框架建立起来了,高并发、分布式容错、负载均衡、容器、消息队列各种后端知识强行往脑子里塞。 - 半年后公司经营不善,跳槽去了某无人机的独角兽企业。给无人机做后台开发。也是运气爆棚,公司因为对于高性能系统的需求,决定要招一个golang开发,我就顺理成章的成为了公司第一个用go语言的员工。
然后您猜怎么着?一个刚出道半年的学生,就配安排一个人去solo整个无人机的数据后台系统,果然高速发展的企业用人也是激进。
作为一个新手,分布式系统怎么设计,数据库怎么选型,消息队列设计到哪个位置,怎么不丢数据,全靠现学现卖!
这个故事我可以说好久,技术调研我做了一个月才把设计方案确定下来。最终系统做出来,领导十分震惊于,这个系统明明没用多少资源,性能怎么可以这么彪悍!(其实就是数据库选型契合业务类型以及kafka的正确使用,说起来也很简单- -), 系统设计也高内聚、低耦合,后来我有了3个下属,成了公司最年轻的开发组长。由于我们系统迭代起来成本低,所以我们组大概是响应需求最快,但是却又最悠闲的一个组了。后来我提离职取网易的时候我的直属领导暴跳如雷,觉的自己损失了一员大将(他原话),这也算是一种另类的认可吧。 - 跳槽去了网易。靠着之前履历,在朋友的怂恿之下,写写简历就去面试了,拿了两个大厂的offer,工资也翻倍了。在网易做数据治理,或许数据治理只是一个好听名词,大部分时间都在,修错误数据!修错误数据!修错误数据!没错,这个工作很繁琐,我只是一个工资高点(相对于之前)的螺丝钉。
- 在网易呆了1年半,觉的这样不是办法,这时候我已经知道了电鸭社区,很想当一个数字游民,因为手里有点积蓄,就直接裸辞回了老家。回到老家休息没几天,家里亲戚听说我在家里当无业游民,就让我去老家的数据局里帮忙解决因为疫情防控而产生的各种数据处理的需求(有工资)。写脚本、导数据、写各种小型的etl服务器自然不在话下,还solo开发了一个风险货车的报警系统(golang的写的)。
- 疫情结束后找工作也方便了,疫情防控的小组也解散了,我作为编外临时人员自然也就失业了。正打算找找工作,就稀里糊涂的来到一所大专院校当起了专业课老师,平时就讲讲hello world, 两数之和一类的编程内容。这一年还干了两件大事! 结婚、生娃!
经历差不多就这些,平平无奇但也还算丰富。从网易到现在我一直都有一个迷茫的点,我努力的方向到底应该是什么,本来去网易时抱着蛮大的希望的,以为在网易可以钻精到一个技术领域,以后就指着这个吃饭了,但是结果来看是我天真了,想象和现实并不是一回事。
技术说到底只是工具,深入细节里恐怕很难拿到回报。现在的想法是可以去跟更多的朋友链接,用自己的技术能力去解决别人实际问题会让我很开心,也许这个技术是很简单的。在没有需求的情况下,我很难提起兴趣去学习一些所谓“深入”的技术,我更偏向解决具体的问题。
就比如我给学生们搭建了一个oj平台,这样我就可以不用批改作业了,还能时不时给学生举办一下编程比赛。虽然就是拿别人开源项目部署了一下,但是真是得到了很多快乐。
后续还准备改改源码,在系统里集成人脸考勤的功能,从而解决学生冒名签到的问题~
当数字游民的目标
当数字游民是我好多年前都想要达成的目标,想更好的陪伴家人,想去优美的地方旅居,工作内容少一些形式主义(没错,我在吐槽现在的工作内容),更加有趣。
我的对自己技术的认知:
- 编程语言:golang、python
- 数据结构和算法还算不错,也在leetcode上刷了200+的题,不过很多现在已经忘了。准备有时间刷一刷,还可以顺便给学生讲课的时候用。
- 深度使用过的组件:hbase、mongodb、kafka、gin, docker, docker-swarm集群等
- 分布式系统的理论基础还不错。曾经完成过MIT6.824分布式系统的课程和lab,也设计过分布式的爬虫系统。
- 设计系统还是蛮好的,这个很难良好的讲出来,这个自信主要来源之前的工作经历。看过一本书《微服务设计》,这本书除了一些具体技术内容,对于系统设计上的干货貌似就两句话就讲完了:高内聚、低耦合。也就是系统边界的划分非常重要。良好的模块化+良好的系统接口 = 设计良好的系统。 设计系统过程中只要朝这个目标去努力,效果都蛮不错的。极客时间上许式伟的架构设计的课程,差不多也是这样的观点。
- 追求高质量的代码。认为快就是慢,欲速则不达。
接下来做什么
具体该怎么接近数字游民的目标其实我还不是太清楚,目前来看就是总得做点什么,准备写写在电鸭多写电文章和分享,希望可以和家人们多多交流。
也特别希望得到过来人的建议,万分感谢~
分享主题:
经历/经验
城市:
广州
这个观点我很赞同
跟更多的朋友链接,用自己的技术能力去解决别人实际问题会让我很开心,也许这个技术是很简单的。在没有需求的情况下,我很难提起兴趣去学习一些所谓“深入”的技术,我更偏向解决具体的问题。
数字游民约等于流民,而且里面大佬如云。
我也喜欢用自动化的思维去降维解决其他人的问题,但当我真的看到那些大佬从很年轻的时候就开始十年如一日的解决一些行业难题时,我才发现我的热爱不及他们的万分之一。
找到具体行业解决具体问题再来谈游民吧。
大佬有什么建议吗?我现在一直在找方向。
方向不一大堆,又是AI自动化又是啥的,适不适合你做了才知道。
另外我建议不要在从0到1沉浸过多,这个世界有无数的人可以极其快速的从0到1起一个项目,但没几个人能从1-100。
而且自身会开发永远不是一个项目最需要的能力
现在确实有一些想法准备搞一搞,把身边遇到的问题自动化。
大佬相当可以了,我最近都很迷茫。干java五年了,基本上都是混,这两年想要努力了, 但是手头项目基本上等于增删改查,高并发,多级缓存什么的压根用不上,reids,kafka什么的学了不用很快就忘。想要兼职做做项目练练手吧,还得要求会高并发,同时学历也不够。真不知道怎么走接下来的路了
即便是大厂也很少用到高并发什么的,我觉得程序员很多,包括我自己都被这些词迷惑了。
有段时间觉的什么高并发、分布式很高端,底层调优很高端。所谓高并发,背背八股文就有解决方案了,没多复杂。
程序员更难的是面向用户和市场。
道理是这么个道理,但是现在的面试,都考这些,平时是真的不用,但是偏偏就是要求有经验,会都不行,很郁闷
可以聊聊 联系方式是邮箱 没有微信吗
邮箱的前缀就是我的微信,vx已经写上了。
你要是一直呆在大疆估计都财务自由了
我不在大疆,是另外一个做植保的。
做自己的“太阳神尼卡”
哈哈哈哈哈哈
去大专院校上课需要硕士学历吧
看具体学校
大佬,你的经历很丰富啊,我这个小白要向你学习才行