Android程序员如何面临被优化(亲身经历与看法)

news2024/10/7 8:29:34

前言

相信大家都有过这样一个经历,就是在一家公司工作久了,能轻松的完成每天的工作内容,无论是在大公司还是其他小公司,这样的状态时间长了之后,公司领导就会认为你每天不做事,总暗中招一些工资低的人代替你。

对于这样的情况,要不就是仗着和领导关系好,要么就是有底气不怕找不到好工作。

我的一个朋友就是这样的,普通本科的学历,去年6月份进的大厂,刚刚开始的时候因为不熟悉工作,每天就过的很焦虑;后面随着时间的推移,渐渐的熟悉了每天的工作内容,工作效率也在慢慢提高,后面基本都是提前完成每天的工作任务,这时就听得一些风声,说是部门领导正在招聘一些工资低的想把他代替掉,于是心中就产生了焦虑,怕被优化后找不到工作。

作为一个曾经在滴滴出行,腾讯待过的程序员,来谈谈我对这个问题的看法。我认为程序员会有这样的焦虑,一部分来自工作环境,一部分来自自己的内心。

会造成焦虑的因素主要有两访问:

一.精神方面

身在职场,工作是永远都做不完的。其实更多时候,压力是自己给的。这里笔者主要来剖析一下自己所面临的问题:

焦虑感:稍有空闲就会有负罪感,觉得不充电不学习就会被别人甩出去几条街的危机感。未雨绸缪是好事,可凡事过犹不及。尤其是中兴高管跳楼等等新闻爆出以后,掀起了一波接一波的中年危机,全社会都在贩卖焦虑。这简直就是很多程序员的命门。

技术畏惧感:还记得在阿里时,听Dubbl0开发者梁飞(花名:虚极)讲过一句话,“你的技术畏惧感会成为你的技术瓶颈,所以一定要去突破”。成长过程本身就是不断升级打怪的过程。

不自信:面对自己掌控不了的事情,总会不那么自信自己可以搞定。这一点,其实是压力的根源。

二.竞争压力(卷)

年轻人的竞争:上面说到了学习,如果年龄大了也许就学习不动了,毕竟年龄大了记忆力不好那么你就和年轻人比不了了,这时候你就会有竞争压力了,要么你转岗到管理或者技术leader(也是竞争异常激烈),但是这些是大公司才有的啊,小公司啥都没有,除非你自己创业,不然很可能就会被年轻人取代。

同事间的竞争压力:同级别的竞争,争抢工作内容、表现机会,这种情况在领导喜欢无为而治的时候就会碰到。

惶恐源于技术力不足

比如,我现在在公司负责需求讨论和架构设计方面的工作,这个阶段更多的压力是“未知”,是“变化”,有一些活儿不知道如何下手,这是压力很大的。

如果一个需求,明确的告诉你要完成哪些业务,或者领导说要做一个项目,有哪些功能点,这种工作很好做。

但如果需求就是一句话,或者需求不明确,这时候就要掉头发了。

这种情况下,不要慌,沟通、沟通、再沟通;如果没有人知道要业务怎么做,那么就开发驱动需求,但是一定要在正式开发前明确方案,避免还没开发完,需求已经变了的情况发生。

如何摆脱这种压力呢

其实有压力对我们来说是好事,因为有了压力,我们才知道自己想要的是什么,这样我们才会有一个学习和前进的方向。只要有技术在手,在哪里都能找到工作。

说到这来我想给大家推荐一份《Android framework内核解析》,希望能对于目前因为工作而焦虑的Android 程序员有所帮助。

第一章 深入解析Binder

  • 第一节 binder系列-开篇
  • 第二节 Binder Driver 初探
  • 第三节 binder Driver再探
  • 第四节 binder 启动 serviceManager
  • 第五节 获取 SericeManager
  • 第六节 注册服务
  • 第七节 获取服务(getsevice)
  • 第八节 framework 层分析
  • 第九节 如何使用 Binder
  • 第十节 如何使用 AIDL
  • 第十一节 Binder 总结
  • 第十二节 Binder 面试题全解析

