年过40的前华为工程师,来面P7技术专家,你猜最后通过了吗?

Posted 陈京大帅比

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了年过40的前华为工程师,来面P7技术专家,你猜最后通过了吗?相关的知识,希望对你有一定的参考价值。

候选人背景


性别:男

年龄:41

学校:西安某985本科+硕士

工作经历:华为、数字浙江、其他公司等。

应聘岗位:android开发-P7技术专家

面试过程


首先候选人自我介绍。

候选人05年硕士毕业后进入华为,早年的华为还是以运营商相关的电信软硬件为主要业务。候选人简单说了从事的移动端短信彩信业务开发,java为主要语言。在华为大概6年时间。

之后离职去了一家小公司。在这家小公司从事高级开发和一定的架构设计工作。

最近的2份工作,介绍了在数字浙江里面的工作,算是架构师或者开发经理角色。

最近一份工作由于疫情原因,项目组缩减,出来看机会。

华为虽然是加分项,但是这段经历由于时间太久,而且使用的技术和当前互联网技术相差较大,所以面试时并不会作为考察重点。 最近的工作往往是考察重点。用到的技术,担任的职责和成果,都是让候选人可以脱颖而出的亮点。

我开始提问。

我一般会根据简历中的几份工作挑几个点问,再根据候选人回答情况深入询问。由于本人也是从ICT行业转到互联网,所以针对华为的工作经历聊一下当时的平台技术。很明显,候选人由于工作时间久远,已经不能很清楚回答在华为的工作内容。

然后是针对最近的数字浙江公司担任的工作职责和用到的技术询问。

候选人介绍了项目框架、用到的技术栈和自己的成果。

这里候选人回答的比较多,但是没有突出技术亮点,单纯的使用开源框架,是不能为自己的架构师身份增加亮点。

如果用到开源框架,可以说明针对开源框架的封装、定制、改造或者贡献,如果实在没有,也要说明在项目中为什么选择这个开源框架,以及使用这个开源框架对项目带来的提升。

下面是Android架构技术的提问,并由此发散。

项目中使用的缓存技术?

android 应用对内存是如何限制的?我们应该如何合理使用内存?

屏幕适配方式都有哪些?如何实现?

事件分发机制相关问题?

针对以上问题,候选人回答比较浅显,可见在实际工作中并没有深入理解和思考项目中技术难点。作为10年以上的架构师,要能够很清晰地知道自己项目的难点?使用什么方案解决最合适,适合自己项目的方案才是最合适的。

面试结果


综合工作年限和实际技能程度,未通过。

面试建议


一般40岁的候选人级别在P8/P9,所以技术深度和行业影响力是决定是否被录用的关键。本次的候选人40岁并未达到P7标准,实属遗憾。

程序员的35岁是一道坎,这里是人生的分水岭,也是技术的分水岭。

建议候选人在以后工作中更加深入了解项目和技术,同时关注互联网技术,时刻准备用最合适的技术解决可预见性的项目问题。

技术学习分享


最后的话做一个Android架构师的进阶学习路线及笔记资料分享,希望能帮助到有需要的朋友。

  • 架构师筑基必备技能

目前Android APP开发主流语言就是Java语言,Java语言最大的特性就是提高了软件的交互可能性,可以说安卓手机几乎所有应用程序都是利用Java语言来进行编写的。

知识要点:
1、深入理解Java泛型
2、注解深入浅出
3、并发编程
4、数据传输与序列化
5、Java虚拟机原理
6、高效IO

架构师筑基必备技能

  • 设计思想解读开源框架

随着互联网企业的不断发展,产品项目中的模块越来越多,用户体验要求也越来越高,想实现小步快跑、快速迭代的目的越来越难,插件化技术应用而生。如果没有插件化技术,美团、淘宝这些集成了大量“app”的应用,可能会有几个g那么大。

所以,当今的Android移动开发,不会热修复、插件化、组件化,80%以上的面试都过不了。

知识要点:
1、热修复设计
2、插件化框架设计
3、组件化框架设计
4、图片加载框架
5、网络访问框架设计
6、RXJava响应式编程框架设计

