“我天天curd,怎么才能成长?” 老板:别长了,你这样挺好!

文章探讨了程序员工作中常见的curd角色,强调自嘲背后是乐观面对工作的态度,同时提出分析原因、改进工作方法,如复用和抽象编程,以及如何设定目标、提升自我,以突破日常重复劳动。文中还提供了面试技巧和职业发展路径,包括学习体系、性能优化和面试策略。
摘要由CSDN通过智能技术生成

“你就是一个curd boy”

“就你叫curder啊”

“你不写代码,你只是代码的搬运工”

上面几段话,程序员是不是经常听到或者看到。这几句话说明了什么?

  • 高度概括能力:用几个单词组合,就概括了多数程序员日常的工作情况。

  • 自嘲:自嘲有时是一种乐观的品质,用一种调侃的方式来看待自身情况。

  • 乐观:上面说了,自嘲是乐观表现之一,但这种乐观中带着些许无奈。

所以说,程序员还是很可爱的一群人儿。

除了“自嘲”外,我们是不是应该多想一想,是不是应该多分析一下原因,是不是要找出一些方法,来改善“天天curd”这种状况。

分析原因

没有意识到

自己刚开始做的时候,可能没有意识到这种情况的存在,久而久之,你才慢慢意识到了这种情况的存在。但是,时间已经慢慢流逝了。你要尽早意识到这种情况。

天天加班

每天任务都很多,老板还爱催时间,导致天天加班到很晚,回到家就很累,只想上床睡觉,根本没有心思想这些,哪有时间去改进。从而就造成一个死循环,没有时间琢磨,改进程序,每天继续重复写代码,回家睡觉。明天,又重复同样的事情。

业务代码

“我就是底层天天写业务代码的,不curd我还能干啥。” 这里不要把写业务代码和curd相混淆了,写业务代码并没有什么不妥,它是创造价值的地方。多数公司都是靠程序员写出的业务代码形成的功能来服务客户赚钱。我所说的是不要天天curd,自己要动脑袋想一想,能否有更好的方法改进代码写法,提高产出的效率。这是你创造价值的一种方法。

没有方法

有的人自己知晓这种情况的存在,苦于没有找到好的解决方法,无法打破这种魔咒。下面我说出一些方法,欢迎大家留言讨论。集思广益,共同探讨,找到更多,更好的解决之道。

解决方法

前1、2两种情况(没有意识到、天天加班)

第一种情况:当然是你要尽快意识到这种情况,不要浪费太多的时间。“你还年轻,还有时间” 这是一句安慰的话,不要轻信,时间是用一天就少一天。熟练了curd之后,就要自己琢磨向更高层次进发了。

第二种情况:就要评估下,是自己工作效率问题,导致加班到很晚,还是分配的任务确实过多,如果是任务确实过多,超过了自己负荷,那么就要向领导提出来减少任务,如果不行,那么考虑跳槽到好一点的公司。

后3、4两种情况(业务代码、没有方法)

后面2种情况的改进方法,也可以作用于前面2种情况,改进前面2种情况。

复用

“复用”的思想。大家在平实的开发中,应该经常会碰到这种思想。比如java语言,“一次编译,到处运行”,这就是一种复用的思想,编译一次之后,可以在多个平台运行代码。

那我们开发时候能不能用到这个思想,“一次开发,多处运行”。而不要做那种ctrl+c,ctrl+v的选手,“一次开发,到处copy”,这样到处copy,重复代码多,那么代码维护起来肯定困难,如果想修改,就要修改多处重复的代码。有什么改进方法?

能不能更好的抽象复用?经常的这样想一想,促进自己改进,成长。还有一个好方法:去看设计模式的书籍,比如大话设计模式。

重点:抽象复用,不断改进,促进成长。

向上

