本科cs,热爱计算机,但coding能力不够强,未来应该选择什么类型的工作?
coding不行可以练啊,没啥,可以直接当个developer
本科cs,热爱计算机,但coding能力不够强,未来应该选择什么类型的工作?
coding不行可以练啊,没啥,可以直接当个developer
产品经理,一个cs出身的产品经理,对程序员来说就是福报啊。
计算机科学所包含的细分领域非常多,比如操作系统、程序设计语言、软件工程等。很多细分领域都要求算法和编码能力,比如程序设计语言(指设计一门程序设计语言而非学习使用它)。
计算机工程(Computer Engineering)方向的知识体系中,编码能力也是最基本的。可以参考下面的知识体系介绍
https://www.cse.iitb.ac.in/~sharat/current/ce.pdf个人觉得,可以用来系统分析将来方向和职业的指南是这份软件工程知识体系
Software Engineering Body of Knowledge (SWEBOK)在这份指南的v3版本中,将软件工程分为15个知识领域
- 软件需求
- 软件设计
- 软件构建
- 软件测试
- 软件维护
- 软件配置管理
- 软件工程管理
- 软件工程过程
- 软件工程模型与方法
- 软件质量
- 软件工程专业实践
- 软件工程经济学
- 计算基础
- 数学基础
- 工程基础
去掉其中小众的部分,包含不需要太多编码或者算法技能的岗位的知识域有:
- 软件需求
- 软件测试
- 软件配置管理
- 软件工程管理
- 软件质量
注意:以上领域中,当然也包含需要编码技能的岗位。比如软件测试中的自动化测试,很多时候也需要编码能力。
更具体一点:
- 一般而言,“软件需求”中包含业务建模工作,与“业务工作”很搭边。
- 软件测试与软件质量(保障)在部分企业中是结合在一起的(单元测试是开发工程师的事情,但是做不做单元测试这个规矩是软件质量保障定的)。
- 软件配置管理在不同企业中有不同表现。这个东西是纯软件企业所强调的,互联网企业(尤其是小企业)很少会设置专门的岗位做这个事情。
所以大体上你可以考虑的方向就是需求分析(业务分析/建模)以及软件测试/质量保障
当然,在互联网企业中还有一个神一样的职位:产品经理/产品狗,对个人的综合素质和能力要求非常高,有CS背景的话会很更好,也是值得考虑的。但是绝大多数产品经理都会被码农们鄙视或者曾经鄙视。
责任编辑: