暂不考虑非程序员必须管理程序员的想法(需要在小型软件初创公司中使用),非程序员应该如何学习如何更好地与程序员合作?这就是我。
我说'非程序员',但实际上我已经在这个行业花了几年时间,并试图阅读和自学,因为我发现这些东西很有趣,我渴望了解更多。但是,现实是我无法将代码写入专业标准,我知道建立这样的知识需要一段时间,人们告诉我,我甚至不应该尝试。也许编码人员宁愿像我一样的人只是让他们出局。如果没有,我的自学是否应该采取一个特定的方向,这会让我更有效?
我读过Joel的书,他有很多话要说,例如,给编码员提供良好的工作条件。我不是在这里询问管理的这个方面 - 我的问题实际上是一个问题,关于我是否应该有一些特定的技术技能,而不是仅仅继续我的非结构化“徘徊”我感兴趣的事物。
答案 0 :(得分:10)
如果您还没有阅读Peopleware,那么一定要阅读它。它处理您的问题。简而言之,它解释了经理的工作不是技术工作(当然,如果他对开发的技术方面有所了解,那么它并不会受到伤害)。经理的主要任务是沟通,而不是处理技术。 您主要关注的问题包括:
这就是你比他们做得更好 - 所有这些都是“人”问题,而不是技术任务。
我并不是说您不应该尝试更多地了解或自己编写代码 - 只是它可能不会让您成为更好的经理,并不一定能帮助您的项目取得成功。
答案 1 :(得分:2)
我同意 Peopleware ,而且我还要说Brook的 The Mythical Man-Month 是必读的。
答案 2 :(得分:1)
是的,您应该明白输入和输出。这些是编程的基本要素。每当有人编程时,他们就拥有可供他们使用的东西(输入),然后你希望他们给你一些回报(输出)。如果您能够理解这一点以及开发人员如何相互沟通以及您对这些输入和输出的了解,那么您可能会处于一个好的位置。
此外,您必须了解有时编码可能需要一段时间,测试通常需要两倍的时间......除非这是一个非常简单的编码任务。
答案 3 :(得分:1)
我只会阅读您团队所使用的基础知识,这样您就不会被您管理的开发人员搞砸。 (现在我需要躲避并盖住豆子......)。
另请查看Rands in Repose。
答案 4 :(得分:1)
我的0.02美元 - 我想只是你在这里发布这个问题意味着你走在正确的轨道上。我只能为自己说话 - (我有几个非编程经理)我认为最受项目影响的是那些负责与客户和其他经理交流的人,帮助完成文档,跟踪项目计划并试图通过解决遇到的非技术障碍(新工具,硬件,个人等等)来帮助程序员满足最后期限。鼓励您的程序员发挥创造力,团队合作创建产品 - 如果您“尝试”学习一些技术性的东西,那么您将获益更多。
答案 5 :(得分:1)
我建议一本可能有用的好书:How to Win Friends and Influence People
答案 6 :(得分:0)
答案 7 :(得分:0)
我们的CIO没有技术背景,他更喜欢使用Windows(也许是OSX)作为服务器!他不喜欢unix / linux,unix / linux团队的规模一直在缩小。
如果我是你,我会让自己了解我所在领域的大图片,最近的突破等等。