技术能力
- 扎实的基础:数据结构、算法、操作系统、网络、数据库原理
- 系统设计能力:能权衡取舍,设计可扩展、可维护的系统
- 调试与排障:能快速定位问题,善用工具(profiler、日志、监控)
- 阅读代码:能快速理解陌生代码库,而不只是写代码
- 持续学习:技术演进快,能主动跟进新技术而不盲目追新
工程素养
- 写可读代码:代码是写给人看的,命名清晰,逻辑直白
- 测试意识:主动写测试,而不是依赖 QA 兜底
- 版本控制规范:清晰的 commit message,合理的分支策略
- 文档意识:在合适的地方写合适的文档(不是每行都注释)
- 安全意识:代码层面的 OWASP 意识,不把安全留给"以后再说"
协作能力
- 沟通清晰:能向非技术人员解释技术问题,能在 code review 中表达具体意见
- 估时准确:能分解任务,给出相对可靠的工时估算
- 主动暴露问题:遇到 blocker 早说,而不是默默卡住
思维方式
- 系统思维:看到局部问题时,能思考对整体的影响
- 务实:不追求完美设计,在"够好"和"完美"之间找到正确点
- ownership:对自己负责的东西有主人翁意识,上线后持续关注
- 简单优先:倾向于简单方案,而不是过度设计;代码越少越好
软技能
- 抗压与专注:在复杂问题面前不慌,能保持有效的思考
- 接受反馈:对 code review 意见开放,不把技术讨论变成自我防卫
好奇心
好奇心是一个底层驱动力,而不只是加分项。软件工程本质上是一个持续解决未知问题的职业。好奇心驱动你:
- 追问"为什么这样设计",而不只是"怎么用"
- 遇到 bug 时愿意深挖根因,而不是绕过去
- 主动探索新技术,而不是等公司安排培训
- 对系统的运行机制真正感兴趣,而不只是完成任务
没有好奇心的工程师可以把当前的工作做得"够用",但很难做到深入——他们写的代码能跑,但不理解为什么。
好奇心本身还不够,它需要配上自律和落地能力。有些人什么都好奇,但浅尝辄止,或者永远在学新东西却从不完成一件事——这是好奇心失控的版本。
更完整的表述是:有边界的好奇心——对核心领域深挖,对周边领域保持开放,但不被新鲜感分散焦点。
如果只能选一条:能把复杂问题分解成可执行的小步骤,并持续交付——这是区分普通工程师和优秀工程师最核心的能力。
AI 时代的变化
AI 时代这些素质的重心发生了偏移,而不是全部推翻。
更重要了的
- 阅读和判断代码:AI 生成代码的速度远超人类,“写"的比重下降,“读、评估、审查"的比重上升
- 问题分解:指挥 AI 的前提是你能把问题拆清楚——分解不清,AI 给你的结果也是乱的
- 基础原理:AI 输出的代码"看起来对"但可能暗藏问题,没有基础你抓不住错误
- 判断力与品味:AI 永远给你一个"合理的答案”,但合理不等于正确,你需要能辨别好坏
- 系统思维:AI 处理局部,人负责全局,整体架构、权衡取舍仍然是人的责任
变得不那么关键的
- 记忆语法、API 细节——AI 比你记得更准
- 写样板代码的速度——AI 秒完成
- 从零实现标准算法——直接生成即可
新增的
- AI 协作能力:知道什么时候用 AI、怎么引导、怎么验证输出
- 怀疑 AI 输出的习惯:不盲从,始终验证正确性、安全性、性能
- 更强的 ownership:AI 会产出大量代码,但责任仍然在人,“AI 写的"不是借口
好奇心在 AI 时代更重要,因为工具变化极快,好奇心驱动你持续理解 AI 的能力边界,而不是停留在一年前的用法上。
AI 把执行层自动化了,工程师的价值向判断层、设计层、责任层转移。基础越扎实、判断力越强的工程师,AI 对他的增益越大;基础薄弱的工程师,AI 反而会放大他的错误。