首页 > 其他分享 >渣硕Android开发找工作都这么难了吗?千万不要轻易离职......

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......

时间:2023-06-22 10:36:06浏览次数:37  
标签:谈一谈 Java 区别 ...... 面试 谈谈 Android 渣硕


渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java

坐标北京,21年3月毕业工作,北京某大型互联网码农集散基地渣硕背景。

第一份工作在北京的一个80人左右规模的小公司做Android,最近刚刚跳槽成功。

做Android是从19年中旬开始,毕业前的第一份工作和第二份工作都在规模不超过20人的小团队练级,毕业前本来有计划留杭州,也拿到不少心仪Offer,但是为了希望在北京工作的妹纸毅然来了北京,毅然的啥也没想的进了这家80人左右的小公司,原因按下不表,反正现在肠子都悔青了。

前段时间开始准备跳槽,拉钩海投,前前后后不下投了二三十家的高级Android岗,给我最大的感受就是,现在卡年限真的很严——公司不会关心你开始以全职方式做Android是从什么时候开始,而是简单粗暴地计算你毕业到现在工作了多久。

所以很遗憾的虽然我从19年中旬开始就利用读研期间实验室管理松散的优点到处实习累积经验,最后一份工作也是从20年9月到现在差不多一年半的时间,但是人家HR就认你毕业到现在,只工作了一年,那你就是个一年经验的中低级Android,这样的结果就是基本上所有非内推的大厂投出去的简历都挂了,几乎所有内推的高级岗也都挂了。

很难受,但是这就是事实——找工作的人太多,拿年限卡人就是第一道关口,连第一道口都过不去,你拿什么去换工作?

不过好在还有些小公司不那么care年限的事,在我拿到的仅有的一些数百人、千人规模的中小厂的面试机会上面,除了字节因为需要的技术栈不匹配导致面试失败之外,其余只要面试过的都拿到了offer,title / 薪资涨幅也符合我的预期——这或多或少也算给我增加了一些信心,至少在「纯技术」方面,感觉只要给我个面试机会,怎么着都可以跟你好好说道说道,也算是各种不顺里面的一些开心的地方吧,叹气。

不过,最后找到真正满意的工作还是靠的内推……其中的过程曲折就不细讲了,只能说,认识一些靠谱的喷油是多么的重要就是了,比心。所以,如果你准备跳槽,好好联系一下你的在别的团队的小伙伴,如果你们关系够铁,那请不要犹豫了,直接上内推,流程更简单不说,拿了offer你的老铁还能有奖金,爽的一批。

这期间因为离职,也负责前公司的Android招聘。前公司虽然规模不大,但拉钩上JD一挂,也是每天近百封简历的规模,可能是Android的失业人口太多了吧,供需严重不平衡……但是简历虽多,质量却非常堪忧……少有的被HR筛选出来的简历,能够成功约上面试的,要么是「之前干外包,什么都会一点,但是原理都不太了解」,要么是「我之前在大团队做事,只会做业务,原理啥的不太了解」,要么就是「我精通XXX技术,了解XXX原理,干过前后端,当过CTO」结果约来面试连ListView的回收机制都聊不上来,总之质量上是非常闹心。

我这么说的意思是,可能市面上Android程序员确实非常多,自己自学转的、大厂业务团队出来的、应届毕业的等等等等,但是,质量真的普遍不高,真正优秀的Android程序员,对于中小型团队其实还是很稀缺的。

真正优秀的Android程序员是什么样的呢?在我看来,至少得满足以下条件,才能够算得上「优秀」:

  • 对于Android的基础知识足够牢靠
  • 对于Android相关的知识面足够广
  • 对于Android相关底层设计、概念至少有过了解
  • 对于「软件设计」有自己的想法和方法论
  • 对于「编程」具有良好的习惯
  • 易于交往,不是团队气氛破坏者

看上去似乎没那么难?似乎JD里面都会这么写不是吗?但是你又做到了多少呢?每个人都可以这么问问自己。

所以,如果是因为年限问题大公司去不了,其实可以换个思路,一些小而美的团队其实可以是个思路。但是即便是小团队,给你面试机会,你能不能过,那也得看你平时的积累以及面试前的准备。

以上列举的一些条件真的是必要条件,如果这些标准都达不到,那我觉得还是尽量别着急跳槽,好好在原来的公司呆着好好修炼一下自己再说吧。

总结一下

在2022年,Android程序员市场进一步饱和,如果你只是个「会写点业务」的程序员,请继续留在你的上家公司好好修炼,别裸辞了;如果你觉得你能力足够胜任但受限于年限不够,可以考虑中小型团队以及内推;如果你觉得你足够优秀并且年限也足够,那就直接奔着最好的那几家公司去吧,坑位足够。

最后,分享一份我在GitHub上看到的已经标星6.8K的大厂面试题,希望能帮到在这条路上一路走到黑的朋友:

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Kotlin_02

