V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zecsan
V2EX  ›  程序员

工作近 8 年的 Android 开发应该具备怎么样的项目经验才能进大厂?

  •  
  •   zecsan · 2020-12-12 12:49:06 +08:00 · 2226 次点击
    这是一个创建于 1432 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我工作 7 年多,快 8 年了,一直在中小公司做 Android 开发。前一段时间去面了腾讯,面了四个部门都没有通过第一面,这下才知道自己的能力远未达到大厂的要求。

    工作的前几年,没意识到要抓紧时间提升自己的技术,满足于在中小厂做简单的需求,加班不严重,日子过得也算舒服。不过现在看来,这真的是温水煮青蛙,自己不知不觉间成了把一年经验用了七年的人,技术深度不够,也没突出的项目经验,进大厂的路算是堵死了,不过后悔也已经没有用了。

    虽然按我现在的情况进大厂不太现实,但还是想准备准备再冲击一下。个人感觉比较缺有亮点的项目经验,但不太了解以我的工作年限怎么样的项目经验才算有亮点,请问各位有没有什么建议,可以举一些例子吗?

    附上我简历上的一部分项目经验(隐去了公司信息):

    XX 新闻
    项目简介:
    XX 公司推出的新闻资讯 app 。

    我的职责:
    1 、负责推送 SDK 的接入工作。
    2 、负责公共 UI 组件的开发和优化工作。
    3 、负责网络模块的性能优化工作。

    具体实现:
    1 、实现推送功能的统一模块,对上层业务屏蔽了各个推送 SDK 的差异。
    2 、自定义对象池以缓存并复用自定义 View 绘制过程中频繁使用的对象。
    3 、为 app 的请求模块增加重试和缓存功能。

    项目贡献:
    1 、提升了推送功能的接入效率,公司的其他两款新 app 通过引入统一推送模块,仅用了半天就接入了多家公司的推送功能。
    2 、避免了 app 界面绘制过程中出现严重的内存抖动,降低了界面的卡顿频率。
    3 、我的关注、搜索等业务 Http 请求时延下降了 20%,失败率下降了 10%。

    XX 商城
    项目简介:
    XX 公司推出的在线购物 app,包括商品推荐、商品搜索和商品下单等模块。

    我的职责:
    1 、负责商品推荐模块的功能开发和维护的工作。
    2 、负责 app 性能优化相关工作。

    具体实现:
    1 、使用 LruCache 实现商品推荐页的图片缓存。
    2 、实现页面中的部分 View 的懒加载,降低页面的复杂度。
    3 、实现 app 启动过程中部分任务的异步化和延迟加载。

    项目贡献:
    1 、提升了商品推荐页的流畅度。
    2 、app 启动时长缩短了 30%。
    10 条回复    2020-12-14 10:12:31 +08:00
    fengjianxinghun
        1
    fengjianxinghun  
       2020-12-12 14:18:05 +08:00
    年纪越大这种经验进大厂都是减分。。
    感觉只能说 github xxx 1k+ star 的安卓框架项目是我写的才有点用了。。
    tomato1111
        2
    tomato1111  
       2020-12-12 15:18:41 +08:00
    前端内卷太严重了,我觉得还是转行后端可能更好
    joyhub2140
        3
    joyhub2140  
       2020-12-12 17:12:49 +08:00 via Android
    spring 程序员,vue 程序员一样的境地。
    pkupyx
        4
    pkupyx  
       2020-12-12 19:07:19 +08:00
    只说项目而言,使用量,稳定性,多版本迭代甚至重构经验,中大型项目的模块化组件化。
    软件是个工程,有了规模才有技术亮点。说白了,就是什么事情修公厕不需要,而修 30 层楼房一定经历过。
    symeonchen
        5
    symeonchen  
       2020-12-12 20:44:59 +08:00
    深度也是需要的,举个例子,“启动加速 30%”这是可以深入谈的点,“异步和延迟加载”就让人失去兴趣了,因为这是很寻常也很基础的方案,如果你给的是数字,比如冷启动速度达到多少秒,对标业内什么规模的应用,那么就很容易让人明白大概是做到什么样的深度。至于 LRU 、懒加载、缓存、重试,这些确实也很寻常了。可能确实没机会把某一个点花很多时间去做,那只能其他方面更出彩些了。一点拙见,抛砖引玉。
    e583409
        6
    e583409  
       2020-12-13 17:15:55 +08:00
    要搞明白 进大厂图什么?
    janus77
        7
    janus77  
       2020-12-13 18:28:41 +08:00
    8 年经验我觉得至少要达到精通某一技术的程度吧,需要一个专精技能点。
    比如热修复 /插件化,你可以自己写一个初具雏形的热修复 /插件化框架。
    比如音视频,你可以自己写一个 /长期维护一个通用度比较高的播放器框架。
    比如 ui 层的话,你可以自定义一个 DSL 或者和 canvas 同层的框架(完成度不做要求,主要考察原理掌握)

    总而言之,T 型人才,至少要有个深入的方面。
    QBugHunter
        8
    QBugHunter  
       2020-12-13 20:54:34 +08:00
    楼主你用度娘搜索下,看下你的那几条贡献,直接复制-》搜索,有没有出来一大堆正确的答案。
    如果有,那你写这些有什么用?

    个人始终觉得,进大厂(这里不是指规模,而是待遇)要有拿得出手的项目。

    最不济,重复造轮子,比如实现 EventBus,GreenDao 的全部或部分功能,再基于你自己的想法加上 /改变其中一些,都比你写的这些有用多了
    YouKnowIt
        9
    YouKnowIt  
       2020-12-13 22:03:58 +08:00
    不一定是个人能力不行,可能仅仅是那个坑位的 leader 和你同龄,或者比你还小
    zzghy
        10
    zzghy  
       2020-12-14 10:12:31 +08:00
    换个赛道吧 。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4881 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 04:00 · PVG 12:00 · LAX 20:00 · JFK 23:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.