将计算机科学知识的基础打牢,我指的主要是数据结构和算法。
养成每星期至少解决3-4个代码片段的习惯,多刷或CareerCup(Leetcode是在线编程网站)上面的面试题。
完全没必要成为Java或Python等单一技术方面的大拿。多学一些没坏处。
我是一名已经工作了很多年年的java开发人员。我发现像clojure 、Python、Scala这样的函数式语言,绝对值得你花时间去钻研,它能拓宽你的技能和思维方式,让你在开发人员和面试者中脱颖而出。
不论听到什么样的新技术,比如大数据或机器学习,都一定要搞明白并实现概念验证。不要只是读读就算了,而是要非常清楚其中的基本原理。就像你必须通过案例研究并真正建造了一些东西,才能完全了解建筑学。
你要学会营销自己。如果你正在学习开放源代码,你就有责任将你的所学学以致用。建立你自己的github,构建更好的软件、共同账户、认真投稿。这一切都会令你的履历更加吸引眼球。
不要沉迷于任何一种技术。你也看到了,基于浏览器的桌面应用程序已经“失宠”,现在移动程序也正在这条路上徘徊,如果真有那么一天虚拟现实取代了移动程序的位置或其他功能,也都在我意料之中。所以,不要执着于任何技术,而是去学习市场上所有有价值的东西。我知道这个范围不小,不过这样的好习惯能够帮助你精通任何新生事物,你将会成为一个真正的具备快速学习能力的人。
多参加黑客马拉松和技术聚会。即便你什么都不懂也无所谓。你必须建立自己的社交圈子。你认识的人越多,最终获得好工作的概率就会越高。
即便不喜欢你的工作或是主管也不要做激烈的抗争。继续保持微笑、把事情做好,找到下家再说。记住,永远不要与人结怨。
多读多写,做个好码农。