这份资料包含了Java和Android两大部分,由于篇幅原因,这里只展示部分知识点,有需要的朋友直接滑到文末免费领取。【保证100%免费】

第一章 Java 方面

第一节 Java 基础部分
第二节 Java 集合
第三节 Java 多线程
第四节 Java 虚拟机

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java_03

第二章 Android 方面

第一节 Android 四大组件相关
  • Activity 与 Fragment 之间常见的几种通信方式?
  • LaunchMode 的应用场景?
  • BroadcastReceiver 与LocalBroadcastReceiver 有什么区别?
  • 对于 Context,你了解多少?
  • IntentFilter是什么?有哪些使用场景?
  • 谈一谈startService和bindService的区别,生命周期以及使用场景?
  • Service如何进行保活?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Kotlin_04

第二节 Android 异步任务和消息机制
  • HandlerThread 的使用场景和用法?
  • IntentService 的应用场景和使用姿势?
  • AsyncTask的优点和缺点?
  • 谈谈你对 Activity.runOnUiThread 的理解?
  • 子线程能否更新UI?为什么?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java_05

第三节 Android UI 绘制相关
  • Android 补间动画和属性动画的区别?
  • Window和DecorView是什么?DecorView又是如何和Window建立联系的?
  • 简述一下 Android 中 UI 的刷新机制?
  • LinearLayout, FrameLayout,RelativeLayout 哪个效率高, 为什么?
  • 谈谈Android的事件分发机制?
  • 谈谈自定义View的流程?
  • 针对RecyclerView你做了哪些优化?
  • 谈谈如何优化ListView?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Kotlin_06

第四节 Android 性能调优相关
  • 谈谈你对Android性能优化方面的了解?
  • 一般什么情况下会导致内存泄漏问题?
  • 自定义 Handler 时如何有效地避免内存泄漏问题?
  • 哪些情况下会导致oom问题?
  • ANR 出现的场景以及解决方案?
  • 谈谈Android中内存优化的方式?
  • 谈谈布局优化的技巧?
  • Android 中的图片优化方案?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Kotlin_07

第五节 Android 中的 IPC
  • 请简要谈谈Android系统的架构组成?
  • SharedPreferences 是线程安全的吗?它的 commit 和 apply 方法有什么区别?
  • Serializable和Parcelable的区别?
  • 请简述一下 Android 7.0 的新特性?
  • 谈谈ArrayMap和HashMap的区别?
  • 简要说说 LruCache 的原理?
  • 为什么推荐用SparseArray代替HashMap?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Android_08

第六节 Android 系统 SDK 相关
  • 请简要谈谈Android系统的架构组成?
  • SharedPreferences 是线程安全的吗?它的 commit 和 apply 方法有什么区别?
  • Serializable和Parcelable的区别?
  • 请简述一下 Android 7.0 的新特性?
  • 谈谈ArrayMap和HashMap的区别?
  • 简要说说 LruCache 的原理?
  • 为什么推荐用SparseArray代替HashMap?
  • PathClassLoader和DexClassLoader有何区别?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Kotlin_09

第七节 第三方框架分析
  • 谈一谈LeakCanray的工作原理?
  • 谈一谈EventBus的原理?
  • 谈谈网络请求中的拦截器(Interceptor)?
  • 谈一谈Glide的缓存机制?
  • ViewModel的出现是为了解决什么问题?并简要说说它的内部原理?
  • 请说说依赖注入框架ButterKnife的实现原理?
  • 谈一谈RxJava背压原理?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java_10

第八节 综合技术
  • 请谈谈你对 MVC 和 MVP 的理解?
  • 分别介绍下你所知道Android的几种存储方式?
  • 简述下热修复的原理?
  • 谈谈如何适配更多机型的?
  • 请谈谈你是如何进行多渠道打包的?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java_11

第九节 数据结构方面
  • 什么是冒泡排序?如何优化?
  • 请用 Java 实现一个简单的单链表?
  • 如何反转一个单链表?
  • 谈谈你对时间复杂度和空间复杂度的理解?
  • 谈一谈如何判断一个链表成环?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java_12

第十节 设计模式
  • 请简要谈一谈单例模式?
  • 对于面向对象的六大基本原则了解多少?
  • 请列出几种常见的工厂模式并说明它们的用法?
  • 说说项目中用到的设计模式和使用场景?
  • 什么是代理模式?如何使用?Android源码中的代理模式?
  • 谈一谈单例模式,建造者模式,工厂模式的使用场景?如何合理选择?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Java_13

第十一节 计算机网络方面
  • 请简述 Http 与 Https 的区别?
  • 说一说https,udp,socket区别?
  • 请简述一次http网络请求的过程?
  • 谈一谈TCP/IP三次握手,四次挥手?
  • 为什么说Http是可靠的数据传输协议?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Android_14

