乐趣区

关于java:不要以为Bug写的好就是好程序员其实这只占不到15

最近和一位从事多年架构工作的技术哥们见面,聊到了近期面试程序员的一些经验,谈到了“如何判断程序员程度高下”这个话题,颇有些感触,感觉有价值,因而花了些工夫整顿、分享给大家。

注释

程序员的程度高下,不是靠语言或外在体现就能看进去的,不是看他会多少技术、加入过多少我的项目、写了多少博客,而是看他在理论业务场景中解决问题的能力,尤其是面对一些特地简单的问题,或在高强度、低压工作状态下解决问题的能力与态度。

技术能够通过学习把握,然而解决问题、定位问题的能力却不是欲速不达。大家可能会说,“解决问题的能力”这个太宽泛了吧,能够更具象化吗,有具体的测量方法吗?简略整顿了以下几点供参考。

代码品质

会写出满足需要的代码,早就不是评判程序员程度的规范了。代码编写既要满足业务需要,同时还要思考后续的软件维护,说得艰深些,既要本人爽,也要他人爽。一个优良的程序员,会致力于写出更简略、更效率、可读性强、扩展性强的程序代码。

逻辑思维

程序员在日常工作中,须要了解各式各样的业务需要,所以这就须要程序员具备肯定的逻辑思维能力。能够说,逻辑思维是程序员的灵魂,因为每一行代码都是程序员逻辑的体现。

debug 能力

我的项目焦急上线,公布时呈现问题?

业务顶峰时段,零碎宕机了?

业务催、经营催、用户催、老板催!

各种状态的 bug,各种焦急的情绪,背地无数双眼睛盯得内心慌慌 ……

这些都是程序员须要面对的日常。但不同的程序员,在解决问题的办法、效率、品质等方面,却各有千秋。一个经验丰富的程序员,可能扛住各方压力,在简单条件下找到外围问题,通过抽丝剥茧的剖析来找到产生问题的起因,并疾速进行应答解决,预先及时复盘总结,缩小同类问题呈现的概率。

学习能力

随之互联网的倒退,越来越多的人涌入程序员这个赛道,竞争日益强烈,加之新技术层出不穷,更新迭代快,程序员所应用的语言、框架、模式都会产生翻天覆地的变动。如果不被动学习,有可能很快就会被掉队淘汰。

沟通能力

在日常工作中,程序员常常要与业务、产品、经营甚至老板等多方对接交换需要,技术外部我的项目连接配合交换等,晦涩的沟通能让事件推动起来更加顺利高效,沟通不畅或信息不对称,可能导致我的项目上线时呈现背道而驰(别不信,这种事件还真产生过)。

责任心

线上出 bug 了,第一工夫响应、解决;团队我的项目进度缓和、人手紧缺,被动补位。

又或者,在我的项目推动过程中如果只是关怀本人模块内容,对于整个我的项目束之高阁,只守着本人的一亩三分地。

随着时间轴的拉长,你会发现,有此技术能力不是最好的,甚至不如你的小伙伴,最初做到了技术主管或经理、甚至更高职位,这外面除了技术实力,还有一个叫“责任心”的货色。

结束语

判断一个程序员的程度高下,外围是其解决问题的能力,而解决问题的能力养成,须要扎实的底层根底来撑持,要综合其代码品质、我的项目教训、框架能力、逻辑思维等等多方面,不能单看某一方面。

对于 1 - 6 岁的程序员来说,想要成为一个高级程序员,变得越来越优良,唯有坚持不懈去学习、积攒、实际、修炼。

如果感觉有用,请点赞反对下~

—–end—–

收费福利大放送。

还没有支付的童鞋,速度点击上面链接返回支付哦:
相应的文章曾经整顿造成文档,git 扫码获取材料看这里

https://gitee.com/biwangsheng/personal.git

退出移动版