浅谈Android移动开发程序员的职业发展之路

时间:2022-09-02 21:20:55

现在几乎每个it公司都在开发移动产品,我最早知道Android还是在09年成都某学院上大学的时候,从新闻上知道有这么一家公司,创始人安迪·鲁宾很有名,但安卓到底是做什么的,我并没有关注。
   到2010年毕业的时候,Android已经发展到了2.2版本,百度了一下Android,知道了(应用)开发采用的是Java语言。我当时学过
C,C++,对java有些了解,从成都辗转来到北京,找到的工作正是开发一款Android应用(生活服务类)。这时我有了一个HTC的安卓最新版手
机。
   现在做Android移动开发已经有三年时间,从一个什么都不懂的小程序员到现在的项目经理,其中甘苦自知,对Android开发和对Android程序员的职业发展有一些自己的感悟,在这里愿与大家分享和讨论。

Android移动开发程序员晋级的三个“相对条件”
   第一:兴趣
   这事不展开说了,每个程序员都知道,做码农,如果不能乐在其中,是很痛苦的一件事,因此,入行需谨慎。
   第二:静气
   如果你新入行,菜鸟级,你的工作主要是改bug,不停的接受改bug的任务,总之,都是小事,这时,也许你会焦虑,我的对策是:马上定一个目标学习计划,主动学习,因为大学里的知识体系基本无用,Android不难,三个月会有小成。
   第三:平台
   自行车再快,也没有宝马快。努力固然重要,平台也很关键,因为那里有很多大牛人可以迅速带你成长,如果你现在还没有一个好的平台,你就泡一些大牛出
没的论坛,看几本好书,找机会换到宝马平台上去。提示:换平台的时机很重要,您至少得有大众的实力,宝马平台才考虑接收你吧。

具体的职业发展规划和技能特点:
    Android移动开发程序员的职业发展路径在我看来,基本上有两条:技术专精路线和技术转产品路线。

路径:技术为王的职业发展路线
   晋升轨迹:Android初级开发程序员---中级---高级--软件架构师--系统架构师--项目经理--首席技术官
   各阶段对于技能要素的要求:
   入门初级阶段:
   掌握Java基本知识(或任何其他面向对象语言),需要掌握Android SDK软件开发工具包,多看Android相关的文档,IDE (例如Eclipse),这些是必不可少的。顺便学习一下JavaScript脚本基础。掌握这些基本上已经可以算是入门了。

   晋升中级阶段:
   想晋升为到高级Android工程师至系统架构师的职位,很重要的一点就是学习研究源代码,直接查阅Android的源代码(这是看李宁老师的书得
到的启发),源代码很容易从网上获得。同时,Android很大程度上是基于Linux内核的,所以学习
Linux的相应API以及各种操作也是十分必要的。还有,常用混合移动开发框架(例如:AppCan)。编译原理,高并发网站架构设计等技能。

   高级发展阶段:
   再往上想发展到项目经理,还需要掌握Android 软件安全分析技术、软件开发常用测试、界面交互式系统设计,同时要补充些项目管理方面的知识,比如:软件项目风险管理常用团队协作开发工具需求分析设计设计模式。
   要做到公司首席技术官的位子,更多的是从架构考虑,包括:数据库系统优化、Windows Server服务器架设管理、网络安全技术与解决方案(Cisco)、海量数据库解决方案、大型服务器负载均衡优化技术等等。这是个需要绝对实力的职位。也是我的终极目标。

第二条路径:由技术向产品方向转型的职业发展路线
   晋升轨迹:Android初级开发程序员---中级---高级--软件架构师--系统架构师--产品经理--产品总监

   为什么转型?转型的条件是什么?
   由技术向产品方向转型是很常见的,每个公司都有,成功的例子很多,一个好的程序员更容易成为一个好的产品经理,比如:周鸿祎,雷军。但在考虑转型的
时候,要问一下自己为什么转型,走向产品,拼的就不再是单纯的技术能力了,做产品要懂人情,会管理,要事事练达,这里边的性格因素你要考虑。

   具体的职业发展规划和技能特点:
   初、中期还是要储备技能,我不建议在初级直接转到产品,这等于放弃了你的优势,还是要静下心来把技术学会,老话讲,欲速则不达。
   一旦有转型的规划,就要提前学习产品经理的必会技能,如:用户体验设计、Axure rp快速原型设计工具、公关营销策划技巧、数据挖掘、需求分析设计、品牌传播、用户心理体验、软件需求说明文档写作、数据分析,哈,不少吧。
   我个人认为,最重要的还是需求分析设计,这是产品的灵魂。
   怎么做需求分析,网上资源很多,也有很多不错的书,很成功的产品,都可以参考,多学些消费者行为学、受众心理学、多记录,养成用笔而不是用脑记录的习惯,多用思维导图。
   产品经理的更高职位就是产品总监,这个职位更多的体现在执行和管理能力上,除了绩效量化考核量化管理、执行力、预算管理等,这时,要补充些基本理论知识,比如统计学、运筹学、经济学原理等,能把产品管理提升(忽悠)到理论高度,就可以考虑图谋副总裁的位子了。

   总结:
   先说一组数据:时至2013全球Android手机出货量6亿台,截至2013年底,全球Android手机出货已经有11亿台,从2008年9月
