大家好,我是拭心,最近有朋友问我:“安卓开发是不是没人要了,除了画 UI 别的都不会怎么办?”

考虑到这可能是很多人共同的疑问,决定简单写一下。

不是安卓开发没人要了,是初级安卓没人要了。现在还在大量招聘移动端开发的,基本是大厂的明星应用或者是创新业务。大厂校招生那么多,画界面的工作基本上校招生都能胜任,那社招当然要求会更高些。

安卓开发,甚至包括 iOS 开发,除了 iveg(if visible else gone),还有很多点值得学习的点。

这里我结合一些移动端金字塔顶端职位(技术经理、架构师、负责人)的要求,整理出值得我们重点学习的十点。

首先来看下这些职位的要求:

高级安卓开发:

  • 了解常见的APP性能优化解决方案,对至少一个维度的性能优化有过较深入的挖掘

  • 熟悉 JNI 以及 NDK 相关的技能,熟悉 C/C++

  • 对业务开发的痛点有深度理解,了解常见开发框架的优缺点和适用场景

  • 动态化相关技术框架的探索和完善,熟悉Flutter、Reactive Native、以及其它客户端动态化开发框架者优先;

  • 熟练使用Kotlin、Flutter开发者优先

安卓架构师:

  • 负责客户端架构设计及组件化构建;

  • 参与研发流程优化和基础平台搭建。

  • 优化 Android 团队的开发方式和流程、规范,提高团队效率

  • 主导过至少一个知名 Android APP 的架构

  • 计算机基础扎实,熟悉常见数据结构、算法和设计模式,熟悉数据库开发

  • 有IM架构经验者优先

安卓技术经理:

  • 对稳定性和性能有超乎寻常的关注,能够编写自动化测试代码

  • 有iOS、Web前端或Web后端经验优先有知名开源作品优先,熟悉flutter/reactnative/js/bash/python/ruby等语言和相关框架

  • 优秀的沟通及表达能力,规划组织能力,能带领团队规划和实现产品、技术需求

移动端负责人:

  • 理解业务,将业务目标转化为团队的工作成果

  • 5年以上移动端开发经验,3年以上团队管理经验;

  • 负责过百万日活以上用户规模或者较高复杂度App的 完整开发 过程

  • 善于带领团队,能够充分调动成员的积极性,能培养成员的能力

  • 优秀的跨团队沟通能力,善于项目管理,能够将技术的价值最大化

  • 有C++、JNI等基础技术能力加分,有web前端技术能力加分

  • 手动水印,文章来自张拭心的博客

要求很多,有一些是日常工作就能涉及到的,其余的就需要自己额外多投入精力了。

接着看下,从这些繁杂的要求里提炼出的 10 个关键点:

关键点:

  1. 稳定性和性能优化,至少深入一个点

  2. 可移植开发(JNI NDK C++)

  3. 框架优缺点、场景

  4. 动态化,RN Flutter,其他方案

  5. 客户端架构设计

  6. 组件化构建

  7. 研发流程优化

  8. 基础平台搭建

  9. 其他端经验

  10. 跨团队沟通能力、规划组织能力、团队管理经验、调动成员的积极性、培养成员

看五年想三年,认真做好一两年。与其临渊羡鱼,不如退而结网,努力掌握这些点吧,奥利给!


推荐阅读

点击加入字节跳动

今天太特殊,熬出黑眼圈也得写一篇

一些我觉得不错的文章

