热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

六年Android从迷茫到大牛的成长之路,不忘初心,方得始终

六年Android从迷茫到大牛的成长之路,不忘初心,方得始终-前言偶然在论坛上面刷到了一篇六年前一位Android小白的求助帖,本以为这是一篇平平无奇的求助帖子,没有什么新意,可

前言

偶然在论坛上面刷到了一篇六年前一位Android小白的求助帖,本以为这是一篇平平无奇的求助帖子,没有什么新意,可当下实在是没有事情做,便刷了下去。

不曾想,刷了一半却出现了楼主的最新消息,解释了六年之中,他究竟做了什么,做的怎么样,也不枉费六年前为他热心解惑的Android同行,在这里给大家分享一下,与君共勉。

为了方便大家阅读,接下来的叙述皆以第一人称叙述

六年前

我是14年从安徽的一所二本学校毕业的, 由于喜欢Android开发,毕业后第一份是Android开发的工作,月薪3.5K,但没有人带但公司给我自学的机会。

后来随着自己经验慢慢的提升,来上海顺利的拿到了月薪7K的offer,但由于我做的项目突然停掉,我离开了这家公司。

再次找工作的时候我非常谨慎,工资根本不只是我想要的,本准备好好复习一段时间,边找边学习,争取进入自己理想的公司。可是一家公司决定给月薪15k我就答应了。入职发现这家公司的代码和项目管理都不规范,我不想在这么垃圾的代码上去完善功能,而且担心什么都学不到,甚至都有可能把自己的编码习惯带的不规范,我想辞职后学习边找工作,但是如果辞职之后去不了想去的公司,再找这样的公司估计也都没有机会了.

希望前辈们给一些建议。

再说说我自己:

当初毕业的时候,给自己定下了两个目标1.三年内月薪过万,2.三年内至少参与一款百万用户的APP。现在一年不到第一个目标已经实现了,可是第二个目标却遥不可及。我希望自己有一天能写出优秀的代码,因为喜欢Android,所以我觉得工作非常开心,可是对于我来说想找一家有大牛的团队的公司就那么难吗?我还是想试试...

此为六年前的提问

高赞回答

等风口过了,该掉下来的猪都会掉下来。

现在老板给你高工资只是因为人才缺口,这由供需关系决定,但当做Android的人越来越多了,那个时候你的核心竞争力是什么?或者有一天Android不再热门了呢?

作为一个工作不到一年的新人,现在还不是谈收获的阶段,你需要的是通过技术、视野、人脉的积累,为你今后的发展铺平道路。本人不才,但现在出去找一份各方面都比较满意的工作还是问题不大,我的Leader现在差不多每天都接电话让他出去当Partner。你现在的选择不够多,当然是因为你的能力还不够强,作为个人事业的规划至少要做3~5年,不应该让这15K束缚你。

但我认为不要这么轻易说辞职,如果公司处于上升期,业务需求旺盛,那对你的发展自然是有极大的好处,后期继续扩张你作为最早的Android开发各方面都会考虑你,包括技术路线,招聘,待遇等都会参考你的意见,而且说实话代码混乱是每个公司都有的事情,这不妨碍你在技术上的提升。不过我还是认为刚入行的程序员应该去大公司看一看,较为规范的流程,深厚的技术积累,能力很强的同事,推着你往前走的项目需求,都会使新人获得非常快速的成长。

六年后

大家好,我是题主。六年过去了,感谢当年回答这个问题的朋友们,今天又看了一遍大家的回答,看到了很多熟悉的面孔。现在的我已经不再迷茫,离心中的目标也越来越近。我觉得是时候重新问到这个问题,跟大家一起 review 一下我过去的六年。

时间回到六年前我提出这个问题的晚上:

当天晚上我眼含热泪的看完所有回答,我决定留在这家公司工作的同时不放弃寻找更好的机会。从那天之后,我开始在进行需求开发同时,把整个项目重构,重新命名每个中文拼音变量名,抽离重复代码,引入开源库。由于整个项目只有自己负责,我可以引入很多当时有名的开源项目,就这样我开始大量学习开源项目,读开源项目代码。同时在每天回家之后开始写自己的开源项目,经常不知不觉就写到凌晨2点。就这样过了4个月左右,我把我做的开源项目开源了,我在微博和 QQ 群里做了不少推广,加上项目

