抛砖引玉
“深度优先”与“广度优先”是程序员学习发展方向的老生常谈话题。我之前录制过一个视频思考过这个话题,但现在我认为,拉深度和拉广度都不是最优先的方向,最优先的是拉维度。
那么,什么是维度提升呢?
提升维度,就是不仅仅从技术的角度思考问题,而要综合考虑其他方面,例如人性、产品、用户、领导力、社会、政治等等。
虽然在实践过程中不可能考虑到宏观的方面,但是对于与自身工作密切相关的方面,我们不得不关注。比如,组织流程、敏捷开发流程和有效沟通法等。
自己干还是交给别人干?
当我们在工作中面临一个任务,我们可能会想:是自己亲自实现还是分配给别人去实现呢?虽然自己实现可以节省时间,但是分配给别人实现,也可以带来更多的好处。
对于一些工作,一位 Junior 程序员可能需要 5 天才能完成,而一位 Senior 程序员可能只需要 1 天。但是,如果我们提升一下认知维度,我们就会思考以下问题:
正如德鲁克所说:“管理人员是通过其他人完成工作的人。” Senior Engineer 需要思考的其实是管理的内容,相当于是初级 Engineering Manager 。EM 考虑的是流程、文化等,而不是技术实现。
当然,如果您专注于技术,也可以成为编程大神,我们能够看到很多这类传奇式编程大神的新闻,但是这是个概率问题,概率的影响因素是市场需求,需要专门写操作系统的,写编译器的全球加起来可能不到百人。所以我们需要关注更多的方面,以便更好地适应未来的工作发展。
原文链接: https://leilog.io/posts/2023/advancement-bottleneck-for-senior-engineer/
1
feather12315 2023-07-06 00:35:19 +08:00 via Android
有了 ChatGPT ,junior 5 天的也可以一天完成。
除非资深干的是烧脑子的工作(比如 case by case 分析的问题),或者是讲故事,不然使用了 chatgpt 后,junior 跟资深没有区别。 |
2
kangyue9999 2023-07-06 02:26:43 +08:00 via Android 1
Q:有什么办法能够让 Junior 程序员清楚地了解上下文,降低考虑不周的风险?
A:不要用复杂的方法,尽量不要让 Junior 程序员过度思考,听话执行就可以。 Q:有什么办法能够让 Junior 程序员提高自己的技术水平,减轻自己的工作压力? A:主要靠 senior 程序员对程序做好划分,适度微管理,定期汇报,及时止损。 Q:有什么办法保证 Junior 程序员的代码质量? A:尽量简单写代码,除非有性能要求,可读性强的代码更重要 Q:有什么办法获得其他人的认同和支持,提高自己的影响力 A:合理利用别人的资源(请求别人帮忙),作为经理有思考什么要做什么不要做,不合理的需求要学会说不,另外适当办公室政治 |
3
jones2000 2023-07-06 11:23:58 +08:00
"自己干还是交给别人干?" 训练 gtp, 成为自己的影分身,这样代码风格,思维就跟自己一样。 就不存在你下面的问题了。
|