ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021Android进阶学习资料!国内一线互联网公司面试题汇总,成功入职腾讯

2021-08-24 09:31:06  阅读:138  来源: 互联网

标签:入职 面试题 2021Android 管理 技术 能力 程序员 开发 Android


最近很多人说,Android越来越不好找工作了,学习NDK开发会不会好点,今天就聊聊这个问题。是否应该选择学NDK?

1.哪些场景下要用到NDK开发?

跨平台的库,如FFmpeg, skip,weex,
加固,防逆向
签名校验
图片压缩
音视频解码
OpenGL ES 高级特效
热修复 andfix
人脸识别 face++
加密算法
微信apk中的so文件

技术专家VS管理,哪条路更适合你?

工作 3-5 年后已经进阶到高级程序员了,很多人开始面临一个问题:未来发展方向是技术专家还是技术管理,哪一条职业发展路径更适合自己?

选择哪条路线,首先要明确自己想要什么。想做技术还是管理,都跟目标和职业规划有关,每个人的实际情况不同,目标就不同,建议尽量做和自己的性格相符合的选择,并且坚持。哪怕一时半会看不出效果,长期总是能够看到效果的。

1. 怎样的程序员适合做技术专家?

技术专家的核心就是深入而精通。对某个技术领域很熟悉、对代码编写保持热情、持续学习新的技术、能够静下心来做技术,而不是急功近利。性格相对内向、不擅长沟通协调、不希望花大量时间带团队、主要负责把关键技术做到专业和***,这样的人更适合往技术路线发展,比如技术专家,架构师。

2. 怎样的程序员适合转型技术管理?

首先要明确,通常所说的技术管理者都需要做哪些事?

  • 团队建设:人员激励、团队文化、梯队建设。
  • 任务管理:任务分工、任务协作。
  • 管理规划:新技术调研,支撑新业务的重构等。

相应地,需要的能力包括:向上汇报向下传达能力、团队管理能力、人员培养能力、上下游部门合作把控能力、业务需求沟通能力、重大问题的决断能力、长远目标规划能力、执行力等等。

综合来看,管理能力和技术能力的要求差别较大。作为技术管理者首先应该有角色认知的改变,不能以程序员的角度去看待问题,需要站在更高角度,从全局思考问题。推荐有志走管理路线的移动端程序员参考这本书:《成为技术》

3. 两种发展路径的异同点

(1) 不同点:技术专家更依赖个人技术能力,需要结合业务做好技术规划,框架设计,性能优化以及技术创新;技术管理者是协助团队一起把产品做出来,负责团队内外的组织沟通和相互协调。

(2) 相同点:终究需要面对管理,只是管理工作的多和少之分。即使你是架构师,也需要 lead 一个技术团队。

因此,不论你未来是走纯技术路线还是非技术路线,都需要增长自己的管理技能,因为到***总归是需要管理沟通的。当你级别非常高,却还不跟任何人打交道,完全靠个人能力来贡献的情况是很少见的。

4. 如果选择错误,是否还有二次选择机会?

我认为需要先把职业目标和职业规划想好,经常改变对职业影响较大。

(1) 技术转向管理:要提前掌握相关管理知识并在角色认知上做出改变,以团队为出发点去思考问题,对业务了解更多,提高部门内的影响力,有合适的晋升机会可进行转型。

(2) 管理转回技术:如果你面对诸多跨部门沟通,在性格等因素上感觉不合适,需要尽快做出决策,转回技术开发。

大前端趋势下,移动端程序员如何保持竞争力?

我从招聘网站上摘录了某些一线公司的职位描述要求:

3 年以上工作经验、深入了解移动端的底层和原理、独立主导或开发过一款以上产品的核心项目、丰富的项目经验或管理能力、有 React Native 或者Weex 的实战经验、掌握一些前端开发技术,HTML / JavaScript / CSS 等。前后端开发经历是加分项。

可以看到,市场对 Android 程序员的要求越来越高,除了深入掌握 Android 底层原理,对前端 JS 等技术也有要求。

今天我们已经进入了终端碎片化的时代。从 2007 年 iPhone 代发布至今的 12 年里,智能手机并没有被取代的迹象。但创新仍在继续,比如智能手表、TV、眼镜、头戴 VR 等等,可以想象这样的设备仍会继续增多。

这些新设备也是新平台,与智能手机类似,可以安装第三方应用,且这些平台基本都支持浏览器或内嵌浏览器引擎。早期 Hybrid 和后来 React Native 等探索,在显示终端应用的开发上,前端开发已成为必备技术。

因此,大前端趋势对移动端程序员而言,影响就是新的移动开发技术栈。

移动设备作为主流终端,其应用开发技术也应该是大前端最关注的技术。以前移动开发技术栈以原生开发为主,现在的趋势是跨平台技术愈演愈烈。

那么,在如今技术快速变化的环境下,移动端程序员该如何保持竞争力?

首先,加强 Android / iOS 技术深度储备,深入理解系统底层原理,对新技术持续投入。

其次,逐步完善前端技术栈,广度扩充,熟悉前端 JS,以及 RN,flutter 等跨平台框架。

选择 Android 细分领域并提高,比如应用开发、逆向安全、音视频、车联网、物联网、手机开发、SDK 开发和智能电视盒子开发等等,在其中选择一个并不断深入。

最后

想要了解更多关于大厂面试的同学可以点击这里免费获取《面试文档》除此之外,我也分享一些免费的优质资源,包括:Android学习PDF+架构视频+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。分享给大家,非常适合近期有面试和想在技术道路上继续精进的朋友。快来获取学习资料吧~

标签:入职,面试题,2021Android,管理,技术,能力,程序员,开发,Android
来源: https://www.cnblogs.com/JavaxiaoQ/p/15178783.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有