1
mcfog 2019-07-06 06:54:44 +08:00 via Android
对比软件工程和普通的比如建筑工程,你会发现软件工程师的一个特殊的特点是他即是方案的设计规划者,又是实施者
众所周知工地工人的核心竞争力就是工作量,对比程序员如果你的角色停留在实施者,那么核心竞争力也只能是工作量,福音战士 而设计者的核心竞争力就多的多了,不妨看看 这个 https://gist.github.com/mcfog/70411189992cee788f15c21f68bba1ae |
2
orzorzorzorz 2019-07-06 07:13:29 +08:00 3
标题中的三个概念不能一概而论。后两者是前者的工作内容,前者是后两者的工作思想,且不以个人意志为转移。一方面,环境是主要因素,个人的上限取决于公司或者直接领导的上限,个人的努力在某种程度上是没有意义的。另一方面,个人的综合素质和能力的提升速度是决定能否快速进阶的关键因素,在这个层面上,个人的上限即是天花板。这两者并不矛盾,但在进阶路上缺一不可。环境好,但容易使人产生虚无的个人膨胀;个人极其崇尚努力,则会容易成为”奋斗逼“。只有二者和谐统一,才有可能到达”专家“这个层次。
正文中的”尝试写编译器“这一行为在个人的编码能力与和 hr 吹逼能力的提升是显著的,但”求火“的心态是要不得的。著名前端 ui 库 vue 作者曾称,vue 在最初时也只是个模仿 angular 的玩具,尤后续多年对代码的热忱和坚持才是 vue 成功的关键因素。最近一段时间,他也在个人媒体帐号发文,说”学会编译原理就能为所欲为“。从批判的角度来分析,不会编译原理确实不会让个人失去目前的”饭碗“,但从长远来看,其收益不下于”打开一扇新世界的大门“,对个人编码能力的提升更是不言而喻。在”格局“提升的同时,也会提升个人的自信感,在于 hr 交涉时也会顺利不少。 技术在”程序员“职业生涯中的作用举足轻重,但也是限制其进步的一道枷锁。如果说对代码的组织和管理能力是”硬能力“,那与团队的沟通及项目落地能力就是”软能力“。”硬能力“提升到极致就会成为科研工作者,”软能力“提升到极致,则会成为优秀的管理者。两者得兼,则是某个领域的”大牛“。由此管中可窥,能力提升是好,但如果没有提升到天花板以上,也就是突破职业的层面,那就只能是”程序员“。 --- 最近在练申论,上面这些的人话版本是: 想脱离板砖层次,你得极致刻苦,不局限于想火,不怕被人说称奋斗逼,还得有个有能力、能赏识、能提拔你的领导 程序员没前途,但敲代码的有 |
3
VDimos 2019-07-06 08:15:42 +08:00 via Android
这几个差得有点儿远
|
4
mengzhuo 2019-07-06 08:55:21 +08:00 via iPhone
别人都是自嘲,你当真了。
各种语言的 VM BOY , RUNTIME BOY 操作系统的 SYSCALL BOY 各大 CPU 厂商的 instruction BOY 各种外设厂商的标准化 BOY 计算机的精髓就是加逻辑层,方便使用的同时多了很多概念,能拆解出在 API 的耗时,性能分析,底层涉及的原理就可以了。最常见的考题是从鼠标点一下链接,到看见网页,这中间都经历了什么。 |
5
alpha2016 2019-07-06 08:56:36 +08:00
除了资本家,都是搬砖的,就是小工和长工的区别,资本家是给国家搬砖的。
|
6
shujun 2019-07-06 09:17:07 +08:00
从需求源头出发,用程序去解决实际问题的时候,并没想过是 API caller 还是 CRUD boy。更多的是希望用更好的设计来保证产品满足当前功能,又具备扩展性,便于管理等。
|
7
lowman 2019-07-06 09:43:59 +08:00
作为一个被 V2EX 封过号的程序员, 我的竞争力估计也就只剩下划水了(毕竟总是被说是水军), 等攒够了钱, 就回老家卖方便面. 连深圳户口都没有, 就算来了深圳, 我也不敢说自己是深圳人. 反正是在 CRUD BAD BOY 的路上, 渐行渐远, 然后每天用一些微不足道的成绩欺骗自己. 不管怎么样, 码还是要撸的..........
|
8
mikulch 2019-07-06 09:50:12 +08:00
@alpha2016 朋友,这可是有区别的。
软件工程师,或者程序员,和普通的工地技术人员和制造业技术人员本质的区别是什么。 是软件工程师基本不依赖生产资料。或者说生产资料的成本极低。一台电脑。 而其他的技术人员,必须依赖资本家的生产资料。这在话语权上就有了本质上的区别。 |
9
huijiewei 2019-07-06 10:13:35 +08:00 via iPhone
不知道为啥都瞧不起 crud,是觉得自己写的烂所以 crud 都是烂代码?
|
11
Takamine 2019-07-06 11:24:31 +08:00
除开一些写出真的作品的大神之外。
个人觉得是那些在业务抽象和运用语言特性都很厉害的人。 当然也还是有点怕那些套设计模式花式炫技的大佬:doge:。 |
12
charlie21 2019-07-06 12:37:07 +08:00
四个字:设计模式
一个字:IoC |
13
charlie21 2019-07-06 12:40:32 +08:00
再下来就是 写 SDK,写机器人,写机械臂
|
14
Leigg 2019-07-06 12:47:15 +08:00 via iPhone
优化现有的设计,做个优秀的 boy
|
15
xuanbg 2019-07-06 16:47:51 +08:00 1
大家都在写代码解决问题,你看别人说要用缓存,你也用缓存,你看别人说要用 MQ,你也用 MQ。。。问题虽然解决了,但这知识和经验却不是你自己的。换一个类似的问题,你也许可以解决,但问题如果表面上看起来完全不同,你还是不知道怎么解决。
要如何摆脱这种局面呢,我的经验就是多去探究问题的本质。抓住了问题的本质,就不需要别人来告诉你怎么解决。你最多就是百度一下某某工具怎么使用而已,要用什么工具,你心里早就有数了。 |
16
qwz 2019-07-06 20:58:21 +08:00
是不是 "搬砖、API Caller、Crud Boy" 有那么重要么
只要是一线开发者就是哼哧哼哧的技术工人啊 做设计(业务代码交给代码仔)也只是个工头 |
17
enaxm 2019-07-07 07:25:36 +08:00 via Android
|
18
liuzhiyong 2019-07-07 14:39:58 +08:00 via Android
大部分工作就是搬砖,这个工作机会多呀。个人感觉脱离搬砖,反而难得搞到好工作。
|
19
koebehshian 2019-07-07 22:16:44 +08:00
搬砖是重复性的劳动,精于搬砖意味着有深度而无广度。所以多尝试搬不同的砖,增加广度。
|
20
applehater 2019-07-08 00:55:05 +08:00
@qwz 管项目,指派人力才是工头,做设计还是 D-Boy
|
21
smallpython 2019-07-08 10:33:33 +08:00
没有
解决人们需求的技能才是好技能 装逼的技能只是解决你自己的需求 |