大约 3年以前, 我发布了 我是如何从零开始自学Android到一万月薪的,收到了很多小伙伴的反馈,如今时间过的太快,此时再次分享我是如何从月薪 10K 到月薪 20K 的,话说我觉得这个系列值得继续分享下去,因为这样我能拿到 30K,40K 的薪水啊哈哈,达到 10K 用了一年多时间,20K 用了又用了2年时间, 实话实说这个水平在互联网行业处于中等水平,最多中等偏上一点,但是还是有很多小伙伴没有突破 20K, 在这个过程中我有很多的心得, 希望对你有帮助。
系统化的专业知识
我是做安卓开发的,在步入 10K 的时候处于会用开源项目,API 熟练使用的程度,日常开发基本没问题,但是从未考虑过性能,用户体验之类的,并且比较严重的是上线之后很容易出现 bug ,每天加班却总是觉得自己知识不够深入,遇到比较难得问题不知道从何入手,我的执行力还是比较不错的,所以每天搜索着安卓高级开发必备技术,那么这个过程我觉得极其重要,知识就放在那里,怎么入手和学什么并且如何开始学其实是非常关键的,这里分享几个比较不错的学习方法:
- 可以通过查看知名互联网公司面试要求学习对应知识
- 务必看一面谷歌应用开发官方文档
- 分析流行开源项目
- 结实业界牛人,寻求专业的指导(这里我推荐 任玉刚 的安卓学习路线, 大家可以自行搜索)
- 可以带着问题去看源码, 比如 Activity 是如何启动的
- 学习一个模块的知识后务必 自我总结, 必须加粗显示一下,通过自我总结能够验证自己是不是真正的理解了知识
就像我们上学的时候只会解决一部分模块的问题能拿到高分吗?明显不能! 只有系统化的掌握了专业知识,才能从整体考虑问题。那么知识技能都掌握了就 OK 了么?我认为远远不是,你能够拿到的薪水回报在于你能创造的价值。
必备的软技能
一个人的力量终究是微小的,在系统掌握的专业知识之后软技能决定了成长的天花板,有的同学说也有一部分人只靠技术就能财富自由,确实有一部分技术天才,名牌大学硕士毕业,博士毕业,掌握着专利技术,加入到了门槛比较高人工智能行列,但是大部分人达不到这样,我是科班出身本科毕业,我自己很清楚如果我只研究技术不断的提升学习也能混得不错, 但是你怎么和博士们比,既然单个维度比不过,那么很明显懂技术的产品比只懂产品更有竞争力,那么决定我们天花板的软技能都包括什么:
从小到大都在听的要有沟通能力:, 我认为沟通能力不是能说,能够朗朗上口的是背诗能力!能够听懂别人在表达什么以及能够用最剪短的语言描述自己想表达的,我认为这是沟通能力,这其中包括对问题的抽象能力,提问也是需要艺术的,想象一下当你有问题想要问周围的技术牛人时,用最短时间的描述把问题讲清楚,大牛其实都是很忙的,你描述的时间短下次问问题人家才会更加乐于给你解答,所以如果刚遇到问题没有经过自己详细的分析和查询就直接去问别人,很容易造成别人的反感,其次除了对问题的抽象能力之外还需要会听别人的需求,这需要在平时工作和处理事情过程当中有大量的思考,遇到问题或者解决了一个问题之后要不断的尝试是否有更好的解决方案,很多时候我们工作内容都是一个具体的需求,换句话说是一个小事情,不是架构之类的,但是请记住能把一件小事的细节做好其实是非常难的,在我理解这些的时候薪资是有明显的涨幅的, 因为我不仅能够完成自身的开发任务,也能够用简短的话语回答同事的问题,包括技术上和产品上的,这使得和同事的相处非常的舒服,工作进行的非常顺利
做好每一件小事: 我把这个放到软技能里面,因为我觉得大部分是一个态度的问题,大家同样都在做需求开发,可能你还加班的比所有人都晚,但是为什么年底时候绩效都差不多,甚至比别人还低呢,相信没有公司按照加班多少来发薪水的,领导只在乎结果,为什么要做好每一件小事,同样是在做需求的排期开发,你是否能最大限度细化工作量?能否考虑功能点可能带来的风险问题?你发给领导的东西看上去是否相对美观,能够清晰的看出你做的是什么?要学会站在别人的角度看待问题,别人看到你发给他的东西的时候是什么样的感觉?举一个我自身的例子,我目前在所在团队主要负责的是性能优化,目前我入职了半年多,刚开始也是开发需求,性能优化是今年我们产品的重点,主要由我负责来做,那么为什么领导把今年最重要的工作交给我来做,我觉得我和其他同事同样在做需求开发,实际上差别不大,但是我真的在尽力把每一件小事做到最好,具体说几点:
- 在横向跨部门合作开发的时候每次沟通我都会通过 1,2,3 点明确的罗列我们要做的事情,增加了沟通效率,做的不够细化很容易造成大家一直讨论但是一下午也没有任何结论
- 提前做好功课,大家可能也经常看到产品和程序员水火不相容的故事,想要产品向你预想的方向去走,那么你就必须提前调研好你做的事情,并且思考相应的解决方案以及产品经理可能提出的问题,我们该怎么回答,这样才能和产品经理一较高下
- 时刻思考着当前项目的难点,有一些小伙伴说自己每天也在不断的写代码开发,但是又好像也没做出什么,要求涨薪或者晋升的时候也没有什么可说的,在我看来是因为需求都是领导或者是产品来让你做的,其实你自己也可以提出需求,但是一定不要只提出问题,不要做一直抛出问题的人,要有对应的解决方案以及收益,其实就像一个商业计划书,提出问题-提出解决方案-产生收益,这样领导会很大概率把这个事情交给你来做,做这个需求的时候继续想产品下一个问题和难点,这样持续下去工作都是按照你自己的设想走,想象一下你每天在解决自己提出的问题,这样的工作热情不言而喻把
其实做到以上我认为高薪只是时间的问题,除了硬件和软件条件之外我还想分享一点人际交往上的感悟
人际交往中的细节
这方面都是我自己平时的一点感悟,希望对大家有帮助:
- 每个人每天都可能有烦心的事情,但不要一直传播负能量给周围的人
- 不要随口就吐槽任何人,尤其是同事
- 不要随意打断别人的表述,等别人说完你再说
- 在开会或者是公司聚会的时候不要随意接话,会让人很不舒服
- 在和非技术人员沟通的时候尽量不用技术术语,要让比人明白你在说什么
相信大家明显的发现在我写 10K 月薪文章的时候谈的更多的是如何去提升自己的技术,但是从 10K 到 20K 的时候写的更多是学习的方法以及其他的能力上,因为在月薪达到 10K 的时候我认为已经具备了自学技术的能力,如果想要进一步提升需要的是学习方法以及职场思维,那么我们除了提高每个月的薪水就没有其他事情可以研究了么,当然不是!我尝试过自己开发产品并且发布到应用市场,并且赚到了美刀!很多程序员想有自己的副业,我认为最好的副业就是自己开发一个产品给全世界的人使用,因为用自己的技术开发产品本身就能提升自己的技术,可以说是相辅相成,时间越久做的越好, 我把我的从零到一的开发完整产品的经历分享到了我的公众号里,我会讲述我是如何从零到一开发一个 APP 并且发布到应用市场赚到美元的历程,如果你感兴趣可以微信扫描下方二维码
关注我的 Google Play 独立开发公众号
通过从零到一在 Google Play 开发出下载量 300万 APP 的经历,我将把很多精彩的故事分享到公众号,扫描下方二维码和我一起开发 APP 赚美元吧!