第十二节 Kotlin方面
  • 请谈谈Kotlin中的Coroutines,它与线程有什么区别?有哪些优点?
  • Kotlin中该如何安全地处理可空类型?
  • 说说Kotlin中的Any与Java中的Object有何异同?
  • Kotlin中的数据类型有隐式转换吗?为什么?
  • Kotlin中集合遍历有哪几种方式?

渣硕Android开发找工作都这么难了吗?千万不要轻易离职......_Android_15

我个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事。所以,劝各位不要因为面试失败而灰心、 丧失斗志。也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油!

标签:谈一谈,Java,区别,......,面试,谈谈,Android,渣硕
From: https://blog.51cto.com/u_16163452/6534311

相关文章

  • 给公司面试了五十多个Android开发,我已经吐血身亡了
    身在某二线互联网公司,面试了很多应聘安卓岗位的程序员。符合要求的很少,目前来看也就百分之五左右。我面试Android的时候一般都是先看看面试者的Java基础知识,然后是一些基本的数据结构和基本的算法。然后是一些面向对象的思想,最后是Android。因为任务基础扎实了,面向对象的思想有了,开......
  • 【金三银四】2022Android面经新鲜出炉啦
    前言春水初盛,垂钓者络绎不绝,鱼儿按捺不住,拍打着尾鳍纷纷跃出水面,沽个好价。本篇真实的记录了我从准备->复习->面试的全过程,分享一些我的真实经验,希望能帮到大家。准备工作开始准备工作之前,首先思考几个问题:如何准备需要复习哪些东西该怎么复习怎么复习最高效职业规划如何准备,从哪......
  • Android Handler消息机制详解
    在Android中,只有主线程才能更新UI,但是主线程不能进行耗时操作,否则会产生ANR异常,所以常常把耗时操作放到其他子线程进行。如果在子线程中需要更新UI,一般都是通过Handler发送消息,主线接收消息后进行相应的UI逻辑处理。一.什么是HandlerHandler是一个消息分发对象。Handler是Andr......
  • Android仿微信图片浏览
    实现原理自定义PopupWindow+RecyclerView+TouchImageViewPopupWindow与AlertDialog的区别最关键的区别是AlertDialog不能指定显示位置,只能默认显示在屏幕最中间(当然也可以通过设置WindowManager参数来改变位置)。而PopupWindow是可以指定显示位置的,十分灵活。要生成一个PopupWindow......
  • Android 的下一个风口在哪里 ? 车载、智能家具、音视频。。。
    现在客户端卷的风起云涌,很多安卓开发者都是抱怨连天。内卷之下,相比本来就堪忧的发量,前途未卜的迷茫带来的精神折磨更是雪上加霜。在突破内卷这件事儿上,很多开发者都把目光对准了车企:智能座舱、车载系统,看起来都是不错的方向。那么我们来看一看,想要成功转型,最需要具备的素质是什么:想......
  • 以阿里社招Android面试为例,详讲面对面试官到面试中到面试结束
    前言今天有个小伙伴和我说,Android技术还行,主要是对面试没什么把握,小编想了想,不该是多半面试题都会迎难而解,怎么会什么把握呢?但仔细又一想,技术和面试也是两回事,技术可以也不代表面试就可以过,那咱们就来好好叨叨该如何去面试面对面试官我在网上看到了很多面试官的分享,他们面过上百人,......
  • 写给女*友的中级Android面试秘籍(含详细答案,15k级别)
    前言本篇文章,献给我家女朋友,祝她在杭州找一个965的好公司!因为Android面试考点众多,而网上各个知识点的博客文章又太多,看的眼花缭乱……所以便整理了一下常见考点的精华回答,尽量覆盖该知识点的下容易被面试到的所有内容。面试题都整理成了PDF文档,包含Java基础、Android基础、UI控件篇......
  • 为什么Android面试总是被问到性能优化问题?
    随着Android开发越来越规范,国内工程师的素质,以及用户对产品的要求也越来越高。这也间接导致我们对研发项目的质量要求到了近乎苛刻的地步,内存优化、UI卡顿优化、App崩溃监控等性能调优也逐渐成了人手必备的技能。工作之余,难免让我们感慨学无止境,以及Android开发也是水深不......
  • Android面试题:Handler、Binder、AMS、WMS面试必问题(带答案,万字总结,精心打磨,快收藏)
    前言业内一直有一个说法:技术好的未必底层够硬,但底层扎实的学起来进步如飞。这也是为什么如今的大厂都非常注重对底层原理的考察:除了可以看出面试者的即战力,底层原理更能看出一个开发者的发展潜力。大家对此应该也深有感受,在面试的过程中,底层原理是无论如何都躲不过去的一关。最典型......
  • 牛掰,阿里P7程序员花了半个月,编成这份1880页的《Android百大框架源码解析》,快来收藏
    为什么要深入了解源码?只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是浮于表象,这对我们的知识体系的建立和完备以及实战技术的提升都是不利的。真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读Android系统源码,还包括各种优秀的开源库。一方面,这些作品都......