img
第二章 深入解析Handler消息机制

  • 第一节 宏观理论分析与 Message 源码分析

  • 第二节 MessageQueue 的源码分析

  • 第三节 Looper的源码分析

  • 第四节 handler的源码分析

  • 第五节 Handler机制实现原理总结

  • 第六节 Handler面试题全解析
    img
    第三章 Dalvik vm 进程系统

  • 第一节 Android 系统启动-综述

  • 第二节 Init 篇

  • 第三节 zygote 篇

  • 第四节 SystemServer 上篇

  • 第五节 SystemServer 下篇
    img

第四章深入解析 WMs

  • WMS 概述
  • WMS 的诞生

img

第五章 PackageMS 启动

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/507698.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java基础知识梳理

虽然已经在实际工作中与java打交道5年之多,但是一直没系统地对java这门语言进行梳理和总结,掌握的知识也比较零散。恰好利用这段时间重新认识下java,并对一些常见的语法和知识点做个总结与回顾,一方面为了加深印象,方便…

OtterCTF---Memory Forensics内存取证(1-13)

一.OtterCTF 内存取证 CTF地址: OtterCTF 国产化一下: 注册一下 登录就可以 (注:因为邮箱不验证,随意搞个就可以): 1 - What the password? 第一题: 国产化: 下载…

DEJA_VU3D - Cesium功能集 之 104-攻击箭头(标绘+编辑)