Android公布1.0版本开始,到现在的4.4.2(2014年1月),应用已经开发有几百万个。(因为是开源,不好统计),由此可
见,Android移动开发的前途一片光明。
   其实还有第三条路线,就是自己创业,但不管哪个方向,对自己的未来提前客观的做出职业发展规划是有必要的,还是那就老话,机会是留给有准备的人的。

浅谈Android移动开发程序员的职业发展之路的更多相关文章

  1. Java程序员的职业发展道路 附:大型网站 -- 架构技能图谱(Java版)

    职业发展道路基本有3条: 第一条路线(技术专精): 初级Java开发---中级--高级---项目主管--Java项目经理---网站架构师----资深专家 第二条路线(技术转产品):初级Java开发-- ...

  2. 浅谈Android样式开发之布局优化

    引言 今天我们来谈一下Android中布局优化常用的一些手段.官方给出了3种优化方案,分别是</include>.</viewstub>.</merge>标签,下面 ...

  3. 浅谈Android系统开发中LOG的使用

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6581828 在程序开发过程中,LOG是广泛使用 ...

  4. 浅谈Android系统开发中LOG的使用【转】

    本文转载自:http://blog.csdn.net/luoshengyang/article/details/6581828 在程序开发过程中,LOG是广泛使用的用来记录程序执行过程的机制,它既可以 ...

  5. Android:从程序员到架构师之路Ⅰ

    一般而言,人们大多先学开发(代码)的技术,随后才学(架构)设计的方法.然而,在实际做事时,却是先设计,随后才写出代码来.敏捷过程则让设计与写码迭代循环下去,一直到完成为止.在本课程里,就遵循敏捷的迭代 ...

  6. 程序员的职业方向: 是--&gt&semi;技术?还是--&gt&semi;管理?

    岁之后还能不能再做程序员....... 绝大多数程序员最终的职业目标可能都是CTO,但能做到CEO的人估计会比较少,也有一少部分人自己去创业去当老板,也有部分人转行了,当老板的人毕竟是少数,转行的人都 ...

  7. 安卓开发&lowbar;浅谈Android动画(四)

    Property动画 概念:属性动画,即通过改变对象属性的动画. 特点:属性动画真正改变了一个UI控件,包括其事件触发焦点的位置 一.重要的动画类及属性值: 1.  ValueAnimator 基本属 ...

  8. 对ios、android开发程序员的14条忠告

    ————————本文摘自千锋教育(http://www.mobiletrain.org/)对ios\android开发程序员的14条忠告————————— 1.不要害怕在工作中学习. 只要有电脑,就可 ...

  9. 浅谈android代码保护技术&lowbar; 加固

    浅谈android代码保护技术_加固 导语 我们知道Android中的反编译工作越来越让人操作熟练,我们辛苦的开发出一个apk,结果被人反编译了,那心情真心不舒服.虽然我们混淆,做到native层,但 ...

随机推荐

  1. 欧舒丹 L'Occitane 活力清泉保湿面霜 - 男士护肤 - 香港草莓网StrawberryNET&period;com

    欧舒丹 L'Occitane 活力清泉保湿面霜 - 男士护肤 - 香港草莓网StrawberryNET.com 欧舒丹 活力清泉保湿面霜 50ml/1.7oz

  2. mac下nginx安装

    一.安装 Nginx 终端执行: brew search nginx brew install nginx 当前版本 1.10.2,通过brew可以把nginx需要的pcre,openssl,zlib ...

  3. 在被vue组件引用的 js 文件里获取组件实例this

    思路: 通过调用函数 把 组件实例this  传递 到 被应用的 js文件里 实例: 文件结构 在SendThis.vue 文件中引用 了modalConfig.js import modalConf ...

  4. Five Android layouts

    线性布局: 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:an ...

  5. windows修改远程桌面端口3389

    regedit 按照路径打开,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-T ...

  6. bzoj千题计划232:bzoj4727&colon; &lbrack;POI2017&rsqb;Turysta

    http://www.lydsy.com/JudgeOnline/problem.php?id=4727 竞赛图tarjan缩点后得到的拓扑图一定是一条链 因为竞赛图任意两点的前后顺序确定,只有一种拓 ...

  7. PX4地面站QGroundControl在ubuntu下的安装

    1.引言 相信很多玩开源无人机的朋友手上都有一架无人机,而不是仅仅停留在理论的学习和程序的学习.放飞自己组装的无人机才是乐趣所在,那么这本文就介绍玩无人机必不可少的地面站软件qgroundcontro ...

  8. MyBatis 入门&lpar;一&rpar;

    1. MyBatis 概述 MyBatis 是一个半自动化的持久层框架; 核心SQL,开发人员可以进行优化; SQL和Java编码分开,功能边界清晰,一个专注业务,一个专注数据; JDBC: SQL ...

  9. 在WPF中自定义控件&lpar;1&rpar;

    原文:在WPF中自定义控件(1)    在WPF中自定义控件(1):概述                                                   周银辉一, 不一定需要自定 ...

  10. Webshell清除-解决驱动级文件隐藏挂马

    Webshell清除-解决驱动级文件隐藏挂马