程序员在工作中如何让自己的技能得到快速提高
1.创造和把握可以提升自己的机会
首先你要有可以碰到难题的机会,如果你根本没有机会接触复杂场景,没有经过真实的项目磨练,是很难快速提升的;
你要自告奋勇的做那些公司中你没有把握的事情,当然这些事都是和你现在的技术有关的;这样你才有机会提升;
说下我自己的情况;我们公司以前内部打算尝试下区块链方向的业务,作为一个类似实验一样的项目,领导层打算看看这方向怎么样;
当时我们技术部有二十多个人,大家都没有这方面的开发经验,而且2017年的时候,区块链还没有被大家认知,这方面的中文开发资料几非常少;
所有的开发人员都没有底,我一个前端开发就没有底了,但是我感觉这是我的一个机会;
所以我就去找老板聊,给老板申请,能不能把我调到区块链相关的工作去;我估计当时老板应该也在着急,公司技术部的小伙伴都没有这方面的经验,还没有确定哪些人去做这些事情;
我这时候去找老板,应该是属于打瞌睡的时候正好有人给他送枕头;
所以老板直接就同意了,说"好的,没问题,后面会给你安排具体的事情";
当时还有一个小伙伴也被安排做这方面的事情,就这样,我们哥俩被安排到同一张桌子的工位,我们脸对脸的就正式开始做公司的实验性质的项目;后面我们团队一直扩张到十多个人,我和那位同事,自然而然就成为团队的核心开发人员;
这种区块链开发的场景,我是想着,属于一个非常垂直和专业的领域,对我的技术提高有很大帮助,然后我又没有把握做好;
我有大量的机会去研究疑难问题;在这期间,我的技术思维的感悟和提升非常大;
我说这些就是想告诉大家,遇到机会,就要勇敢上!即使最坏的打算,你做不好,又不会枪毙你,还会给你发工资,这还怕个锤子啊!!!抓住机会,干!!!
只有是能够帮助你技术成长的机会都要抓住,有机会前进就抓住机会!有时候目标要明确点,只要是能够帮助你成长的机会,你都要抓住!
上面我说的情况,是前端做到中后期的情况;
如果你是属于初中级前端程序员,你最好还是看看教程,看看书,这种是最好的;先把基础给补起来;你这时候最需要的就是猥琐发育,疯狂学习;
如果你在学习的过程中,有遇到什么问题或者感觉到迷茫, 有问题可以给我发消息,说不定我能帮到你!
注意:这也是一个机会哦,就看你是否愿意把握啦!
我认为以我的项目经验,帮助一名初级的前端人员,提供一些方向性的建议,应该还是没有问题的;
还有一个好处就是,比如一些我手里的电子书啊之类的,公共场合不适合分享,但是如果是微信单独聊天,我倒是可以直接分享发给你;
至于为什么我愿意把自己的私人发出来,无偿帮助小伙伴,这个我在后面第三点会具体说;他对我以后的帮助也是很大的;
然后说说第二点,如果你遇到难题怎么处理
2.遇到难题怎么处理
上面说,你要自告奋勇的做那些公司中你没有把握的事情,但是这种场景下,你必定很容易碰到自己一时解决不掉的问题;
我以前做区块链相关的开发时候,那种两三天努力都没有什么进展的情况,经常出现;这时候我们该怎么处理呢?
首先,你出头去揽那些难点的事情,就肯定要想着给它解决掉的;
对外,你也不必须被迫前行,所以有压力是肯定的;
这时候你遇到的问题都不要慌;
-
- 先自己思考,自己做之前,先不要着急写代码,先想想思路
-
- Google搜索,如果搜不到,尽量英文单词去搜索
- 一般这时候有很多资料供你解决掉
-
- Github搜类似的的项目,看看别人是怎么解决的
-
- 自己看看源码,很多项目的文档更新没有代码的更新及时;
- 如果上面都高不会,就一定一定要看看源码!阅读优秀代码也是进步的途径
- 如果上面都高不会,就一定一定要看看源码!阅读优秀代码也是进步的途径
- 如果上面都高不会,就一定一定要看看源码!阅读优秀代码也是进步的途径
如果上面四种方式,还是解决不了;别着急,抽支烟冷静下;
可能是你的搜索描述不符合,或者搜的不对;你再使用下面的几招
-
- 问问同事,身边的朋友,和他们说说,当然是找那些经验相对丰富点的;
- 问别人的时候,不要不思考就问,自己解决不掉再去问,如果别人给你建议,无论对错都要态度好表示感谢,更不要和别人抬杠!
-
- Github找对应的项目发issiue
-
- Stack Overflow发问题,寻求帮助
后面两个一般是英文发的,所以建议你用英文发;提问之前,你最好看下 然后了解下 程序员如何正确提问题
大概的套路就是:你遇到了什么问题,这个问题是在什么环境下发生的,问题是什么现象,怎么样操作可以复现;做过什么努力来排查,发现了什么情况,结果是什么样子的;如果有一些日志文件,最好贴一些日志文件,方便别人帮你排查;你提问题是你请别人来解决,不要想着别人一个一个的来问你;
然后根据别人的回复再慢慢调;
如果还是解决不掉,那就试试有没有别人的解决方案能够绕过这个坑;
我们做业务的时候,很多时候不是一定要用某个实现方案的,写代码,主要是为了产品,而产品的可以修改的;
所以不要死脑筋,试试能不能绕过去这个坑;
我平时最蛋疼的处理就是做的PC软件,那种360报毒的,还会有一些安装软件的,windows各个版本的一些不同限制,中国盗版系统区别很大,就拿win7来说,很多盗版的版本,可能都会遇到蛋疼的问题;如果你以后也做PC软件,需要多主意下;
3.自己的解决方案和解决思路要乐于分享给别人,乐于帮助别人
如果你通过努力解决了一些问题,我建议你一定博客记录下,或者github开源出来;你一定不要感觉自己好久才研究出来的,这么告诉别人,好像吃亏了;
把别人教会,你自己会理解的更深;
这就是我为什么愿意把我的微信给你们的原因,因为我在帮助的同时,我再和你交流的同时,我自己也在进步;
如果和1个人交流没有什么进步,和5个可能也没有多少,但是如果交流的人很多,那么我的思想在和很多小伙伴深入交流后,我相信肯定有更高的理解;
所以分享这件事,是双方互惠的,我可以帮助学习前端,你也可以反过来帮助我进行理解,进行学习;
就像马云的公司帮助了这么多人,他看着好像吃力不讨好,但是他真的吃亏了么?他都亏成中国首富了!!!
不要感觉自己好不容易做出来的解决方案和思路,告诉别人,别人不劳而获,自己好像吃亏了,,这种心态一定要克服!!
4.要经常思考总结(最重要)
首先你你要多练习代码,通过实践,去发现你的错误,然后再思考自己犯错的原因,以后应该用什么方式来应对,总结你该如何改善这个情况,
这样你的各个方面就会有很大的提升;
平时写代码做产品的时候,不要做完了就完了;
- 可以重构下自己今天写的代码
- 测试自己的代码,不要直接丢给测试,或者抱着又不是不能用的心态
- 可以写写注释;
- 可以用博客总结记录下自己的成果
思考总结尤为重要!!!
思考总结尤为重要!!!
思考总结尤为重要!!!
如果产品遇到不合理的需求,你也要直接说出来,要多反馈;
不要做老好人,一定不要产品经理的需求你都接,你是一个人,是有思想的人,一定要自己想想再做;
该怼产品经理就要怼,遇到不合理的地方就要正面刚他!不要怂!
总结
- 有进步的机会就一定抓住
- 遇到问题不逃避,积极跟进问题以及不断总结归纳
- 低级问题要做的效率高
- 这主要靠平时记笔记,做项目总结
- 高级问题需要研究
- 这里会看出你解决问题的能力,也会提高你解决问题的能力
- 点赞
- 收藏
- 关注作者
评论(0)