IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 我接触了不少小公司的Android程序员后,感叹真会有不少人做不到30岁 -> 正文阅读

[移动开发]我接触了不少小公司的Android程序员后,感叹真会有不少人做不到30岁

本人最近和不少小公司的程序员打交道。经过和他们的深入交流,我感受到了不少小公司程序员的现状,由此深深地感叹,可能真有不少小公司的程序员未必能干到30岁,甚至,一些技术一般态度又不好的Android程序员,可能还未必能干到28岁。

1 能踏实做好增删改查的程序员,就算能力达标

我去我朋友开的一家软件坐了坐,顺带近距离观察了他们Android程序员的开发日常,首先说明,我接触到的程序员不是才入职,而是普遍有2到3年工作经验。他们的开发团队是一个项目组长外带10多号人做个Android方面的维护项目

其中所谓技术好的程序员,是能根据现有的业务照抄代码,编写新业务功能。编写过程中如果写代码时遇到一些问题,还能把问题关键字放到网上查,并找到对应的解决方法。

在此基础上,如果遇到有bug,还能主动解决,遇到活还不退缩,也就是说所谓的技术好外加态度好,这种人已经算是不可多得了,至于熟悉MMKV或git等基本管理工具,那更是能算技术顶梁柱了。在这个团队里,不少做Android的,而且有2年开发经验,是属于无法解决实际问题的。

而他们的项目组长,更多的职责是管进度,同时用最简单的方法把系统发布到网上,并做简单的数据库等方面的配置管理。比如就直接用mv命令打包。不过,就是这样的技术,用来管理他们公司的项目,也绰绰有余了。

2 除了业务知识外,这些程序员还会什么?

我朋友所在公司里的程序员天天都在创造价值,所开发和维护的项目还真值不少钱,他们每天也不能算闲。但除却哪些摸鱼的程序员,那些态度积极的程序员技术上掌握了哪些技能?

1 业务知识点,比如某个业务流程该怎么做,中间该从哪里获取数据,该返回什么。这些业务可能是这批程序员平时接触最多的所谓技能,而公司也是凭借“能正确开发业务”来考核程序员,但这些只能算业务知识,不算技术。

2 用Android studio开发业务的技能,这倒算,不过用Android studio外带相关组件开发业务的技能太廉价,哪怕是零基础的用1个月就能会,而且这种零基础的程序员进入公司3个月后就能熟悉各种业务,也能用Android studio开发各种功能,所以只掌握这些技能的程序员太多了。

3 能分析和排查问题,比如出现了空指针,能通过debug找到问题,或者出了jpa的错误提示,能把这句提示放网上找,然后再根据提示修改若干代码和配置,从而解决问题,不过这种技能太杂,以后通过面试跳槽时,无法通过这类技能来展示自己的能力。

更值得感叹的是,我观察下来,这家公司的程序员,有不少是摸鱼的,干活仅限于完成功能不出错,未必还会再去关心其他还谈不上值钱的技术和项目开发的技能。

3 Android架构师还需要哪些方面的能力?

程序员如果干到28或30岁,不能仅停留在只会做增删改查业务的初级阶段,因为如果单凭这些能力,会很轻易地被应届生,甚至是培训班学员替换。

如果站在老板的角度,年轻人肯加班,而且更容易被所谓的情怀等洗脑,工资还给得低,相比之下,28岁或30岁的程序员谈不上是老油子,但如果干的还是和年轻人一样的活,那老板很有可能要年轻人。

顺带再说下大厂对高级开发乃至架构师的要求。

1 熟悉各种分布式组件的配置方法和用法,能熟练使用分布式组件开发各种高并发需求,并能熟悉限流熔断等技术。

2 熟悉软件发布部署上线的流程。

3 能通过日志,排查并解决okhttp,性能优化等高级问题,凡是高级开发无法解决的问题,架构师都应该能解决。

1、Java底层技术

2、FrameWork源码与UI

3、大厂内部APP调优方案

4、OKHttp网络框架?

5、Groovy语法 实战

6、NDK模块开发(音视频系列)

7、Flutter学习进阶

。。。。

4 可以想象初级Android程序员在30岁时的处境

如果只会初级的增删改查技能,在27,8岁之前找工作应该没问题,毕竟当下有太多的软件公司,初级开发的岗位也应该有不少。

但有3到5年开发经验的Android程序员应当需要升级到高级,也就是说,如果在27或28岁,依然只会初级开发技能的话,高级开发的面试应该过不了,甚至面试中提到的一些技术连听都没听过。如下给出些问高级开发问题。

1 你们项目用哪些组件应对高并发?

2 你是怎么排查项目中的OOM和数据库性能问题的?在项目中怎么监控性能的?

要知道,对于我初级开发来说,面试前背Android八股文还有些用,但对于Android高级开发来说,只会背八股文,面试一定过不了。

所以对这些在28岁甚至30岁还在做Android初级开发的程序员来说,有可能还能通过跳槽涨工资,但由于无法升级到高级开发,在公司里的处境可能就很尴尬了,因为能干的活年轻人都能干,而且人家还能加班。这样的话,遇到公司运营有问题,还真可能被优化。而且被优化后,甚至有可能连面试机会都没。

