15 年毕业到现在四年多了,一直都是 Android 开发。想看看大伙对于高级的定义是怎样的。ps:大家有进阶高级的路线推荐一下
1
lk920724 2019-01-13 23:08:57 +08:00
解决大部分问题?(逃...)
|
2
Yyyye 2019-01-13 23:54:20 +08:00 via Android
误解。是否是 Android 高级开发,我的理解是取决于你应聘的公司
|
3
huclengyue 2019-01-14 00:09:36 +08:00 via Android
同 4 年多了,心在了解一些音视频处理,直播,美颜类的,但是就职业发展来说,更输入底层的技术对 Android app 开发来说可能用的比较少吧。目前在学用 flutter。前端后端都有了解一些。其他的目前也不知道干什么😂
|
4
xlsepiphone 2019-01-14 00:10:51 +08:00 via Android
同,想转后端
|
5
Yyyye 2019-01-14 00:12:32 +08:00 via Android
@huclengyue 我最近也在倒腾这个 。
|
6
Yyyye 2019-01-14 00:14:00 +08:00 via Android
@huclengyue 大佬搞音视频,需要倒腾 opengl 和 c 艹么(我也三四年了
|
7
Lonely 2019-01-14 00:16:52 +08:00
可以看下 BAT 的招聘要求
|
8
xlsepiphone 2019-01-14 00:17:44 +08:00 via Android
@Yyyye 要懂 cpp,不然怎么定制 ijk 这些开源播放器。
|
9
hyyou2010 2019-01-14 00:26:21 +08:00
我觉得能写比如抖音快手的那个直播面板的主要功能就可以了。
赶紧学 flutter。 |
10
Trumeet 2019-01-14 00:38:57 +08:00 via Android
学习 Framework、Kernel、各种驱动 自己搞 ROM ?(逃
|
11
socradi 2019-01-14 07:38:11 +08:00 via Android
初级开发只是在会用的层面,高级会熟悉底层实现
|
12
glenChen 2019-01-14 08:05:31 +08:00 via Android
请问一下为啥做 android 好好的都想转后端呢,我还想转 android 呢,有人告诉我为啥嘛
|
13
everwanna 2019-01-14 08:35:30 +08:00 via Android
会用常见的库解决常见问题后,中级技术人员常有这种困惑。我理解,要看你自己的技术发展方向,每个方向的技术都有深浅,而无所谓高级。
如果你希望走 app 方向,你可能需要对 app 技术架构有更多钻研。android 整体的技术框架和演进方向你能够把握多少?和 android OS 的开发者能否技术同步? ios, windows, reactive native, xamarin 等技术的优缺点是否了如指掌?工作中是否能够借鉴并运用自如?复杂的大型 app, 平台型 app 从粗到细的架构和关键技术是否有能力把握。 其他方向也类似,有人研究内存分配也能搞一辈子,所以更多的是关注自己的方向 |
14
kx5d62Jn1J9MjoXP 2019-01-14 08:50:31 +08:00 via Android
ios, windows, reactive native, xamarin 等技术的优缺点是否了如指掌
😂😂😂😂😂 此等牛人地球上找得到吗? |
15
huclengyue 2019-01-14 09:20:35 +08:00 via Android
@Yyyye opencv opengl 都要搞。不过很多公司用不到,或者只是简单的拍照美颜。基本很少需要一些加特效的需求。除非那种大厂,现在更多关注 flutter 了。已经在项目里实践了。
|
16
huclengyue 2019-01-14 09:21:51 +08:00 via Android
@hyyou2010 这个不是太难吧。难得是类似抖音那种录制功能。
|
17
huclengyue 2019-01-14 09:23:52 +08:00 via Android
还是多看看新闻,Google 的新系统 3-5 年就要出来了,肯定要替代 Android 的。现在学学 flutter 没错的
|
20
hyyou2010 2019-01-14 11:14:35 +08:00
再补充:
1,根据工作需要来判断,而不是一定要钻研底层,除非你改做底层工作,或除非你业余爱好。内核及底层和 app 开发基本没关系。我推荐做一个能解决实际问题的人而不是有屠龙技的人。 2,根据技术走势来判断。很显然现在的走势是跨平台。你深挖 Android 各种犄角旮答成为专家,结果 2 年后 flutter 逐渐替换 Android 你怎么办? |
21
hyyou2010 2019-01-14 11:19:10 +08:00
@huclengyue 那些美颜效果,道具什么的?那是很难,反正我是不懂。不过应该算 Android 技术范畴之外了,算图像处理吧
|
23
wizardoz 2019-01-14 11:46:37 +08:00
我个人的看法,高级和初级的区别主要在解决问题的方式上,而不是在于能解决什么问题上。
我工作了很多年,我并不觉得现在解决的哪个问题是我大学刚毕业的时候解决不了的。 但是同样的问题,我现在干起来会快很多。因为见的框架多了,理解一个新的东西会比原来快。 |
24
wizardoz 2019-01-14 11:47:53 +08:00
当然也有可能是因为我太菜,一直混迹于初级水平也说不定。
|
25
auv1107 2019-01-14 11:56:53 +08:00
按公司 title 来说,工作经验多了就是高级了吧。
但是从技术方面讲,我认为应该是能做到专精某一个方向的技术。(安卓看似简单,实际也是有不少选择方向) 1. 底层 向原理方向发展 2. 项目结构 和建筑设计师一样,虽然不同的设计师盖一座楼,出来的样子是一样。但是设计的结构,利用的资源可能差别很大 3. 效率方面 看看大神 JakeWharton 的 github,维护或开发 okhttp、retrofit、hugo 这类旨在提升代码效率的三方库 4. 性能优化 5. 实用类技术 前些年火热的插件化、热更新技术、音视频多媒体等 6. 等等 不管哪个方向,做到专精,就可以不枉高级之名了吧 |
26
zpxshl 2019-01-14 12:38:02 +08:00 via Android
@glenChen 过几年 Android 还在不在是个问题。在的话,原生开发还有没有人要也是个问题。
|
28
closedevice 2019-01-14 12:58:29 +08:00
对于应用开发者而言,高级工程师意味着上能搞定大部分需求,hold 某条业务线,其次能根据实际情况造业务轮子,持续推动并改进技术框架,比如你觉得 OKHTTP 某些点设计有缺陷或者功能有确定,能发现并在此基础上设计和改良;下能熟悉系统的相关原理(通常是几个模块),举个例子,对于常用 Activity 你能知道他的好坏,如果让你自己抛开 Activity,你能自己撸出一套类似的存在,再深入一点就是计算机基础相对扎实,知其然更知其所以然,比你周围大部分人要深入一点.
总之对应 Android 研发而言,做界面画 UI 是基础,既需要纵向深入也需要横向扩展.在比如目前新技术 flutter,很多人喜欢很多人讨厌,但背后我们要确定的是 flutter 如何实现夸端的?为什么 Flutter 相对原生开发效率几乎没有损耗甚至要好一些. 当然所谓的高级也是分领域的,比如音视频领域的高级工程师,或者系统领域的高级工程师.穷极一生,对我们这些普通人,能在成为一个领域的高级工程师已经实属不易. 以上纯属我胡说八道,别信. |
29
closedevice 2019-01-14 12:59:35 +08:00
@glenChen 因为大多数做 Android 在处于初级段位的时候就觉得已经是天花板了.
|
31
huclengyue 2019-01-14 14:38:30 +08:00 via Android
@hyyou2010 那些用 opencv opengl 就能做出来同样的效果。应该也属于 Android 内吧。毕竟都是在手机上处理的
|
32
wxl1380610 2019-01-14 17:05:58 +08:00
@closedevice 对 ,大部分的需求是用不到很高深的技术 , 干得多了 , 只能说优化优化架构方面 , 团队协作 ,或者只能往广了转了 , 比如 ,其他桌面 ios,window ,前端 , 或者 后台 方面转了 ,
|