过去
分2个阶段
13年8月进陌陌之前
- 2008毕业参加工作,在一个个体户团队干了半年,个体户是很资深的技术,出来创业,教了好多东西。年底好像是金融危机,煤老板不投资了,大家就散了
- 09年-12年 还是个体户,一开始还2个开发,后来就剩我一个,从php,前端,服务器运维啥都干。
- 12年初 总算去了个正规公司了,负责一个模块的开发,从数据库设计到写php; 然后那里的前端不行,按设计图搞出来的页面效果,很多js都是网上找的,我还得一个个往页面里整合,而且好多浏览器兼容问题。最后下定决心,坚决不搞前端了,要往server端发展
- 12年底 又进了朋友的创业公司 用erlang专门写业务api,加上写数据库运维的活
- 13年中这个创业公司又挂了,歇了2个月
- 结果就是接触的东西到挺多,但是没一个深入; 加上自己也没系统学过计算机,人虽不笨,学习新知识也算快,但技术确实没什么可说的,去大点的公司面试,系统,数据结构和算法,网络都基本答不出所以然来
- 还有印象很深的php 职位描述 大容量高负载的业务经验,也完全没有啊
- 总之没任何职业规划,整个人从来都是悲观的,没自信,随波逐流,让干啥就干啥,干完就完事,既不总结也不深究
来了陌陌后
- 学到了很多东西,最起码api的吞吐量够,也查过很多疑难问题,后期也慢慢注意总结
- 而且也觉得这样下去是不行的,印象深的是招人时领导说过 “超过30岁的人就不要了”,还有 “我们这里主要是做业务,对技术水平要求不高”
- 从这2句话可以推断出,如果我不提高水平,争取到对技术要求更高的职位,那么很快我出去找工作就要被“年龄歧视” 了
如何学习的问题
主要是四大块 按学习优先级排
网络
这块相对来说是最容易跟工作内容发生联系,必须学好
- unix网络编程可以开始钻研了,一遍看不会就多看几遍
- 重点是tcp,应用层的协议都是基于这个的像http,redis
计算机系统和C
这块主要涉及操作系统底层,进程是怎么跑的,如何调用系统底层接口,进程之间互相怎么通信;
- 这个不学好,没法做深入研究,比如redis,nginx,php的源码,也就搞清楚他们是怎么工作的
- 停留在使用层面是不行的,用一个东西最好是能研究源码,不然这个东西出了疑难问题,靠google虽然能解决大部分,实在解决不了还能从使用姿势进行权变。但这2个不是能100%保证成功的
算法和数据结构
我过去所做的工作,还真不太好想出有实际联系的,但是懂这方面我觉得还有很有用的,也大概看过些书,很多具体的事情结合这个算法实现是很有道理的; 要成为一个高手,以后肯定会用到
语言
接触过的语言也好几个了,但重点我觉得不是这个,据我接触过的技术牛逼的人,前面3个学好了,语言完全不是问题,都是随便找个基础教程看2周就能进行切换了
未来
- 所以就是好好学习, 然后做
基础架构
的工作; 做不了就做相对比较核心的技术人员,参与架构,给出合理意见,并有能力排查疑难杂症的