如今的职场,风险是越来越高,不管你是应届生或者你是否中年,遇到好点的企业,红火那么做个三五年,运气不好,半年甚至2、3个月也就玩完了。

所以,即使你希望工作能稳定,但也会让你大失所望,职场寿命就那么几年,换多次工作已是必然。

虽说裁员这事或许是天注定的事,但作为一个职场人,笔者建议你还是要提前有个大致准备的,至少提前有个心理准备,也就是忧患意识。

笔者为你分享一篇网友的真实案例,你能看到,那你就是幸运的。

我是怎么也想不到裁员这件事情会轮到我头上,虽然没有很突出的成绩,可是交给我的任务也尽职尽力做好了,忙季的时候我也天天加班到11点,有一天晚上加班到凌晨3点,到家都四点了。

劳动节放假出去玩了几天,回来没多久公司就以资金困难,亏损较大为理由将我们整个技术部裁掉,我失业了。

本来我们家去年刚买了新房,已经打算要小孩了,感觉一切都在轨道上,一下子给我来了这么一出,现在是要还是不要呢,小孩儿出生、上学又要一大笔钱,心里好乱。

且不说现在适合我的工作没那么好找(毕竟我已经有多年工作经验,entry level的打杂职位我肯定不去),高级的技术岗别人估计不会要我,数据结构和算法的功底一般,在开发过程中只是浮在表面,忽略底层源码分析。

之后一个礼拜,我开始每天复习面试题,刷力扣和剑指offer,并且重新做了简历。不管怎样,工作还是要找的,不然每个月的房贷怎么办,还好之前就有危机意识,存够了一年的房贷,让我现在有了喘气的机会。

在被裁员的四个月之后,我面试了京东、高德及两个公司的分公司,虽然四次面试有三次失败,但也成功拿下了京东金融Android研发岗的offer,这3个月的时间里,我并未气馁,也未选择转行,而是静下心来复习好一些理论,鼓起了勇气给京东投了我的简历。

京东金融

面试机会来自于朋友内推

一面:

  • 四大组件
  • 广播分类-有序广播和无序广播的区别
  • service生命周期 / onStartCommand的返回值有什么作用
  • Activity生命周期 / 启动模式 / 各种启动模式下的startActivityForResult
  • android 7.0 8.0 9.0的新特性
  • 讲一讲android的动画
  • 怎么实现多线程
  • 线程间怎么通信
  • handler机制
  • handler的post/postDelay怎么做的
  • looper和线程是怎么对应的
  • 所有的view都不可以在子线程更新吗
  • java 三大特性
  • 接口和抽象类的区别
  • 注解了解吗
  • 反射说一下
  • java的引用
  • 讲一讲垃圾回收/gcroots是啥
  • 加密了解吗
  • 说一说http和https的区别

二面:

  • 简单说下项目
  • 内存泄露,如何检测以及检测的原理
  • 点击Launcher跟点击微信支付启动微信有什么区别
  • 逆序一个字符串,不能调用String的reverse方法(考察编码风格)
  • 组件化原理,模块化机制
  • 没有给权限如何定位,特定机型定位失败,如何解决
  • 同步跟异步机制(是业务上的,不知道他想问什么)
  • 线程池中核心线程数跟最大线程数如何定义

HR面

感觉人均hr面了,就是走个过场的感觉,hr说九月底会有结果,多多关注官网的状态。就结束啦。
佛系等结果。

过了半个月的样子就收到录用函啦。

面试大厂前的系统复习路线

有时候,选择比努力更加重要,机遇比奋斗更加重要。但是,机会只留给有准备的人。我们只有时刻准备着,才能在机会到来的时候,去抓住它。

这里给大家分享一下我的面试复习路线,有需要的朋友可以参考一下:

1、看视频进行系统学习

前几年的Crud经历,让我明白自己真的算是菜鸡中的战斗机,也正因为Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去B站进行学习,B站上有很多学习视频,唯一的缺点就是免费的容易过时。

2、进行系统梳理知识,提升储备

客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

系统学习方向:

  • 架构师筑基必备技能:深入Java泛型+注解深入浅出+并发编程+数据传输与序列化+Java虚拟机原理+反射与类加载+动态代理+高效IO

  • Android高级UI与FrameWork源码:高级UI晋升+Framework内核解析+Android组件内核+数据持久化

  • 360°全方面性能调优:设计思想与代码质量优化+程序性能优化+开发效率优化

  • 解读开源框架设计思想:热修复设计+插件化框架解读+组件化框架设计+图片加载框架+网络访问框架设计+RXJava响应式编程框架设计+IOC架构设计+Android架构组件Jetpack

  • NDK模块开发:NDK基础知识体系+底层图片处理+音视频开发

  • 微信小程序:小程序介绍+UI开发+API操作+微信对接

  • Hybrid 开发与Flutter:Html5项目实战+Flutter进阶

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

3、读源码,看实战笔记,学习大神思路

“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。

①Android相关源码精编解析

②高级Android组件化强化实战

③深入理解Android插件化技术

4、持续刷题

面试前三个月我开始刷题了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。

关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:

以上内容均免费分享给大家,需要完整版的朋友,点这里可以看到全部内容

2020年虽然路途坎坷,都在说Android要没落,但是,不要慌,做自己的计划,学自己的习,竞争无处不在,每个行业都是如此。相信自己,没有做不到的,只有想不到的。祝大家2021年万事大吉。