本身也比较出色,项目 star 数迅速达到1000+,甚至上了好几天的trending 榜。就在这个时候,我关注了很久的技术博主, @stormzhang 在微博上发布了招聘信息,我当晚就发去了一封求职邮件,第二天我接到了张哥的电话面试,电话面试之后张哥通知我需要再去公司当面进行面试,通过了基本会当场确定 offer。就这样我开始了在薄荷的工作,直属 leader 就是张哥。

2015年10月

我入职了薄荷,就这样我完成了提问里制定的三个目标。这10个月的经历我至今回想起来都觉得不可思议。薄荷是我第一家加入的 Android 工程师团队大于5个人的公司。我很珍惜跟优秀的工程师一起工作的机会,我至今还记得张哥在第一次给我review代码的时候,告诉我()与{}之间要加空格,不要在两个方法之间留大于一行的空白,不要在类的最后留多余的空间。这些代码风格我一直遵守至今。在薄荷我向每一位工程师学习,思考他们的优缺点,我慢慢的可以分别出烂代码与好代码,我开始设计项目架构,我开始更多的参与产品与业务,提出很多自己想法。我开始能写出高质量的技术文章,甚至可以去公开分享会上做一场主题分享。在薄荷的我技术和能力都有了飞速的增长,同时我也参与了不少开源项目,还做了一个Android Studio 都有了飞速的增长,同时我也参与了不少开源项目,还做了一个Android Studio 职支付宝的时候起到了关键性的作用。我还在薄荷遇到了我现在的老婆,并且在她的支持下我开始向更大的目标迈进。

2017年

随着在薄荷工作的深入,我给自己定制了新的目标,那就是要参与上亿人使用的国民级 APP 开发。17年中旬的时候我跟张哥说了我目标,张哥虽然很不希望我离开,但仍然非常支持我,告诉我想去什么公司他都可以找人推荐,我说我想试试支付宝,就这样张哥帮我内推到了支付宝。

令我想不到的是,我在支付宝的面试流程非常顺利,在经历了5轮面试之后我收到了支付宝 P6 的 offer,工作地杭州,2017年10月我从上海去了杭州,入职了支付宝承载业务量最大最核心之一的 Hybrid 容器组。

刚入职支付宝的时候,我发现公司业务迭代非常快。在最初的时间里我几乎每天都是11点之后下班,这里的代码量很大,业务很复杂。我利用很多业余时间去熟悉代码,利用中午和晚上和同事一起吃饭的时间聊业务,聊公司文化。在支付宝我学习到了中国顶级的互联网公司开发产品的流程与方式。学习到了每天服务上亿用户,执行几百亿次的代码应该如何编写,懂得了在业务驱动下动态化框架是如何演进的。真真正正的成为了一名高级开发工程师。

2018年8月

由于家庭的原因,我从杭州回到上海工作。之后的三年在我跟我老婆的一起努力下,我们买房,装修,买车。几乎把人生中的大事都经历的差不多了。随着收入的增加,我开始学习投资,赶上这两年资本市场的表现不错,也赚了一点钱。虽然还没达到财务自由,不过基本上未来的生活也不必太担心了。

这就是我所经历的六年。我相信现在也许有更多当年的我正在迷茫,觉得压力越来越大。当下确实会比之前更难一些。但是要知道在15年的时候,高房价,找工作难也都是一直存在的问题。希望你们一定不要躺平,年轻就是最大的资本,努力向自己的目标迈进吧!

结语

每个人都有迷茫的时候,这并不丢人,看不清自己今后的道路也不丢人,真正让人感到可惜的是因为一时的迷茫,而自甘堕落,互联网发展至今,物欲横流,正是因为发展的太快,而出现了一些无法避免的问题。

大环境就是这个样子,游戏,短视频,社交零距离等一系列的活动让人没有精力去提升自己,这就是差距的关键。

