我已经做了30多年的软件企业家。但自从我熬通宵在黑色和绿色屏幕上编写自定义代码以来,很多事情都发生了变化。今天的软件开发领域是广阔的,有许多需要专门研究的领域。如果我现在要在软件行业创业,而且之前没有任何商业经验,我想知道以下几点。

1.如果你不是一个开发人员,那就和一个软件企业家合作

30多年前,当我开始在软件开发领域工作时,想法可能是粗糙的概念,写在纸上,交给会编程的人,然后变成一个小程序。然而,现在,代码只是另一个庞大系统中的一个庞大系统中的一小部分,是分层的、复杂的。如果您在编码领域没有任何经验,您将永远不知道用什么语言编码,在什么平台上构建,或者如何最好地推出您的软件。简单地说,如果您是一个计划在软件开发领域开展业务的软件企业家,那么请您身边有一个了解这方面的人。
与懂得代码并亲自参与过程的人合作,将帮助您指导步骤,并尽早做出重要的扩展决策。软件开发世界是广阔的,并且在不断扩展。即使是有经验的开发者也会因为行业发展的速度而面临知识不经济的问题。虽然其他商业模式可能不需要个人在他们的领域的商品或服务的知识,但软件开发,在我看来,不是其中之一。

2.雇佣好奇心强、充满激情的开发者

软件工作可能是乏味的,除非你喜欢它。当我雇用开发人员时,我会寻找那些仅仅因为好奇而从事他们所接受的训练之外的工作的人。这告诉我,他们总是在学习,这与我之前提到的知识概念的不经济性有关。
我也会寻找有激情、有同情心和有点偏执的人。为什么?因为有激情的程序员关心他们的代码有多好,他们会在不觉得自己在工作的情况下继续工作。有同理心的程序员会完成一个项目,如果出现bug或代码出错,他们会想知道有多少人会受到这个错误的影响,然后去修复它每一个人。有些偏执狂的程序员是那些加倍,三倍,四倍地检查他们的工作,以确保它是完美的。当你把所有这些特质综合在一起时,你就会得到高质量的代码和能够工作的软件——而这正是客户所关心的。

3.保持一个小型、敏捷的开发团队

少即是多。爱国者软件,我的会计和工资软件新利18官方网站下载该公司拥有大约10名软件开发人员。我们正在开发的软件与拥有大量开发人员的公司的软件相抗衡,而且我们还在这样做的同时赢得了奖项。这怎么可能?很简单,因为小的比较好软件开发团队优秀的员工致力于自己热爱的工作,而不是一个由一群互不相关的人组成的大团队致力于他们不知道最终结果的小碎片。

有一个概念叫做神秘人月这就反驳了“向项目中加入更多的人会让项目进展得更快”的观点。然而,这不仅仅是一个项目管理概念,它是业务建设哲学。如果你把正确的开发人员团队放在一起,他们可以比开发人员的军队更快地构建伟大的软件,而且你的公司不会在你的工资的重压下崩溃!

4.接受失败

这是一个敏捷原则,但它适用于任何需要优先排序的业务更新的.基本上,作为一个软件企业家,失败不是你的敌人,只要你保持一个小的和可管理的规模。快速工作,测试,快速失败,迭代,重新测试等等. ...

大多数企业都希望避免大规模的失败。最好的方法就是小范围的失败,首先测试一下你做得怎么样。与其试图从开发过程中消除失败,不如拥抱失败及其产生的交互作用。毕竟,失败是最好的学习方式。

5.用刁钻的问题拷问申请人

困难是一个宽泛的术语。有些软件开发人员就是不喜欢其他人,就像他们不喜欢机器一样。他们可能是优秀的程序员,但他们不能与其他开发人员分享信息。不是因为他们不想,而是因为他们根本就不是那样的。对他们来说,人与人之间的交流可能“很难”。然而,人与人之间的互动是最重要的难以捉摸的软件开发人员品质在那里。

对另一些人来说,困难意味着实际的开发工作。软件开发技能的需求很高,但这并不意味着你就应该聘用那些能在简历上列出这些技能的人。面试时,你应该问一些技术性的问题。用实际问题测试他们的知识,并询问候选人如何解决这些问题。询问他们失败的情况。调查他们如何处理压力,如何在团队中工作。把他们置于如此严格的审查之下似乎有些残忍采访的想法,但是很少有什么事情能像一个糟糕的员工那样破坏一个公司——尤其是当这个员工可以访问你的基本代码的时候!

Baidu