今天先是查了下Android、Java、Python、算法的招聘,薪水上相差不大。哪门技术性的工作都一样,看着入门简单,深入学习了都会发现要学的越来越多,而我却一直胆怯,封闭自己,迟迟没有迈出去。
另外就是我观念上的错误,一直推崇技术,可实际上哪有那么多技术难题,很多公司有个能运行能解决小问题的产品就行了。我曾在一个上市公司呆过,我看不上它的福利待遇,嫌弃它僵化的制度,鄙视他啥也不懂得产品经理,可它是上市公司,承接着许多政府企事业单位的大型项目。我那个满是问题的第一次设计的项目,还在运行,还在给它盈利。
从本质上说,大部分程序员和外面开挖掘机的没啥区别,大多数“科技公司”顶多算是“实用科技的公司”。真正的技术难题操作系统、编译器、虚拟机、运行时环境、框架等等,已经被那些造轮子的先驱们解决了,我们只是使用在使用它们。
看清这些,是时候选择一门,尽快学学然后工作了
Android,大概需要深入掌握的(知乎上查的)
1、第三方类库,不能只会用,要知道内部原理,如imageloder,lru缓存算法,linkedhashmap
2、Java功底,arraylist怎么实现的,map怎么实现的,hashmap和arraymap适用场景,volatile和synchronized有什么区别,多线程如何同步
3、虚拟机,性能优化,内存泄漏和溢出,怎么分析堆内存,怎么做内存管理
4、安卓基础,线程通信,进程通信,framework层,内核
5、网络通信,tcp/udp协议,HTTP协议
Python爬虫