向上,就是向上思考。找到为什么要写curd?它产生的价值在哪里,有没有可以改进的地方?你做的这块越来越好后,上面会给你更大的责任,让你负责更多任务,如果你做的继续超出预期,那么你很有可能,以后会负责更多,拥有更大的抉择权,包括技术的选择。这时你也许会脱离curd初级阶段,进入程序设计,研发管理的进阶阶段。

有的放矢

有的放矢就是要找到自己的那个“的”,也就是目标。那怎么找到自己的目标?

很多人告诉你,要结合自己优势、兴趣等,然后在纸上列出一个清单,在根据自己列出的清单去寻找自己的目标。

还有的告诉你,列出一大推要学习内容,从java基础到Android进阶。这种方式不是不好,是学习的内容太多,而学习是一件反人性的事情,太多就容易累,也很难确定自己的阶段性操作目标。

我这里给一个简单可操作的方法:找自己心仪的公司。怎么说?就是自己心里想一想,盘算盘算,自己心仪的1到2家公司是哪2家,不要太多,太多精力会分散。找到了之后,去官方网站或者招聘网站,看它的招聘要求,根据上面的岗位要求,找出自己需要学习的内容,列出一个清单,制定学习计划,然后执行计划。这时才是像上面所说,找出基础到进阶等需要学习的内容。要有目标感的学习,才是好的方法。

这样就可以了吗?不一定!你按计划学习了2到3个月之后,去其他公司面试下,检验一下学习成果,然后根据面试结果,在回来调整学习计划。继续学习,学习半年后,这时可以给心仪公司投简历,或者找人内推,再次检验学习的成果。

如果面试不上心仪公司怎么办?不要怕,一次不行,接着调整学习计划,继续学习。很多情况下,不是一次就能成功,那就多试几次。要有屡败屡战的精神。

有的人说,简历投递有时间限制?那你可以投其他部门,还可以说明情况找人帮忙内推。总会有办法的。再一个面试前,可以看看其他同学的面经,学习学习,不打无准备的仗。还有,如果真的面不上,可以退而求其次,去找一个二级公司,把这家公司当作一个跳板,然后再去努力学习,来年再战。

深入方法

说实话,我自己是做Android开发的,从一开始每天的curd再到现在成为一名阿里p7工程师,我花了整整4年的时间。我自我觉得自己也算是那种不是很开窍的人,从10多个人的创业公司到如今的阿里,也没有别的方法,就是不断的尝试,试错,复盘,改变。争取掉过的坑,不要再掉进第二次就算是一种成功。

一次次的总结复盘,也是必不可少的。在我“进化”的4年里,我也整理归纳了一套我认为适用于进阶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°全方位性能调优

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

最后

简历首选内推方式,速度快,效率高啊!然后可以在拉钩,boss,脉脉,大街上看看。简历上写道熟悉什么技术就一定要去熟悉它,不然被问到不会很尴尬!做过什么项目,即使项目体量不大,但也一定要熟悉实现原理!不是你负责的部分,也可以看看同事是怎么实现的,换你来做你会怎么做?做过什么,会什么是广度问题,取决于项目内容。但做过什么,达到怎样一个境界,这是深度问题,和个人学习能力和解决问题的态度有关了。大公司看深度,小公司看广度。大公司面试你会的,小公司面试他们用到的你会不会,也就是岗位匹配度。

选定你想去的几家公司后,先去一些小的公司练练,学习下面试技巧,总结下,也算是熟悉下面试氛围,平时和同事或者产品PK时可以讲得头头是道,思路清晰至极,到了现场真的不一样,怎么描述你所做的一切,这绝对是个学术性问题!

面试过程一定要有礼貌!即使你觉得面试官不尊重你,经常打断你的讲解,或者你觉得他不如你,问的问题缺乏专业水平,你也一定要尊重他,谁叫现在是他选择你,等你拿到offer后就是你选择他了。

金九银十面试季,跳槽季,整理面试题已经成了我多年的习惯!在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

droid初级——Android高级架构师进阶必备的一些学习技能。**

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

[外链图片转存中…(img-Tl12JkJg-1713426301641)]

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 14
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值