这个是我在逛知乎的时候发现的一个帖子,在这里小小的整理了一下,收集了一些评论,然后我分享出来,希望对自己还有同行有所帮助。
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
链接:http://www.zhihu.com/question/28822607/answer/42229866
来源:知乎
以下仅仅是个人意见哦,经供参考。别喷我哦= =
--------------------------------------------------正文-------------------------------------------------------
首先要纠正你的一个理解上的偏差,5K和10K的差距真的不是你懂得技术的多与少的区别,真正能够让你在一大堆CS毕业生中脱颖而出的,是你自己的硬实力,也就是说,是你的发展潜力。
首先和你说说我毕业那年的整体情况吧(2014年),我们那里有个比较大的外包公司X(我还是把它匿了吧免得被喷= = ),进去研发岗位的基本工资是4K左右,因为是外包公司,必不可少的要接触到安卓的项目,同时,2014年BAT移动端研发的普遍薪水大概在11K到13K左右,但是,你在X也好,你在BAT也好,在你一开始进入他们的安卓开发团队,你用到的东西,你做的模块的复杂程度,其实大体上是很接近的。所以对于安卓开发本身的技术要求,作为一个毕业生来说大概也就是那么一回事吧。但是为什么排除了地域因素之后,你的paid还差了那么多呢。
原因就是BAT看中的是你的基本能力和发展潜力,我当时在网易的笔试中,遇到了看安卓GC实时LOG的题目,我在腾讯的笔试题中,看到了铺天盖地的位运算,我在百度的笔试题中,看到了要求你改良的快速排序和一些编译原理相关的题目。
说到这里,稍微总结一下上面的东西,你想要在安卓开发这块看上去不是特别复杂(注意,只是看上去)的技术领域中获得比90%的毕业生人都要高的paid的时候,你要做的其实就只有一件事: 你的基础要比90%的毕业生好很多
----------------------------------一些个人意见,仅供参考 ------------------------------------------
1.数据结构与算法
我记得有个老师和我说过,这个世界上一切的一切,都是数据和数据之间不断的交互而组成的,算法是个敲门砖,是公司在看到你们的项目经验都不是特别多的时候,衡量你们个人能力最好的办法,把 Introduction 2 algorithm 这本书吃透了,你也基本上稳了。
2.计算机网络
做安卓App离不开它,没这东西就没有微信了
3. Thinking in JAVA
这是我大学最喜欢的一本书,同样的一个功能,两个能力不同的程序员都能实现,但是你能比他更加稳定更加美
4. Software architecture & Design Patterns
说句难听点的,你以后升值加薪就靠这个了么么哒
Stay Zhang:五年前,学了3个月j2ee,7天Android,然后就工作了,当年还是物理学毕业,大四才学的java什么的。然后一直就顺风顺水,到了年薪30w。当然我不是来炫耀的。这本就不是问题,30岁之前,挣的钱都不叫钱,因为既买不了房车,也娶不到菇凉。
关键的是你一两年后是否还拿5k或1w。
相信我,你不会在第一家公司呆上好几年,只要学好技术,到时跳个槽,自然翻好几倍。所以别纠结5k和1w的区别。
你应该更多关注,如何面上第一家公司,给你这样一个机会去到这个行业里。只有置身于这个环境里才知道要如何学习,学些什么。这样有效的多。
知乎用户,CSU 本科 / UCAS 小硕 / 码畜 / 王博博 :从技术角度:
5k 就是你会复制,粘贴,改变量名,最多能把需要的组件嵌入自己的项目,然后 run 起来就可以了。
10k 就是你能写出让别人复制,粘贴的代码和组件了。
5k 到 10k 需要哪些技术呢?这个不好说,取决于你现在水平如何,你也没法精确地量化某项技术给你带来的价值(薪酬的增长),只要在你的领域(Android 开发)花时间和精力钻研,其实都是在锦上添花。捷径也有——别人不会的,你会;别人会的,你做得更好。
匿名用户:
他们说的是真的,本人自学半年没实际项目经验,在某二线城市拿了一个offer7K,实际上我提的要求是5-7K。
另,在各大招聘网写下求职Android的简历,每天刷新一下,应该就有足够的面试邀请了。
再另,本人非计算机专业,但在校用过c和mfc,计算机三级过机试不能过笔试。不过也通过第一份工作忘干净了。总之,和零基础差不多吧。。