• 程序员的三种层次
  • 发布于 1个月前
  • 35 热度
    2 评论
  • 浅痕
  • 11 粉丝 3 篇博客
  •   
开发人员的层次
古代,人分三六九等。曾经有人把人分成七层:奴、徒、工、匠、家、师、圣,并做了如下解释:

奴:指非自愿和靠人监督的人。
徒:指能力不足,又肯自愿学习的人。
工:就是老老实实,按规矩做事的人。
匠:指精通一门技艺或手艺,靠劳动生存的人。
师:就是掌握了一些规矩,又能将规律传授给他人的人。
家:有固定的信念,让别人生活得更好的人。
圣:精通事理,通达万物,大公无私,为民立命的人。
现代社会,各个岗位都分层次、级别,我在之前多篇文章中指出,开发人员也分多个级别。我们常自我调侃说自己是“码农”,还有一些贬义的更低层次的,被称作“码奴”,当然还有不能登大雅之堂的,如“码畜”.

如果简单粗暴地分,我们可以分为3个级别:

1.能写软件
2.会写好软件
3.会把软件优化好
我多次指出,为了提高面试命中率,太多开发人员把不想称的精通写入了简历。实际上,大部分开发人员只达到“能写软件”这个级别,一部分能通过多年的努力达到“会写好软件”这个层次,极少数的开发人员能成为塔尖的“会把软件优化好”。这个优化,不是贬义的提前优化。

我在多篇文章和多个场合,反复吐槽各种不合格的开发人员常犯的错误,细到语言特性,大到系统架构。然而,吐槽是一回事,现实是残酷的,很多公司对这些质量问题没有特别的追求,开发人员也就无欲无求,多年后,带新人,把这些坏态度像病毒那样传下去。

拿数据库系统SQL Server举个例子:

懂CRUD,能写个业务模块的那叫“会做SQL Server数据库开发”
理解SQL Server各方面的功能,优缺点,坑,怎么在不同的场景如大量并发 vs 低并发大批量数据处理 用不同的解决方案,那叫“会写好的SQL Server系统”
深入掌握SQL Server的原理、机制和上限,掌握数百种性能监控指标、数百种安全漏洞防御措施、使用多种方法全方位地进行优化改造,那叫“能把SQL Server优化好”。
再深入一点,那就是充分利用SQL Server支持的特性,实现高可用性、安全、横向扩容的方案。

所以,业界中,真正出色的开发人员,是极少数的。

 
用户评论