年薪60W的Android程序员究竟多累、多苦?一条高赞评论扎了无数人的心
为啥经常听到程序员朋友说自己太辛苦了、太累了,其实原因很简单:干活苦、竞争大、技术致富难。
干活苦:
有新闻说晚上十点某领导在微信群要求下属在十分钟内回复,一员工因休息早而没及时回复被裁了。
对于程序员来说,晚上十点仍有许多人在公司赶进度,等发布。即使在深夜熟睡之际,一旦电话铃声响起,程序员在十分钟内就得起来查看处理,毕竟如果是系统宕机的话,晚一分钟处理损失就多几个零。
选择程序员这职业也就是选择7*24*365的待机模式,出门可以不带钱包但随身得带个vpn,搞不好程序员在结婚当天还得停下来打开电脑解bug。
竞争大:
IT这个行业涌入太多的急功近利的求职者,培训学校批量生产的码农,一批一批又一批。普通人从培训学校培训半年便能就业,月薪轻松过万;大四学生不喜欢本专业,自己拿本书学习也能找到不错的公司以实习生的身份入门。
技术致富难:
工资不涨房价嗖嗖涨,与公司的一起成长的情怀比不过现实的残忍:领导画的饼迟迟不兑现,还没到30岁两鬓开始发白,腰背也熬病了,薪资还是那么点。同一起跑线的同学跳槽早就实现了薪资翻翻,人又何必在一棵树吊死呢?
让我们来看看知乎上的一条高赞评论:
代码水平不高的时候,天天加班也干不完,还说其实是喜欢。
随着代码水平的提高,注释写的越来越少,话也越来越少了。
话说得少了,觉得办公室气氛变得有点压抑,于是离职换了一家公司。
在新的公司还是那么忙,于是经常幻想老了就可以轻松点,却发现脑门子越来越大,眼睛看不清楚了,胳膊腿儿越来越细,肚子越来越大,原来已经提前老了,但是还要加加班。
终于有一天升职,来了几个帮手,可是他们水平不高,天天加班也干不完,还说其实是喜欢。
这些新来的下属们加班总是帮倒忙,引入的bug比解决的bug多多了。
于是每天劳心劳力的去帮助他们,要求他们代码写好,那样可以少写注释。
终于发现他们的水平逐步提高了,注释写的越来越少,但是话也越来越少。
话说的少了,似乎办公室气氛变得有点压抑,终于下属告诉我已经辞职下月离职,这陌生的感觉仿佛换了一家公司。
于是更加忙了,总是幻想老了就可以轻松点,却发现脑门子越来越大,眼睛看不清楚了胳膊腿儿越来越细,肚子越来越大,原来已经提前老了,但是还要加加班。
如此循环往复..............
感觉生活都没有了乐趣
看到这哥们儿的工作经历,再加上工作几年对这个行业的了解,我对以下几点有了深刻的感悟:
第一:每个行业都有各自的辛苦,只是你不知道,总觉得别人的就是最好的。
第二:我们需要控制欲望,做正确的事情,就不累。
第三:好的程序员并不累,他们乐此不疲,因为他们能从中获取成就感。
第四:如果你觉得很累,那就要回到原点问问自己为什么要做程序员,工作的方法是不是有什么问题,常用的基础知识点有没有掌握,是不是还不具备一个核心竞争力。
第五:程序员也需要不断提升自己的技术水平,有一个特别精通的东西,别等到有一天被劝退,那时候就措手不及了。
如何提升学习?
提升学习很大程度上就是为了跳槽涨薪,当然运气不好的情况可能是被劝退重新找工作,无论是哪种情况,自主学习的能力是要有的,而且得有一个方向,得有重点。
对于Android移动开发来说,热修复框架、插件化框架、组件化框架、图片加载框架、网络访问框架、RxJava响应式编程框架、IOC依赖注入框架、最近架构组件Jetpack等等Android第三方开源框架是进入大厂必须掌握的,也是面试中常常问到的,我这里整理了一份资料以及路径,长达1042页!相信看完这份文档,你将会对这些Android第三方框架有着更深入、更系统的理解。
由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容,1042详细完整版的【Android设计思想解读开源框架】可以到我的【Github】阅读下载。
第一章:热修复
1、AOT/JIT & dexopt 与dex2oat
2、热修复常见问题之CLASS_ISPREVERIFIED 问题
3、热修复原理
4、Tinker 的集成与使用(自动补丁包生成)


第二章:插件化
1、Class 文件与Dex 文件的结构解读
2、Android 资源加载机制详解
3、四大组件调用原理
4、so 文件加载机制
5、Android 系统服务实现原理


三:组件化框架设计
1、阿里巴巴开源路由框——ARouter 原理分析
2、APT 编译时期自动生成代码&动态类加载
3、Java SPI 机制
4、AOP&IOC
5、手写组件化架构


四、图片加载框架
1、图片加载框架选型
2、Glide 原理分析
3、手写图片加载框架实战

五、网络请求框架
1、网络通信必备基础
2、OkHttp 源码解读

六、RXJava 响应式编程框架设计
1、链式调用
2、扩展的观察者模式
3、事件变换设计
4、Scheduler线程控制