前言 编写这个专栏主要目的是对工作之中基于Cesium实现过的功能进行整合,有自己琢磨实现的,也有参考其他大神后整理实现的,初步算了算现在有差不多实现小140个左右的功能,后续也会不断的追加,所以暂时打算一周2-3更的样子来更新本专栏(每篇博文都会奉上完整demo的源代码,…

FreeRTOS:中断配置

目录 一、Cortex-M 中断1.1中断简介1.2中断管理简介1.3优先级分组定义1.4优先级设置1.5用于中断屏蔽的特殊寄存器1.5.1PRIMASK 和 FAULTMASK 寄存器1.5.2BASEPRI 寄存器 二、FreeRTOS 中断配置宏2.1configPRIO_BITS2.2configLIBRARY_LOWEST_INTERRUPT_PRIORITY2.3configKERNEL_…

Class 01 - R语言介绍及部分功能演示

Class 01 - R语言介绍及部分功能演示 教程介绍功能演示数据导入 R语言&Python对比在数据科学中的不同优势 教程介绍 在本章中,将学习到编程的新概念,以及如何使用R语言来做数据的分析。 我们先谈谈计算机编程吧,计算机编程是指向计算机…

计算机网络学习笔记-数据链路层

目录 概述 三个功能 封装成帧 透明传输 差错检测 点对点协议PPP 三个组成部分 帧格式 透明传输 工作状态 使用广播信道的局域网 以太网 两个主要标准 高速以太网(速率 > 100Mb/s) MAC层: 集线器 交换机 自学习和转发帧 生…

tkinter+re实现百度网盘分享链接自动跳转

目录 一、背景 二、需求分析 三、实现 三、打包 四、测试 一、背景 相信大家使用百度网盘的时候都会去一些链接网站吧,比如下面这个网站 这个网站具体实现的功能是:管理员上传百度网盘链接,用户点击复制链接按钮可以将百度网盘的分享链…

线性结构-数组

数组(Array)是最简单的数据结构,是由有限个相同类型的变量或对象组成的有序集合。因为数组中各元素之间是按顺序线性排列的,所以数组是一种线性数据结构。 数组是一类物理空间和逻辑形式都连续的线性数据结构: 数组用唯一的名字标识&#xf…

输出数字的位数(C语言)以及逆序输出

#include <stdio.h>int main() {int N;int i 0;scanf("%d",&N);int a[5];int j;while(N > 0){a[i] N%10;i;N N/10;}printf("这个数字是%d位数\n",i); for(j 0;j < i;j){printf("%d",a[j]);} } 原题如下&#xff1a;

并发编程08:原子操作类

文章目录 8.1 基本类型原子类8.1.1 常用API简介8.1.2 Case 8.2 数组类型原子类8.2.1 常用API简介8.2.2 Case 8.3 引用类型原子类8.4 对象的属性修改原子类8.4.1 使用目的8.4.2 使用要求8.4.3 Case 8.5 原子操作增强类原理深度解析8.5.1 常用API8.5.2 面试题8.5.3 点赞计数器8.5…

读书笔记-《ON JAVA 中文版》-摘要15[第十五章 异常]

文章目录 第十五章 异常1. 异常概念2. 基本异常2.1 基本异常2.2 异常参数 3. 异常捕获3.1 try 语句块3.2 异常处理程序3.3 终止与恢复 4. 自定义异常4.1 自定义异常 5. 异常声明6. 异常捕获6.1 捕获所有异常6.2 多重捕获6.3 栈轨迹6.4 重新抛出异常6.5 精准的重新抛出异常 6.6 …

ExpressGridPack Crack快速电子表格

ExpressGridPack Crack快速电子表格 ExpressEditors库 外壳对话框-对话框窗体不会出现在活动监视器中。 TdxVisualRefinements.PPadding属性对dxTokenEdit没有影响。 Express库 TdxVisualRefinements.PPadding属性对dxTokenEdit没有影响。 ExpressQuantumTreeList套件 TcxTreeL…

二层交换机和三层交换机到底区别在哪?

你好&#xff0c;这里是网络技术联盟站。 今天我们谈谈二层交换机和三层交换机。 二层交换机的概念和特点 二层交换机是一种工作在数据链路层的网络设备&#xff0c;主要功能是根据数据帧中的MAC地址进行转发&#xff0c;并将这些MAC地址与对应的端口记录在自己内部的一个地…

IDA常用宏定义函数

一.引言 做题目遇到了几个神奇的函数. SDWORD1(x), SDWORD2(x), SHIDWORD(x) 通过查询得知是IDA的宏定义函数 宏定义本身类似字符串替换,假设#define x 666 只是编译器在预处理阶段进行宏展开,将所有的x替换为666,然后再进行编译 二.IDA宏定义头文件 可以在路径\IDA_Pro_7.7…

Dubbo2.7 纯注解使用+ Nacos + Springboot 整合集成

Dubbo2.7 纯注解使用 NacosSpringboot 环境准备篇相关依赖nacos准备代码编写服务提供者服务使用者整体结构图 结果 常规操作篇服务分组服务版本参数传递泛化调用参数校验只订阅延迟暴露服务端异步回调多协议复用多注册中心本地存根 服务治理篇超时时间重试并发控制权限控制服务…

css04笔记

目录 盒子模型 5.7 外边距折叠现象 – ① 合并现象 5.8 外边距折叠现象 – ② 塌陷现象 5.9 行内元素的margin和padding无效情况 一、结构伪类选择器 &#xff08;了解&#xff09;nth-of-type结构伪类选择器 二、伪元素 三、标准流 四、浮动 浮动的代码&#xff1a; …

用 Pygal 模拟掷骰子

这篇博客&#xff0c;我们将学习使用 python可视化包 Pygal 来生成矢量图形文件。针对于需要在尺寸不同的屏幕上显示的图表具有很大用处。因为它们可以自动缩放&#xff0c;以此来适合观看者的屏幕。 . 在这个项目中&#xff0c;我们将对掷骰子的结果进行分析。掷6面的常规骰子…

<Linux> 基础IO(文件操作、文件描述符fd、重定向)

基础IO&#xff08;文件操作、文件描述符fd、重定向&#xff09; 文章目录 基础IO&#xff08;文件操作、文件描述符fd、重定向&#xff09;一、回顾C和C的文件操作二、C语言文件IO1.什么是当前路径&#xff1f;2.C语言文件接口汇总3.默认打开的三个流 三、系统文件IO1.open2.c…

真题详解(索引长度计算)-软件设计(七十一)

真题详解(哈希冲突)-软件设计&#xff08;七十)https://blog.csdn.net/ke1ying/article/details/130566800 在面向对象系统中&#xff0c;一个类定义了大体相似的对象&#xff0c;这些对象共享_____。 属性和行为。 &#xff08;属性就是状态&#xff09; 数据库主要分为用户…

shapefile.js实现shp数据的上传与展示

概述 shapefile是常见的矢量数据格式&#xff0c;但是由于其文件组成结构很难在webgis上直接展示。本文通过express和compressing实现打包后shapefile文件的上传&#xff0c;并结合shapefile.js实现shapefile数据的转换展示。 实现效果 实现代码 1. 后端实现 router.post(/…