Android程序员,如何规划自己的职业道路?
  FyeYl0ESQHUh 2023年11月24日 15 0

前言

作为程序员群体的一员,我发现身边很多同学都非常的踏实,虽然这是一个很好的素质,但我们除了踏实做事以外,也需要多抬头看看路。才能让自己在职业道路上走的更稳更长久。

身边很多同学都知道去追求升职加薪,但却很少去考虑一个完整的职业规划,很少去考虑自己的职业目标。对于以后自己是去做 技术管理?还是做 技术架构?又或者是干脆转行?很少去思考。

因此,今天我就来跟大家简单聊一聊程序员的职业发展路径。

一、先看看各技术层级的要求?

在聊程序员的发展之前,我们先看一下常见的互联网公司技术团队里,程序员这职业的等级是怎么划分的?

一般分为以下几个级别,再往上可能就是技术专家或者首席技术官了。

  • 初级工程师
  • 中级工程师
  • 高级工程师
  • 资深工程师/架构师

下面继续看一下每个级别的素质要求是什么?

初级工程师

初级工程师主要是指刚毕业的,职场上的技术新人。通常这类人会有一定的专业理论知识,所以也能够比较快的学习公司的常用框架、工具和开发技术。能够在上级/导师的指导下,理解相关的业务知识,按照研发需求完成部分模块和功能的开发,在别人的指导下解决研发中遇到的问题。

中级工程师

中级工程师是大多数三到五年程序员所处的水平。中级工程师必须要能够独立承担开发任务,并且能够独立负责某个模块或小系统,根据自己的历史经验和学习能力,独立解决日常工作中遇到的技术问题。

高级工程师

高级工程师,一般是混迹多年,且有一定技术积累的程序员,有一套自己的开发方法。对于高级工程师要求能快速的理解业务、够独立负责一个中大型系统,且在工作中需具备指导他人的能力,属于团队骨干,在团队中有一定的技术影响力。

资深工程师/架构师

程序员到了资深的级别之后,其实在职业上可以分为两个发展方向。

  • 一个是继续往技术深度上钻研,在某个技术领域内有一定的深度和影响力,我们称为资深工程师。
  • 还有另一个方向就是往技术的广度上发展,除自身技术线以外,对周边相关技术也有一定的研究和理解,能够站在更高的维度上去俯视项目里的技术结构,业务理解能力也很强,根据不同业务,设计出不同的技术方案,这一类我们称为架构师。

二、有哪些基础技能是都必须具备的?

在知道了程序员各不同层级的能力模型后,我们再来看一下有哪些基础的技术能力是不同层级都应该具备的,是程序员技术水平的基石:

数据结构

数据结构是基础中的基础。有些人觉得数据结构的知识貌似在实际工作中用到很少,反而在面试中问的多,所以就认为这个东西不实用。殊不知数据结构是我们编码的根本。只不过我们平时用的框架工具多了,很多都被封装好了,大家直接调用即可,导致大家对这一块儿渐渐忽略了。但是只有真正理解了数据结构,我们才能写出有质量的代码。

常用算法

算法是每一个程序员都绕不开的话题。但算法跟数据结构一样也是编程的灵魂,是真正区别出不同程序员编程水平的地方,每个技术人都应该学好。

数据存储

存储是每个项目的必须环节。以数据库举例,有关系型的数据库,还有NoSQL数据库等,另外还有文件存储系统。这些在做项目中都可能遇到,所以需要熟练掌握其原理和用法。

编程规范

编程规范这个自然不必多说,也是最容易看出程序员水平的地方。虽然很多不规范的代码也能运行,但是作为一个有追求的程序员,理应按照一定的编程规范去管理好自己的代码。优秀的程序员始终要有个理念记在心中:代码的第一作用是给人读的,第二作用才是给机器使用。

开发平台

这里指的是程序员常用的编程语言、以及语言所在的生态和框架。以Java程序员举例,必须得深入了解Java的语言特性,以及Java这个语言平台的生态体系,同时熟练掌握Java的常用框架和主流方案,每一个语言都有这样的平台与生态。

三、如何打造属于自己的技术体系?

技术的成长是靠一步一步走出来的,不可能一口吃个胖子。

关于这一点,在我当时确立好Android方向时,就已经开始梳理自己的成长路线了,包括技术要怎么系统地去学习,都列得非常详细。

有需要的小伙伴,可以点击下方课程链接详细了解!!!

https://edu.51cto.com/course/32703.html

Android程序员,如何规划自己的职业道路?_Java

接下来就是需要梳理知识,提升储备!

  • 架构师筑基必备技能:深入Java泛型+注解深入浅出+并发编程+数据传输与序列化+Java虚拟机原理+反射与类加载+动态代理+高效IO
  • Android高级UI与FrameWork源码:高级UI晋升+Framework内核解析+Android组件内核+数据持久化
  • 360°全方面性能调优:设计思想与代码质量优化+程序性能优化+开发效率优化
  • 解读开源框架设计思想:热修复设计+插件化框架解读+组件化框架设计+图片加载框架+网络访问框架设计+RXJava响应式编程框架设计+IOC架构设计+Android架构组件Jetpack
  • NDK模块开发:NDK基础知识体系+底层图片处理+音视频开发
  • 微信小程序:小程序介绍+UI开发+API操作+微信对接
  • Flutter:Flutter入门+Flutter进阶
  • Kotlin: Kotlin入门教程 +Kotlin 实战避坑指南 +项目实战《Kotlin Jetpack 实战》

知识梳理完之后,就需要进行查漏补缺,所以针对这些知识点,我手头上也准备了不少的电子书和笔记,这些笔记将各个知识点进行了完美的总结。

Android程序员,如何规划自己的职业道路?_Java_02

然后再是通过源码来系统性地学习

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

Android程序员,如何规划自己的职业道路?_Android_03

刷大厂面试题备战,增加大厂通过率

历时半年,整理了这份市面上最全面的安卓面试题解析大全。

可以通过目录索引直接翻看需要的知识点,查漏补缺。

Android程序员,如何规划自己的职业道路?_Java_04

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

Android程序员,如何规划自己的职业道路?_数据结构_05

经典书籍阅读

阅读Android经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习Android开发的读者来说,阅读Android经典书籍是非常有必要的。

Android程序员,如何规划自己的职业道路?_Android_06

有需要的小伙伴,可以点击下方课程链接详细了解!!!

https://edu.51cto.com/course/32703.html

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月24日 0

暂无评论

FyeYl0ESQHUh