所以,在这里我给大家分享一波我自己整理的《从Android小白到Android架构师的进阶笔记》希望能帮助到用心学技术的朋友。

点击下方蓝色字体即可提取,该地址为Github项目地址

Github

 架构师筑基必备技能

JAVA知识要点:
1、 Java序列化、泛型与反射
2、虚拟机底层原理
3、Android内存原理
4、 Java高级并发原理详解
5、 编译时技术掌握与实战
6、JDK高级动态代理
7、高级数据结构与算法
8、 Java IO操作
9、
。。。。

Android R FrameWork源码与UI

知识要点:
1、 FrameWork源码解析(SDK 30)
2、Android常用组件深入解析
3、JetPack全家桶
4、Android R新特性解析
。。。。。

大厂内部APP调优方案

1、 APP基础优化
2、APP深度优化
3、开发焦点问题优化
4、编程效率优化
5、项目实战
抖音在APK包大小资源优化的实践
优酷响应式布局技术全解析
网络优化
手机淘宝双十一性能优化项目揭秘
高德APP全链路源码依赖分析
彻底干掉OOM的实战经验分享
微信Android终端内存优化实践

架构

本篇知识要点:
1、架构师设计思想篇
2、 手淘全套架构设计与实现
3、 开源框架
4、OKHttp网络框架
5、一线大厂核心框架剖析与实现

NDK模块开发(音视频系列)

本篇知识要点:
1、NDK开发之C/C++入门
2、JNI模块开发
3、Linux编程
4、底层图片处理
5、音视频开发
6、机器学习

Flutter

本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门

微信小程序开发

本篇知识要点:
1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战

有需要上方资料的读者可点击这里,免费获得,点这里免费获得!!!

总结

从出生开始,我们就被打上了标签,这个是不能选择的,我们出身之后的所有努力都是为了撕下这个标签,不说实现阶级跨越,只求能让自己生活的更加舒适,同是Android开发,为什么有的人能年薪80W,有的人却在为孩子或者生活最基本的需求而烦恼,这就是差距,还是后天形成的差距。

那个会个UI啥的就能走遍天下的时代早已不在了,时代在进步,如果你还是那个一年工作经验用五年的程序员,那么别人的美好生活,你会亲眼见证,但是和你无关。


推荐阅读
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 美团Android 岗3次挂了,这次终于成功拿下!
    美团Android岗3次挂了,这次终于成功拿下!-面试流程自我介绍回答问题————(详情看下面的攻略)前面会问你很多技术问题,从简单到难,直到问到你打不出来就会又问其他部分的,也是 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 20211101CleverTap参与度和分析工具功能平台学习/实践
    1.应用场景主要用于学习CleverTap的使用,该平台主要用于客户保留与参与平台.为客户提供价值.这里接触到的原因,是目前公司用到该平台的服务~2.学习操作 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • Android自定义控件绘图篇之Paint函数大汇总
    本文介绍了Android自定义控件绘图篇中的Paint函数大汇总,包括重置画笔、设置颜色、设置透明度、设置样式、设置宽度、设置抗锯齿等功能。通过学习这些函数,可以更好地掌握Paint的用法。 ... [详细]
  • 欢迎Follow我的GitHub,关注我的CSDN.应用本质上是一个apk包,即一个zip包,可以直接显示其中的内容.通过apk文件,我们可以获知apk的版本信息,so库和第三方 ... [详细]
  • 本篇文章给大家分享的是有关静态方法如何在Kotlin项目中实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话 ... [详细]
  • android之OkHttpClient通信OkHttpClient用法1:自定义缓存OkHttpClienthttpclientnewOkHttpClient.Builder() ... [详细]
  • 毕业设计做的项目,答辩完了,就共享出来。波尼音乐是一款开源Android在线音乐播放器。 ... [详细]
  • React Native集成支付宝支付的实现方法
    这篇文章主要介绍了React Native集成支付宝支付的实现现,ativeModules是JS代码调用原生模块的桥梁。所以,我们只需要在原生工程中集成支付宝和微信支付的sdk,然 ... [详细]
author-avatar
原野上的蚂蚁
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有