七、IOC 架构设计
1、依赖注入与控制反转
2、ButterKnife 原理
3、Dagger架构设计核心解密

八、Android架构组件Jetpack
1、LiveData 工作原理
2、Navigation 如何解决tabLayout 问题
3、ViewModel如何感知view生命周期及内核原理
4、Room架构方式方法
5、DataBinding为什么支持MVVM?
6、WorkManager内核解密
7、Lifecycles生命周期

以上资料免费分享,如有需要,可以到我的【Github】阅读下载。
年薪60W的Android程序员究竟多累、多苦?一条高赞评论扎了无数人的心的更多相关文章
- (转载) 据说年薪30万的Android程序员必须知道的
据说年薪30万的Android程序员必须知道的帖子 标签: android 2015-03-12 16:52 28705人阅读 评论(14) 收藏 举报 Android中国开发精英 目前包括: And ...
- Android程序员必知必会的网络通信传输层协议——UDP和TCP
1.点评 互联网发展至今已经高度发达,而对于互联网应用(尤其即时通讯技术这一块)的开发者来说,网络编程是基础中的基础,只有更好地理解相关基础知识,对于应用层的开发才能做到游刃有余. 对于Android ...
- 迈向高阶:优秀Android程序员必知必会的网络基础
1.前言 网络通信一直是Android项目里比较重要的一个模块,Android开源项目上出现过很多优秀的网络框架,从一开始只是一些对HttpClient和HttpUrlConnection简易封装使用 ...
- 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~
一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...
- 给Android程序员的六个建议
给Android程序员的六个建议 分类: 安卓相关2015-07-14 23:58 177人阅读 评论(0) 收藏 举报 android程序员 如果你一年前写的代码 , 在现在看来你还感觉写的很不错 ...
- Android高薪之路-Android程序员面试宝典
Android高薪之路-Android程序员面试宝典
- Android 程序员必须掌握的三种自动化测试方法
在日常的开发中,尤其是app开发,因为不像web端那样 出错以后可以热更新,所以app开发 一般对软件质量有更高的要求(你可以想一下 一个发出去的版本如果有重大缺陷 需要强制更新新客户端是多么蛋疼的事 ...
- 悲惨的Android程序员
Android程序员太悲惨了,连Android官网都访问不了,整个Android程序员的水平都被拉低了一个等级.受不了了.说说悲惨的遭遇吧. 起源:高射炮打苍蝇,驴受伤了 Android一个纯技术网站 ...
- Java程序员入门:程序员究竟可以干多少年?
很多人都说程序员是青春饭,只能干到30岁. 然而事实真的如此么? 今天我们来探讨一下这个老话题,看看为了技术与编程执着究竟能走多远? 01年龄分布图 先来看一下程序员的年龄分布图: 我们可以看到程序员 ...
随机推荐
- Vue3全家桶升级指南二ref、toRef、toRefs的区别
ref是对原始数据的拷贝,当修改ref数据时,模板中的视图会发生改变,但是原始数据并不会改变. toRef是对原始数据的引用,修改toRef数据时,原始数据也会发生改变,但是视图并不会更新. 在vue ...
- 40、Nginx 配置支持 WAF
40.1 waf说明 1 WAF(Web Application Firewall),中文名叫做"Web应用防火墙". 2 WAF的定义是这样的:Web应用防火墙是通过执行一系列针 ...
- 关于asp.net中Repeater控件的一些应用
在Asp.net中,我是比较喜欢用Repeater这个控件,刚刚遇到的一个问题,怎么实现单击 <asp:LinkButton>,通过后台的单击事件获取同一行数据中的其他数据(对象). 1, ...
- HCNA Routing&Switching之动态路由基本概念
前文我们了解了静态路由的相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14965433.html:今天我们来聊一聊动态路由相关概念: 首先我们要清楚什 ...
- U149791 正多边形变换
原博客网页--洛谷博客 题目地址 如果您对群论有所了解,那么本题就是对二面体群 \(D_{2n}\) 的简单实现,您可以直接跳到代码部分.下面的解题思路只是对二面体群 \(D_{2n}\) 的构造思路 ...
- ESP32-使用有刷直流电机笔记
基于ESP-IDF4.1 1 /* 2 * 刷直流电动机控制示例,代码通过L298电机芯片测试 3 */ 4 5 #include <stdio.h> 6 7 #include " ...
- python链接postgresql
#需要安装的库 sudo apt-get install build-dep python-psycopg2 pip install psycopg2 #!/usr/bin/python # -*- ...
- 多es 集群数据迁移方案
前言 加入新公司的第二个星期的星期二 遇到另一个项目需要技术性支持:验证es多集群的数据备份方案,需要我参与验证,在这个项目中需要关注到两个集群的互通性.es集群是部署在不同的k8s环境中,K8s环境 ...
- PYTHON startswith (endswith类似)
Python startswith()方法Python startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False.如果参数 beg 和 end ...
- Tomcat网站根目录设置
直接将war放入到webapps目录下 修改server.xml文件,在Host节点下添加如下代码 <Context path="/" docBase="web&q ...