从理发店小弟到阿里P10大牛,一位高中学渣的“登天”之路
蚂蚁金服,可能是众多程序猿眼中梦寐以求的归宿,无数拿过数不清奖状的各个高校走出的学子精英都挤破头皮,只为能在蚂蚁占有一席之地。
蚂蚁金服里不乏各种深藏不露的大佬,到了那里才会深刻明白一山还有一山高这句话究竟是什么意思。
有这么一位大佬,年纪轻轻就评为全球35位35岁以下科技创新青年,是不是觉得肯定是清华北大出来的少年天才?又或是耶鲁哈佛这种海归名校渡过金的高高在上之人?如果你有机会进入到这位大佬的团队,他会笑着对你说学霸你好,我是个学渣,我没上过大学。
没错,红雪,蚂蚁金服的资深研究员,带领着数百人的技术团队,他的经历用来拍一部励志电影也绰绰有余。
下面让我们一起听听红雪的故事。
最早的红雪,高中毕业之后没上大学,而是四处打零工,在路边修过自行车,也做过理发店小弟。就差一点成为了三和大神。后来他想学自考混文凭,结果连自考的考试都挂掉了。
看到这里,如果你身边有一个这样的人,你一定会觉得这个人资质愚笨,不会有什么大出息,或许就这样浑浑噩噩的过一辈子。
好在和大多数80后一样,那个年代的男生都喜欢电脑,不过红雪不是喜欢电脑游戏,他感兴趣的是硬件、板卡、内存条,空闲时分就帮同学组装电脑,要不就是学3D建模。有条件的时候还会学习各种编程书籍。
但要知道那个年代,程序员还远不如现在这样飞黄腾达,大多数人眼中的程序员就是不学无术之人,没什么大前途。
但是红雪没有放弃,03年毕业之后,他在西安找了一份工作,每个月能有1千多的盈余,全都花在了各种软件培训班上。或许编程对他来说,就是有种特别的吸引力。
但是无论红雪学的怎么样,往往他去面试的时候别人一看他的履历,甚至不考查一下他的技术能力直接就让他回家等消息。
这种情况一直到2007年,他收到了一份阿里的面试邀请。
直到今天,他和别人谈起当年时,仍对当时的情况仍记忆犹新:
从头到尾没有人来问过我有关学历的问题,也没有人问一些让人觉得不被尊重的问题,当时招聘专场有一句话让我热血沸腾If not me, who? If not now, when?
就像那句古话,英雄不问出处,等过了面试被录取到杭州报道,看着身边那些用塑料袋装了一堆毕业证书和等级认证的日后同事,红雪并没有感到畏惧没有感到自卑,同样的他看到了一些和他一样两手空空的人,比如当时一个叫阿玺的,也是个80后,今天已经是蚂蚁副CTO,阿里巴巴最年轻合伙人。
不由赞一句,阿里这种不拘一格招揽人才的行为,真是大气,国内能做到这一点的企业屈指可数,尤其时阿里的眼光,事后并没有给予世人嘲笑的机会,这些换成其他企业或许连个面试机会都没的人,现在无一不成为了阿里的骨干。
说白了,我们这一生,要找一个能够谋生的工作很容易,想找一家收入高的公司努力努力也能实现,但找到一个可以和一群非凡的人一起改变世界的舞台,真不多。
作家刘同说,腾不出时间学习的人,迟早会腾出时间来悲伤。
所有人前的光鲜亮丽,背后都是付出大量的努力和时间的结果,没有谁能突破这个法则。
这就是世界公平的地方,你吃过学习的苦,就会少吃生活的苦;你在上升的路上花的时间越多,人生越容易发光。
也许你现在正在因找工作而烦恼,或者因没有学习方向而迷茫,我可以分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名Android高级开发者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
主要包括阿里,以及字节跳动,腾讯,华为,小米,等一线互联网公司主流架构技术。如果你有需要,尽管拿走好了。
一、阿里P7级Android开发核心知识笔记【七大专题】:
1.高级UI,自定义View
UI这块知识是现今使用者最多的。当年火爆一时的Android入门培训,学会这小块知识就能随便找到不错的工作了。
不过很显然现在远远不够了,拒绝无休止的CV,亲自去项目实战,读源码,研究原理吧!
2.NDK模块开发
时至今日,短视频App可谓是如日中天,一片兴兴向荣。随着短视频的兴起,音视频开发也越来越受到重视,而且薪资水涨船高,以一线城市为例,音视频工程开发的薪资比Android应用层开发高出40%。
内容主要涉及以下几个方面:
- NDK 模块开发
- JNI 模块
- Native 开发工具
- Linux 编程
- 底层图片处理
- 音视频开发
- 机器学习
3.数据结构与算法
为什么要研究数据结构?
这是因为所有的程序本质上是对数据进行处理,如何高效的处理数据,这依赖于数据本身的结构(如类型(整型、浮点型等)、维数、是否为复杂类型(结构体类型、类类型)等)以及数据之间的逻辑关系(线性、非线性等)。
数据结构离不开算法,设计好的数据结构就是为了让算法顺利方便的实施。
4.Java进阶与内核原理
Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。
百分之百,大大小小所有公司,面试必问Java相关。
内容主要涉及以下几个方面:
- HashMap
- ArrayList
- LinkedList
- Hashset源码分析
- 内存模型
- 垃圾回收算法( JVM )
- 垃圾回收机制和调用 System.gc()的区别
- 类加载过程
- 反射
- 多线程和线程池
- 设计模式
- Java的泛型
等等.......
5.Flutter技术进阶
2019 年无疑是 Flutter 技术如火如荼发展的一年。
每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。
本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门
6.360度全方面性能调优
随着产品内容迭代,功能越来越复杂,UI页面也越来越丰富,也成为流畅运行的一种阻碍。综上所述,对APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。
1、设计思想与代码质量优化
2、程序性能优化
- 启动速度与执行效率优化
- 布局检测与优化
- 内存优化
- 耗电优化
- 网络传输与数据储存优化
- APK大小优化
3、开发效率优化
- 分布式版本控制系统Git
- 自动化构建系统Gradle
4、项目实战
- 启动速度
- 流畅度
- 抖音在APK包大小资源优化的实践
- 优酷响应式布局技术全解析
- 网络优化
- 手机淘宝双十一性能优化项目揭秘
- 高德APP全链路源码依赖分析
- 彻底干掉OOM的实战经验分享
- 微信Android终端内存优化实践
7.Framework精编内核解析
众所周知,Android是一个基于Linux实现的操作系统。但对于Linux内核来说,Android也仅仅只是一个运行在内核之上的应用程序,与其他运行在内核之上的应用程序没有任何区别。
所以Android也需要运行环境,需要Linux内核在启动完成后加载Android Framework运行所需要的资源。当Framework完成初始化后才能继续启动相应的APK应用程序。
主要内容包含:
- 深入解析Binder
- 深入解析Handler
- Dalvik VM 进程系统
- 深入解析 WMS
- PackagerManagerService
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
由于篇幅原因,以上完整学习笔记pdf如有需要,可以 点赞+评论 支持下我这个打工人,然后点击这里免费自取!
从理发店小弟到阿里P10大牛,一位高中学渣的“登天”之路的更多相关文章
- 干了这碗鸡汤:从理发店小弟到阿里P10技术大牛
1.引言 MIT TR 35(MIT Technology Review 35 Innovators Under 35)——“全球 35 位 35 岁以下科技创新青年”榜单,是全球最权威的青年科技创新 ...
- 阿里技术分享:阿里自研金融级数据库OceanBase的艰辛成长之路
本文原始内容由作者“阳振坤”整理发布于OceanBase技术公众号. 1.引言 OceanBase 是蚂蚁金服自研的分布式数据库,在其 9 年的发展历程里,从艰难上线到找不到业务场景濒临解散,最后在双 ...
- 如何安装NodeJS到阿里云Centos (64位版本V5-7)
如何安装NodeJS到阿里云Centos (64位版本V5-7) (Centos与Red Hat® Enterprise Linux® / RHEL, Fedora属于一类) 1) 安装v0.10版 ...
- 阿里数据库大牛的 MySQL 学习指南!
做后端的同学,总是绕不开MySQL. 毫无疑问,MySQL 是当下最流行的开源数据库.凭借强大的性能和易于使用性,它已被Google.Facebook.YouTube.百度.网易和新浪等大型互联网公司 ...
- 阿里P6大牛给予Java初学者的学习路线建议
Java学习这一部分是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要 ...
- 阿里P8Java大牛仅用46张图让你弄懂JVM的体系结构与GC调优。
本PPT从JVM体系结构概述.GC算法.Hotspot内存管理.Hotspot垃圾回收器.调优和监控工具六大方面进行讲述.图文并茂不生枯燥. 此PPT长达46页,全部展示篇幅过长,本文优先分享前十六页 ...
- 还不会springboot,阿里p8大牛一份385页pdf直接甩在脸上,给我啃
第一章 Java EE简介 Java EE 有相应的规范实现,包括但不限于: Web 支持 事务支持 消息服务 数据库持久层 Container JWS JAX-RS JNDI JAXP/JAXB J ...
- android大牛高焕堂最新力作-android架构师之路
android大牛高焕堂 个人介绍: Android专家顾问,台湾Android论坛主席,现任亚太地区Android技术大会主席,台湾Android领域框架开发联盟总架构师.发表100多篇Androi ...
- 阿里云CentOS7 64位安装jdk8和mysql5.6.43及远程连接mysql
安装mysql 先查看系统是否安装有mysql rpm -qa | grep mysql 返回空值说明没有,有的话先删除 yum remove mysql 下载mysql的repo源 wget htt ...
随机推荐
- .Net Core 常用开发工具(IDE和运行时、Visual Studio插件、Visual Studio Code插件)
IDE和运行时 组件名 描述 可选版本 推荐版本 Visual Studio Community 社区免费版 For Visual Studio 2017 For Visual Studio 2019 ...
- 在windows的情况下面右键添加vim
1, 首先打开注册表,然后打开下面路径: HKEY_CLASSES_ROOT\*\Shell 2, 右键新建项(也就是右键的文字): 用vim编辑 3, 在"用vim编辑"下面再 ...
- POJ 3087 Shuffle'm Up 模拟,看着不像搜索啊
题意:给定s1,s1两副扑克,顺序从下到上.依次将s2,s1的扑克一张一张混合.例如s1,ABC; s2,DEF. 则第一次混合后为DAEBFC. 然后令前半段为s1, 后半段为s2. 如果可以变换成 ...
- centos 8.3安装 一键安装部署gitlab
安装和配置gitlab必须的依赖包 [root@gitlabdev ~]#dnf install -y curl policycoreutils openssh-server perl 设置开机自启s ...
- AcWing 1290. 越狱
监狱有连续编号为1~n的n个房间,每个房间关押一个犯人.有 M种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人信仰的宗教相同,就可能发生越狱.求有多少种状态可能发生越狱. #include< ...
- 案例分享:Qt西门子机床人机界面以及数据看板定制(西门子通讯,mysql数据库,生产信息,参数信息,信息化看板,权限控制,播放器,二维图表,参数调试界面)
若该文为原创文章,转载请注明原文出处本文章博客地址:https://blog.csdn.net/qq21497936/article/details/118685521 长期持续带来更多项目与技术分享 ...
- Docker:PostgreSQL-11配置数据持久化
卷的原理图: 主机中的本地目录作为Docker容器内的持久存储卷装载,以便在主机和Docker容器之间共享数据.如果主机希望访问或定期备份在Docker容器内运行的DB服务器写入文件夹的数据或数据库, ...
- linux学习之路第三天
开机,重启和用户登陆注销 关机&重启命令 shutdown shutdown -h now :表示立即关机 shutdown -h 1 :表示一分钟后关机 shutdown -r now :表 ...
- bugku--cookie欺骗
打开题目一看,是一串的东西,再看了一下filename发现不对劲了,明显是base64编码,拿去解码一下, 发现是这个,说明是filename,是需要解析的哪个文件名,把index.php编码一下,试 ...
- maevn的nexus私库搭建
使用nexus搭建maven仓库(本地私服) 前言:我们在使用maven的时候,对于项目所依赖的jar包,maven默认会在中央仓库下载jar包,到本地的磁盘目录(如果没有配置则是用户目录下/.m2/ ...