我,Android开发5年,32岁失业,现实给我狠狠上了一课!的更多相关文章

  1. Android开发学习之路-记一次CSDN公开课

    今天的CSDN公开课Android事件处理重难点快速掌握中老师讲到一个概念我觉得不正确. 原话是这样的:点击事件可以通过事件监听和回调两种方法实现. 我一听到之后我的表情是这样的: 这跟我学的看的都不 ...

  2. 【转】Android开发笔记(序)写在前面的目录

    原文:http://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经 ...

  3. 【我的Android进阶之旅】快速创建和根据不同的版本类型(Dev、Beta、Release)发布Android 开发库到Maven私服

    前言 由于项目越来越多,有很多公共的代码都可以抽取出一个开发库出来传到公司搭建好的Maven私服,以供大家使用. 之前搭建的Maven仓库只有Release和Snapshot两个仓库,最近由于开发库有 ...

  4. Android开发学习-view

    题记:抱着对Android开发的浓厚兴趣,加入了Study jams的线上学习小组,开启了自己的Android学习之旅.一.学习前准备:1.自己动手搭建了"Android Studio&qu ...

  5. Android开发技术周报176学习记录

    Android开发技术周报176学习记录 教程 当 OkHttp 遇上 Http 2.0 http://fucknmb.com/2018/04/16/%E5%BD%93OkHttp%E9%81%87% ...

  6. Android开发失业六个月了,无限的焦虑

    最近到网上看到这样一个帖子: Android开发,坐标魔都:目前为止已经失业六个月,找工作期间,尤其是最近两天确实心态不好.要么没有面试,要么给的工资不符合预期( hr 压价太狠了,原先说的 19k, ...

  7. Android开发失业50天,面了10家公司,唯二的offer也主动拒了

    最近在论坛看到这样一个帖子: 坐标深圳. 4 月上旬公司解散.(现在想想好像是假解散,真裁员) 这一个半月以来,从朋友内推,到拉勾.Boss 直聘,再到猎聘.智联招聘. 从开始的精准投递,到后来的海投 ...

  8. 我,35岁Android开发,高龄入职鹅厂,试用期未过被劝退......今年实惨

    今天,笔者盘点.综合分享一位腾讯员工的"心声".这份心声中干货还是不少的,主要关于腾讯的一些职场生活--希望这些"干货"能对你有所帮助. 什么部门?给补偿吗? ...

  9. 干了六年Android开发现在裸辞失业了,再过2个月就30了,该怎么继续生活?

    这是我在某论坛看到别人分享的故事,觉得可以展开聊一下,对于我们这些中年程序员,可以裸辞吗? 前言 首先介绍一下主人公的情况.目前所在的是一家小的创业公司,待了3年多,薪资一般吧,之前在一家中型上市企业 ...

随机推荐

  1. codeforces 830E dp

    大致题意: n场比赛,k个钱币.赢一场获得一个钱币,输一场失去一个钱币,一旦钱币数量为2k个或者0个,就马上离开比赛.给出n个长度字符串,由W,D,L,?四个字符组成,W表示赢,L表示输,D表示平局, ...

  2. 查看JVM中的线程名

    实例说明 在Java虚拟机中(JVM):除了用户创建的线程,还有服务于用户线程的其他线程.它们根据不同的用途被分到不同的组中进行管理.本实例将演示JVM中线程的名字及其所在组的名称. 关键技术 线程组 ...

  3. 用“kill”命令来强制终结某个行为或失常的应用和命令

    ​       首先让我们先了解"kill"命令,无论你使用哪种操作系统,你一定会遇到某个行为失常的应用,它把自己锁死并拒绝关闭.在Linux(还有Mac),你可以用一个" ...

  4. [心得体会]mysql复习

    1. 进入企业需要注意的事情 (1) 查看测试服和本地的mysql版本是否一致(2) 确认sql_mode是否和线上版本一致 show VARIABLES LIKE 'sql_mode'; (3) m ...

  5. 在 Docker 上配置 Oracle

    地址:https://github.com/wnameless/docker-oracle-xe-11g .直接 git clone 到本地就行了 ##安装 docker shell 下: docke ...

  6. ROS2学习之旅(4)——理解ROS2 Graph中的节点

    ROS(2)图(ROS(2) graph)是一个同时处理数据的基于ROS2元素的网络,它包含了所有的可执行文件以及它们之间的连接.图中的基本元素包括:节点(nodes).话题(topics).服务(s ...

  7. MYSQL_Join注入技巧

    Join注入技巧 join无名列报错注入 约束条件 在知到表名的前提下才能操作 注入语句 and extractvalue(1,concat(0x7e,(select * from (select * ...

  8. Python单元测试框架unittest之断言(assert)

    unittest中断言主要有三种类型: 1.基本的布尔断言,即:要么正确,要么错误的验证 2.比较断言,如比较两个变量的值(跟上面的布尔断言区别不大,主要是通过比较两个变量的值得出布尔值) 3.复杂断 ...

  9. asp.net c#从SQL2008读取图片显示到网页

    //图像数据表:tx//字段id (nvarchar(50) ,image(image)//tgav为图片ID,实质为上传前的主名 (省略了.jpg) using System; using Syst ...

  10. java编译通过,运行却提示找不到或无法加载主类

    问题: HelloWorld.java 1 package myP101; 2 3 public class HelloWorld { 4 public static void main(String ...