设计思想解读开源框架

  • 360°全方位性能调优

在不同层次的开发工程师手里,因为技术水平的参差不齐,即使很多手机在跑分软件性能非常高,打开应用依然存在卡顿现象。

另外,随着产品内容迭代,功能越来越复杂,UI页面也越来越丰富,也成为流畅运行的一种阻碍。综上所述,对APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。

1、设计思想与代码质量优化

2、程序性能优化

  • 启动速度与执行效率优化
  • 布局检测与优化
  • 内存优化
  • 耗电优化
  • 网络传输与数据储存优化
  • APK大小优化

3、开发效率优化

  • 分布式版本控制系统Git
  • 自动化构建系统Gradle

4、项目实战

  • 启动速度
  • 流畅度
  • 抖音在APK包大小资源优化的实践
  • 优酷响应式布局技术全解析
  • 网络优化
  • 手机淘宝双十一性能优化项目揭秘
  • 高德APP全链路源码依赖分析
  • 彻底干掉OOM的实战经验分享
  • 微信Android终端内存优化实践

360°全方位性能调优

  • Android框架体系架构

Android框架体系架构(高级UI+FrameWork源码) 这块知识是现今使用者最多的,我们称之Android2013~2016年的技术。

Android开发者也往往因为网上Copy代码习惯了而导致对这块经常“使用”的代码熟悉而又陌生:熟悉的是几乎天天在和它们打交道, 天天在复制这些代码 ;陌生的是虽然天天和这些代码打交道,但是并没有深入研究过这些代码的原理,代码深处的内涵。

本篇知识要点:
1、高级UI晋升
2、Android内核组件
3、大型项目必备IPC
4、数据持久与序列化
5、Framework内核解析

Android框架体系架构

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

NDK(Native Development Kit缩写)一种基于原生程序接口的软件开发工具包,可以让您在 Android 应用中利用 C 和 C++ 代码的工具。通过此工具开发的程序直接在本地运行,而不是虚拟机。

在Android中,NDK是一系列工具的集合,主要用于扩展Android SDK。NDK提供了一系列的工具可以帮助开发者快速的开发C或C++的动态库,并能自动将so和Java应用一起打包成apk。

本篇知识要点:
1、NDK开发之C/C++入门
2、JNI模块开发
3、Linux编程
4、底层图片处理
5、音视频开发
6、机器学习

NDK模块开发

  • Flutter学习进阶

2019 年无疑是 Flutter 技术如火如荼发展的一年。

每一个移动开发者都在为 Flutter 带来的“快速开发、富有表现力和灵活的 UI、原生性能”的特色和理念而痴狂,从超级 App 到独立应用,从纯 Flutter 到混合栈,开发者们在不同的场景下乐此不疲的探索和应用着 Flutter 技术,也在面临着各种各样不同的挑战。

本篇知识要点:
1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter Dart语言系统入门

Flutter学习

  • 微信小程序开发

微信小程序作为现在比较火的编程开发应用场景之一,深受市场的青睐,这让不少开发者眼馋不已。但是对于初学者来说,就完全摸不着头脑了,不知道微信小程序开发制作需要学习那些知识,有需要的朋友可以参考本篇。

本篇知识要点:
1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战

微信小程序开发

  • Android相关源码解读
    只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

Android相关源码解读
Android相关源码解读部分内容

由于篇幅原因,以上完整学习笔记pdf如有需要,可以 点赞+评论 支持下我,然后点击这里免费自取

以上是关于年过40的前华为工程师,来面P7技术专家,你猜最后通过了吗?的主要内容,如果未能解决你的问题,请参考以下文章

阿里月薪6W招程序员,看到要求我傻眼了!

美团北京内推: 推荐算法高级工程师/技术专家;搜索架构高级工程师/技术专家

从月薪40K~70K,从弱鸡程序员到P7技术栈精通,我是怎么过来的?

从月薪40K~70K,从弱鸡程序员到P7技术栈精通,我是怎么过来的?

要不是和阿里P6聊过,到死也不知道自己原来啥也不是

算法直聘淘宝推荐算法部-推荐&NLP P5/P6/P7