移动端 c++ 开发_这 10 点值得移动端开发重点学习相关推荐

  1. 「 Java开发规范 」10人小团队Java开发规范参考这篇就够了

    <菜鸟程序员成长计划>之团队高效合作[开发规范篇] 1.「 Java开发规范 」10人小团队Java开发规范参考这篇就够了! 2.「 前端开发规范 」10人小团队前端开发规范参考这篇就够了 ...

  2. 前端游戏开发和h5前端开发_人们不告诉您有关前端开发的10件事

    前端游戏开发和h5前端开发 介绍 (Intro) Front-end development involves the building of webpages and user interfaces ...

  3. 使软件可二次开发_基于C++的?UG二次开发

    C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计.C++擅长面向对象程序设计的同时,还可以 ...

  4. autocad python二次开发_基于Python AutoCAD ActiveX 二次开发,pyautocad应用技术

    AutoCAD应用程序开发系列 基于Python AutoCAD ActiveX 二次开发技术 主要库:pyautocad==0.2.0 内容#:基于Python AutoCAD ActiveX 二次 ...

  5. java智能卡开发_《Java智能卡原理与应用开发》PDF 下载

    图书目录: 封面 扉页 版权页 内容简介 出版说明 前言 序 目录 第一部分 Java智能卡编程基础 第1章 绪言 1.1 智能卡简介 1.2 Java智能卡简介 1.3 发展前景 1.3.1 智能卡 ...

  6. esp32录音功能开发_【安信可ESP32语音开发板专题①】ESP32-A1S音频开发板之离线语音识别控制LED灯...

    本博客学习由 一.前言 离线语音,顾名思义:在不连网络的状态下,产品能识别语音指令并执行相应的控制输出. 安信可基于乐鑫ESP32芯片开发的ESP32-A1S开发板智能语音助手,可支持唤醒词引擎(Wa ...

  7. cs架构用什么语言开发_学了C语言,能开发什么项目?

    直至今天还有人在喊着C语言都过时的语言了,还有什么值得去学的,看现在的python,JAVA等语言现在用起来多简单,谁还去学习老掉牙的C语言,事实真的是这样的吗?小编作为专门下载了这两种语言的底层源码 ...

  8. 高级java开发_我最喜欢的Java高级开发人员在线资源

    高级java开发 ProgramCreek.com博客最近发布了两个针对"高级" Java开发人员的有趣帖子:高级Java开发人员的十大书籍和高级Java开发人员的 十大网站 . ...

  9. java 关注公众号_推荐10个值得关注的技术公众号

    原标题:推荐10个值得关注的技术公众号 今天推荐一些行业内优质的技术公众号,这些号的主人在技术圈深耕多年,关注这些技术号可以让系统了解学习他们分享的技术经验,让我们的技术提升事半功倍. 程序员内推圈 ...

最新文章

  1. R语言实战应用-基于R语言的对应分析
  2. True Zero Downtime HAProxy Reloads--转载
  3. 用Java访问带有Kerberos认证的HBase
  4. oracle 对象定义被修改,oracle 数据对象_xspaces
  5. 浅析Windows计算机中丢失SETUPAPI.dll的问题
  6. 传说中的马尔科夫链到底是个什么鬼?
  7. mysql角色管理权限管理_mysql权限角色管理
  8. Android Studio 嵌入X5WebView
  9. 股票群的骗术 ,几乎99%的QQ群
  10. vmd python 命令_【MMD】用python解析VMD格式读取
  11. 中兴2016校招软件在线笔试题
  12. 看理想:3万辆交付意味着什么?
  13. inflate方法的用法
  14. PWN之堆利用-unlink攻击
  15. 世界十大投资风云人物,你知道几个?
  16. 大数据开发,真的这么香吗?
  17. 使用puppeteer 提示Error: Failed to launch the browser process解决办法
  18. 循环结构(二)——循环嵌套
  19. python五子棋ai棋力最高_Python实现AI五子棋
  20. 将Delphi2007的所有dcu打包到一个运行时包中

热门文章

  1. Java与汽车_Java NIO:IO与NIO的区别
  2. c++ string 删除字符_算法笔记|(5)第二章C、C++的快速入门字符数组的存放方式string.h文件...
  3. mysql mariadb 选择_MariaDB 选择数据库
  4. 再见Xshell!这个开源的终端工具更酷炫!
  5. 技高一筹!Python奶爸的鸡娃日常!
  6. shutil模块,为什么说它是os模块的兄弟模块?
  7. 《互联网公司工程师图鉴》
  8. 用Cython加速Python代码,快到起飞!
  9. 机器学习基础-特征缩放交叉验证法-05
  10. es类比关系型数据库