5 大龄尚在初级阶段的Android程序员多吗?

我只凭推测,但这部分的程序员数量应该不少。

1 不少公司可能更多注重业务,在项目开发环境中无法提供分布式等值钱技术的实践机会,这就导致不少程序员就认为,开发项目只需要用到一些比较初级的技术。没有机会实践高级技术,提升也就无从谈起了。

2 不少程序员跳槽时可能更多关心薪资,未必会关心公司所用的技术,所以很有可能进入新公司后,薪资有涨,管的人也变多,但用的还是老一套技术。

3 更重要的是,为了能找到能提供值钱技术实践机会的公司,先得在面试中证明相关技术的项目经验,要做到这点不容易。

4 况且,不少程序员虽然身处小公司,但加班程度未必比大厂少,往往是忙了一天后,看似很充实,也确实挣到了钱,但哪怕是日积月累,每天干的活都是重复劳动,提升也就无从谈起了。

所以,我在我朋友公司看到的一些程序员的状况,可能就未必是孤例了。不能说大多数小公司的程序员都这样,但像这样的程序员还真未必在少数。

6 人往高处走,程序员尤其应警惕

比起其他行当,程序员确实能有用加班换取高薪的机会,但可以这样说,程序员确实是一个吃青春饭的行当。

不说其他,就看看每年毕业的应届计算机专业的毕业生,再看一些大厂的培训班输出程序员的数量,就足以让大多数程序员警惕。

不过天无绝人之路,我本身最近,也帮了不少零基础程序员入行,也帮了java不少初级开发成功升级,再看看一些大厂也在天天招人,这足以说明,哪怕当前身处小公司,哪怕当前技术能力一般,程序员应当也有机会不断升级,或者能通过努力进大厂。

本来想再写些程序员如何升级的文字,不过在我的博客里,这些文章不少了

最后祝广大程序员朋友,当然也包括我,不仅身体健康,而且能早日实现财富自由。

同时该学习方法和路线,我整理了一下思路,收集了较为详细的资料,希望大家在技术上都能获得一个较大的进步。

欢迎叨扰:【Android开发交流】

底层技术

FrameWork源码与UI

大厂内部APP调优方案

对标腾讯T3.3架构师

Gradle项目实战

NDK模块开发(音视频系列)

Flutter学习进阶

三、学习资料

1. 技术内容

如果你对以上的学习路线有了较清楚的认识,但可能自己不好容易找到这些资料,那么可以参考我整理好的学习内容,包括对初学编程,大一、大二、大三、大四以及毕业了工作了几年后,都应该找什么样的资料学习的一个汇总。按照不同阶段的学习范围把资料分到不同的文件夹去,方便所处不同阶段的读者可以有一个相对准确的学习范围。

Android学习文档以及教学视频

Android学习肯定不是光看书就能学会的,具体还是要自己上手写代码,如果有一份视频能让你看到全过程就好了。 所以关于视频我也整理了一部分:

视频包含:

1、IPC机制相关面试题视频解析?
2、项目相关视频解析?
3、性能优化相关面试题视频解析?
4、JVM从入门到着迷?
5、源码相关试题视频解析?
6、BAT面试总结分析

Android学习三要素可以大大加快你的学习之旅

  • 脑图
  • 资料
  • 视频

四、总结

其实我们都是在经历着这样的一个学习阶段,时不时的就会到达某个不好突破的瓶颈期,就像:

  • 刚到公司理解不了项目插不进去手。
  • 能写一些代码逻辑了,但总感觉写的不好。
  • 设计模式慢慢用上了,但好像对整体架构又不太清楚。
  • 能游刃有余的接项目了,又感觉自己好像就是一个CRUD工具人,没有技术深度。
  • 想着要去扒开各种技术组件的源码看一看,但好像又有些看不懂,单个代码都懂,放一块不知道啥意思了。
  • 撸了一些源码后,又没多久就忘记了,很难把这些技术内容结合到一块去。
  • 开始尝试着做技术迁移,把在源码里学到的数据结构、算法逻辑,开始逐步用到自己的业务项目中了,感觉实现起来的逻辑有些深度了。但好像没有技术高度和全面的整合能力。
  • 开始做整体的架构设计,把代码逻辑转换成图和文字,总感觉不知道从哪下手描述,描述出来的东西,讲完了听众都没有啥反应。
  • 技术调研、经验积累、编写文章、提升影响力,一点点慢慢的平心静气的沉淀自己,是你接下来要完成的事情。
  • 路还很长,要铺宽度,也要挖深度,要懂得沟通,也要协调人员,不只是研发视角,还要有业务思维、产品逻辑、运营能力。

所以,我们要不断的去铺设自己的技术栈,做有成体系和有深度的学习,并把这西学到的能力运用在项目开发中,也要记录笔记整理资料,慢慢的才会形成自己一套完整的技术广度和深度。共勉!

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-01-25 10:42:32  更:2022-01-25 10:44:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 11:35:39-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码