• 我天天curd,怎么才能成长?


    起因

    “天天在那curd,也没啥技术含量”
    “你就是一个curd boy”
    “你就是一个curder啊”
    “你不写代码,你只是代码的搬运工”

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

    1. 高度概括能力:用几个单词组合,就概括了多数程序员日常的工作情况。
    2. 自嘲:自嘲有时是一种乐观的品质,用一种调侃的方式来看待自身情况。
    3. 乐观:上面说了,自嘲是乐观表现之一,但这种乐观中带着些许无奈。

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

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

    分析原因

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

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

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

    4. 没有方法
      有的人自己知晓这种情况的存在,苦于没有找到好的解决方法,无法打破这种魔咒。

    下面我说出一些方法,欢迎大家留言讨论。集思广益,共同探讨,找到更多,更好的解决之道。

    解决方法

    前1、2两种情况

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

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

    后3、4两种情况

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

    复用

    “复用”的思想。

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

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

    能不能更好的抽象复用?经常的这样想一想,促进自己改进,成长。

    还有一个好方法:去看设计模式的书籍,比如大话设计模式。

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

    向上

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

    有的放矢

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

    很多人告诉你,要结合自己优势、兴趣等,然后在纸上列出一个清单,在根据自己列出的清单去寻找自己的目标。
    还有的告诉你,列出一大推要学习内容,从java基础到java进阶,从单体到分布式,从cap到base等等。
    这种方式不是不好,是学习的内容太多,而学习是一件反人性的事情,太多就容易累,也很难确定自己的阶段性操作目标。

    我这里给一个简单可操作的方法:找自己心仪的公司。

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

    这样就可以了吗?不行!

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

    如果面试不上心仪公司怎么办?不要怕,一次不行,接着调整学习计划,继续学习。很多情况下,不是一次就能成功,那就多试几次。要有屡败屡战的精神。
    有的人说,简历投递有时间限制?那你可以投其他部门,还可以说明情况找人帮忙内推。总会有办法的。

    再一个面试前,可以看看其他同学的面经,学习学习,不打无准备的仗。

    还有,如果真的面不上,可以退而求其次,去找一个二级公司,把这家公司当作一个跳板,然后再去努力学习,来年再战。

    后续思考

    当你按照上面的方法学习了之后,你做事可能会越来越好,公司如果关注员工成长,那么它会看到你的成长,给你一定的回报奖励。

    说不定你会意识到,出去面试并不是目的,它是一种激励你学习的手段,自己成长才是最终目标。逼迫自己去成长,其实这种方法也是逼迫你的领导成长,你的公司成长,如何更好的留下人才。
    也许你还有更好的方法让自己成长。欢迎大家一起讨论。

    如果在一家公司做的不好,到另外一家就会好起来吗?不一定,每家公司有每家公司优缺点,自己要思考,改变能改变的。

    方法总结

    总结一下上面的学习方法,以便复用,概括起来就是:

    GPDCA:goal -> plan -> do -> check -> adjust

    G - goal, 定目标
    P - plan, 定计划
    D - do, 付出行动,完成计划
    C - check, 阶段性的检查已完成的计划,看看学习的效果,这个阶段性时间纬度:以2个星期为单位纬度,或者1到2个月左右为单位纬度,时间不宜太长或太短
    A - adjust,检查之后,如有不足,适当调整计划
    然后循环执行检查调整,直到定的目标达成

    这个GPDCA方法,不光可以用于学习,还可以用于其他方面,需灵活自用。

    以上就是一点思考,欢迎大家讨论,推荐-让更多人讨论。

    【完】

  • 相关阅读:
    Day5.打包解压,分区,软链接和硬链接
    Day4.权限命令
    Day3.linux基础命令
    macos proxy_bypass_macosx_sysconf exception
    网站收集
    django test
    django test, app aren't loaded yet
    sqlalchemy insert on duplicate update
    linux随机字符串
    Celery Received unregistered task of type
  • 原文地址:https://www.cnblogs.com/jiujuan/p/13879947.html
Copyright © 2020-2023  润新知