博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android项目实例!从零开始系统化学Android,大牛最佳总结
阅读量:4151 次
发布时间:2019-05-25

本文共 2223 字,大约阅读时间需要 7 分钟。

前段时间有人问我:「你是怎么成为一名软件架构师的?」我们就此探讨了必备技能、经验,以及储备相关知识所需的时间和精力。除此之外,我也回顾了自己走过的路、使用或尝试过的技术,以及我从那些五花八门的工作中学到的东西。

一丶岗位职责

首先我们先看一下岗位职责

1、负责安卓移动平台开发工作

2.Android框架开发和维护,SDK开发

  1. 技术架构升级优化,提升业务研发效率

二丶岗位要求

1、3年以上Android客户端开发经验

2丶JAVA基础扎实,理解io、多线程、集合等基础框架,对JVM原理有一定的了解
3、掌握Android常用组件、框架、和技术的原理
4、精通Android底层framework,精通Android性能调优,熟悉Android源码
5、有强烈的责任心和团队精神,善于沟通和合作;能独立完成设计和编码

三丶关于简历如何突出来写

我觉得简历的作用就是让看简历的人能快速丶准确的捕捉到有用的信息,看到你的与众不同

1.who are you ?(你是谁?)

2.what did you do?(你做了什么?)
3.what do you stand out from(你有什么特别之处?)

重要突出这几天,其实就够了

3.1 内容

主要是包含了以下几个模块:

基本资料: 姓名、电话、邮箱、个人网站(GitHub)
工作经历: 公司名、在职时间、工作内容(简述负责、参与什么业务)
项目经历: 最重要的一点没有之一!展开描述
专业技能: 加分项还是减分项都有可能,慎重对待,展开描述
教育经历: 学校名、就读时间
其它: 简单描述任何你想让面试官知道的东西,比如社区影响力: GitHub 多少 Star、掘金等级 等等

项目经历对于开发来说是一个最重要的部分

3.2亮点

工作上: 这个项目的业务背景是什么,在业务上有什么比较牛逼的地方,推动了业务如何运行等等

技术实现上: 这个项目的整体技术实现思路是怎样的,项目中用了什么比较牛逼的技术,解决了什么比较困难的问题等等

千万不要写精通什么,除非你真的很牛逼,或者某项目中有个很牛逼的技术,但是不是你写的,但是你自己不是很了解。

好看的皮囊千篇一律,有趣的灵魂万里挑一

在日常业务中:

  • 这个项目做了什么牛逼的事情
  • 你在项目里做了什么牛逼的事情
  • 用了什么牛逼的技术解决了什么困难的问题

项目经历是一个很重要的部分,一定会细问,把自己的牛逼之处突出并且讲明白

3.3自己的专业技能

想拿到30-50K 当然要有相对的专业技能

JAVA基础扎实,理解io、多线程、集合等基础框架,对JVM原理有一定的了解
掌握Android常用组件、框架、和技术的原理
精通Android底层framework,精通Android性能调优,熟悉Android源码
热衷Android开发事业,精通SDK,热修复,性能优化等等

专业技能可能是加分项也可能是减分项,慎重对待

四丶面试复习路线图

我之前复习,大多都在20点以后,因为晚上比较能集中注意力,制定一个学习计划,切勿零散的复习,最好是系统的复习,才能胜却在握

主要内容如下:

  • BAT的面试题目相关
  • 性能优化相关相关
  • 多线程相关
  • Java相关
  • 源码解析相关
  • 网络编程相关
  • 算法合集相关
  • 数据结构相关
  • 设计模式相关
  • 一些小知识的总结

4.1丶BAT相关面试点:
  • 1.Binder通信原理和机制
  • 2.多进程通信
  • 3.组件化.插件化的区别以及如何选择
  • 4.插件化的理解
  • 5.热修复原理
  • 6.对于AMS的认识
  • 7.AOP 与OOP 有什么区别, AOP 的原理
  • 8.QQ换肤原理以及大致思想
  • 9.Android虚拟机
  • 10.图片压缩的具体步骤和应用
  • 11.反编译和加密如何进行
  • 12.序列化和反序列化的原理
  • 13.Handler的原理和认识

4.2丶算法合集笔记

  • 1.Hash
  • 2.最小生成树算法
  • 3.最短路径算法
  • 4.KMP算法
  • 5.查找算法
  • 6.排序算法
4.3丶线程.多线程.线程池和面试中的小问题
  • 1.开启线程的方式
  • 2.run()和 start()方法区别
  • 3.如何控制某个方法允许并发访问线程的个数?
  • 4.在 Java 中 wait 和 seelp 方法的不同
  • 5.导致线程阻塞的原因
  • 6.线程如何关闭的思路?
  • 7.如何同步以及保证线程安全
  • 8.减少APK包的大小
  • 9.关于内存泄漏,内存抖动的优化以及解决方案
4.4丶小知识的清单
  • 1.面向对象和面向对象的区别
  • 2.Java和C++的区别
  • 3.面向对象的特征
  • 4.接口和抽象类的区别

最后

现在都说互联网寒冬,其实无非就是你上错了车,且穿的少(技能),要是你上对车,自身技术能力够强,公司换掉的代价大,怎么可能会被裁掉,都是淘汰末端的业务Curd而已!现如今市场上初级程序员泛滥,这套教程针对Android开发工程师1-6年的人员、正处于瓶颈期,想要年后突破自己涨薪的,进阶Android中高级、架构师对你更是如鱼得水,赶快领取吧!

上述【高清技术脑图】以及【配套的架构技术PDF】点击:即可获取!

为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀,而你是不是还在满足于现状内心在窃喜!

:即可获取!**

为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀,而你是不是还在满足于现状内心在窃喜!

Android架构师之路很漫长,一起共勉吧!

转载地址:http://eqati.baihongyu.com/

你可能感兴趣的文章
Linux 内核设备驱动之GPIO驱动之GPIO 框架初始化
查看>>
Linux 内核设备驱动之GPIO驱动之GPIO GPIO字符设备初始化
查看>>
Linux 内核设备驱动之GPIO驱动之GPIO API
查看>>
Linux 内核Voltage/Current Regulator 即调压限流框架
查看>>
Linux Kernel调度管理之唤醒指定进程
查看>>
Linux Kernel调度管理之唤醒进程并设定唤醒标识
查看>>
arm64体系架构
查看>>
Linux Kernel之spin_lock之ARM实现
查看>>
Linux Kernel之spin_lock之ARM64实现
查看>>
Generic Mutex Subsystem
查看>>
Linux Kernel 互斥量
查看>>
Linux Kernel 互斥量等待进程描述
查看>>
Linux Kernel 互斥量初始化
查看>>
Linux Kernel互斥量获取和释放
查看>>
inode节点销毁
查看>>
inode节点简单统计
查看>>
inode节点hash处理
查看>>
inode节点clear操作
查看>>
inode节点查找
查看>>
inode根据hash后插入
查看>>