以我的经验,软件开发人员往往会戴上帽子,并以不同的职责担当多个角色。从不仅编码,有时还包括编写SQL,设计用户界面,设计数据库,图形处理乃至QA测试。
如果主要角色是编写软件/代码,那么开发人员不应该承担什么角色? 有吗
这个问题的意图不是因为开发人员无法胜任其他角色-而是具有其他角色实际上与主要角色相反,或者实际上应该是不主要编程的人的专门角色。
以我的经验,软件开发人员往往会戴上帽子,并以不同的职责担当多个角色。从不仅编码,有时还包括编写SQL,设计用户界面,设计数据库,图形处理乃至QA测试。
如果主要角色是编写软件/代码,那么开发人员不应该承担什么角色? 有吗
这个问题的意图不是因为开发人员无法胜任其他角色-而是具有其他角色实际上与主要角色相反,或者实际上应该是不主要编程的人的专门角色。
Answers:
系统管理员。开发软件和处理IT基础架构是两个不同的技能集,看起来像局外人一样。(这全都在敲打计算机,对吗?)对于一家规模较小的公司而言,让The Computer Guy负责办公室中的所有计算机的诱惑将非常强烈。
如果您具备实际戴两顶帽子的技能,那就太好了;但这是可能比人们意识到的要花费更多时间的事情之一,而且如果您在进行过程中进行自我教学,很可能您做得不好。
您戴上雇主要求的任何帽子。这就是让您成为团队合作者的原因。这就是使您成为问题解决者的原因。
人们太过被“开发人员”,“建筑师”或“分析师”的想法所困扰。拧紧。您应该是一个解决问题的人。代码只是您的工具。
解决问题永远不会过时。
如果我的老板希望我提供技术支持或建造计算机,那就这样吧。考虑到开发人员的薪水,它认为他们在浪费钱,但这是他们的事。我是来解决问题的。但是我可以做到,我会做到的。而且,如果我觉得经过一段时间后,我的才华被浪费了,或者我的工作满意度没有达到我想要的水平,那么我就有权利继续从事另一项工作。
但要问一个基本问题-没有帽子不戴。哎呀,如果他们要您拿咖啡,那就去做吧。解决他们的问题;只要知道,如果您想改变,就有权找到另一份工作。
测试员!
如有需要,请将测试人员直接从测试人员学校发送出去!
没有测试人员,人们会期望一切都可以正常进行,因为程序员是测试人员,他们非常聪明,因此应该可以工作。
我并不是说狗食不是一个好主意。我只是一名程序员,所以我认为测试人员非常重要。
我可以马上想到两个。
您可以说CSS / UI开发将超出编程“领域”,但以我的经验,这是当今必不可少的技能。您不能只是摆脱表而依赖其他人来正确实现它。我可能不喜欢实现设计或更改代码以处理新设计,但这是工作的一部分。
编写查询很好,Q / A测试也很好(并且IMO 应该是程序员的工作,可以找一个外部部门来做,但是首先您应该测试它)。服务器管理是一个灰色区域。根据项目的大小或是否需要专门的服务器管理员,可能会也可能不需要。
总的来说,根据我的经验,大多数程序员都不应该开发用户界面的外观和感觉-尽管我当然有能力开发UI(并且在构建原型或概念证明时经常创建一个UI),但这是最好留给人为因素的人(在我们的小公司中,是一位图形艺术家,他还负责屏幕布局并创建大多数手册和小册子)。
另外,开发人员不应进行质量检查测试-这是质量检查部门的工作(我工作的公司生产嵌入式医疗设备,因此这要求测试必须由单独的部门完成)。
另一方面,如果有背景,开发人员就无法设计数据库并编写SQL,我没有理由-我做了很多次。
随着年龄的增长,我已经意识到,如果开发人员不自己进行部署,那是最好的选择(我为此费尽心思)。除选择权限外,他们对生产数据库没有任何权限。我们的代码少了很多错误(并且同一件事并没有多次出现,因为更改仅是在prod中进行的,后来的开发部署再次覆盖了它,然后仅在着急,冲洗和重复时才固定在prod上)必须开始将其交给其他人进行部署,并且由于部署不正确而被禁止进行快速修复生产更改。进一步,我们不再遇到那些意外的“不带where子句的突出显示更改了表中每个记录的更新”问题。
艺术家和用户界面设计师。
大多数程序员在美术方面都很差劲,但是公司不会花钱去让艺术家为他们的产品绘制图像和图标,而只是使用“程序员艺术”-结果可笑。(直到Windows Vista,这是Mac和PC之间最明显的区别因素-Mac看起来很漂亮,很友好,PC让人眼花eyes乱)
以类似的方式,许多程序员对用户界面不是很感兴趣-他们主要关心他们的代码。他们只是简单地将成员变量的内容直接暴露于某些可编辑的字段中,而通常不在乎在表单上放置按钮和字段的位置,并假定这样做就足够了,从而导致软件无法使用。(整个手机行业对此深感愧until,直到iPhone出现,向他们展示您实际上可以制作出一个很好用的手机UI为止)
Lotus Notes是一个出色的例子,说明如果您没有专业的设计师来帮助程序员,那么这两种情况都会很糟糕。
尽量不要戴过多的“帽子”,要说出不应该做A或B来吸引开发人员,这意味着优秀的UI设计人员可能会被忽视,因为有人认为程序员应该远离开发人员用户界面。
归根结底,每个人都会有不同的长处和短处,一个好的经理/主管/团队负责人应该知道指导员工的最佳方法,以确保人才得到适当利用。同样,如果您不习惯设计UI或与最终用户打交道,请让您的团队知道,以便您可以最大程度地减少在该领域的角色。但是,您应该准备在另一个区域进行一些其他工作。
另外,如果您戴的帽子太多(例如,程序员,UI设计人员,测试人员,业务分析师等),那么您要么在其中的某些方面做得不好,要么会精疲力尽。确保您知道可以处理多少顶帽子,并尝试将工作量保持在该水平左右。
除此之外,如果开发人员具有胜任该职位的技能,那么他们真的不应该戴“帽子”。