我在这里的部分工作 射灯 正在与考虑雇用我们以帮助他们的公司开发产品的人们交谈。这些谈话非常有趣。我不认为他们是“销售”,不如我认为 辅导。我的工作是认真听取描述他们的希望,梦想和焦虑的人的声音,表现为他们对可能的软件以及为他们,他们的用户和他们的业务所拥有的某种想法有所体现。然后,我要告诉他们我的想法是否合理,可行,以及Postlight是否以及如何提供帮助。
当有人与我们进行讨论时,我们知道有几件事情是对的:他们想要构建或改进一个应用程序,平台或网站。即使他们的公司已经拥有内部工程团队,他们也需要外部帮助才能完成工作。通常,会涉及一些压力或挫败感。哦,这有很多风险。这是一个脆弱的职位,几乎所有这些对话的结尾都出现了一个特别令人担忧的问题:“当工作完成并且我的开发人员将接任时,会发生什么?您如何进行交接? 我们怎么知道我们不必永久支付Postlight的费用?”
努力工作 Job
当您为其他人使用客户服务构建软件时,您的目标与任何一位优秀的老师,医生或治疗师相同: 使自己失业。 开发如此专有和难以维护的软件可能会赚钱,您的客户变得依赖于您,别无选择,只能永远与您签约,以保持正常运行。这不是Postlight从事的业务。Postlight的工作是使我们的客户有能力在没有我们的情况下接受我们的建设并继续前进。在大多数情况下,这没有我们,而当他们这样做时,这意味着我们成功了。 (特别是因为有能力的快乐客户会以我们的方式推荐新业务。)
这是内部工程团队的目标与您从Postlight招聘的目标之间的最大差异。为了让我们的客户在没有我们的情况下前进并取得成功,在每次参与中,Postlight的项目团队都必须朝着实现产品和客户目标的方向努力 以及 朝着交接方向发展。
当未来的工程师与您同在 Users
在定义和设计产品时,您是为产品的用户服务的。同样,在编写代码时,有一天需要为代码的用户提供服务:一些未来的,未知的工程师,他们将不得不了解您的构建,构建方式,并对其进行扩展,维护和故障排除。
以下是Postlight考虑未来工程师构建软件的一些方法。
- 制定低风险的技术决策。 当Postlight开始合作时,我们会找到有关客户现有或将来的工程团队的一切信息-他们的技能和才华,技术偏好和现有环境。如果还没有工程团队,我们会询问客户计划雇用什么样的工程师,各种技术在当地市场的情况以及现有的利益相关者是否偏爱某些工具或语言。如果Postlight 工程在完全未开发的产品上做出所有最初的技术决策,则我们选择现代但主流的语言,框架和最佳实践,这些语言最有可能被广大开发人员所理解。我们只会使用风险更高,最先进或非同寻常的技术来完成一项一次性任务,以提高我们的生产力(例如,大量的一次性数据导入)。
- 减轻维护负担。 当Postlight决定如何设计产品时(即,将涉及多少个服务和服务器),我们会考虑他们将需要什么样的维护和更新以及客户将来如何进行维护。然后,我们进行优化以尽可能减少这种负担。例如,当 我们建立了Bloomberg Lens,我们不花力气就做到了,即“不会有日志文件溢出,被黑或呆滞的任何事情。”什么时候我们 重建乡村之声,我们将新站点部署到了托管托管服务提供商,从而避免了与客户的接触完成后客户需要雇用任何内部网络运营人员的需求。
- 编写和审核代码以实现可维护性, 可读性和可扩展性(相对简洁或聪明)。工程师无法理解的代码是工程师无法建立的代码,并且工程师希望将其丢弃并重写。当我们编写要交出的代码时,我们会警惕那些非常聪明,不透明的事情,在这些地方,函数和变量名不可读,难以表达,不清晰,在代码结构中很难找到所需的内容。文档应伴随大多数更改,并且应始终执行标准代码样式。 (这就是为什么创建代码审查文化如此重要的原因:你们彼此要对这些标准负责。)当Postlight工程师加入一个已经建立了自己的样式,模式和流程的现有工程团队时,我们将工作进行适应性调整。它与系统的其余部分无缝集成,同时尽可能引入最佳实践。
- 创建一个平滑的入口。 任何代码存储库的关键质量衡量指标之一是:新开发人员可以多快又容易地克隆此存储库并在其计算机上启动并运行该代码?如果工程师是您的用户,则代码的入职流程为README。设置步骤越少越好。在可能的情况下,我们会对应用程序的环境进行容器化,以使其可移植且易于复制,从而减少了使其在本地或其他地方运行所需的步骤。
- 构建第1阶段以轻松扩展到第2阶段和第3阶段。 在许多情况下,客户会邀请我们建立其产品创意的第一阶段,即“最低可行产品”,该产品创意在其之前就有很长的潜在功能规划。为交接而建造时,为未来的工程师而建造 和 未来的产品功能。当我们开始时,我们会获得更多关于产品未来计划的信息,甚至超出我们的参与度,并做出正确的决策,从而为第二阶段和第三阶段奠定基础,从而尽可能少地进行重构。凭借MVP,记录未来功能的潜在实现方式,为我们的客户提供了超越交接日期的前进之路。
建立移交是一种良好的做法 任何 工程团队,但这对于成功地与客户互动至关重要-至少是我们定义的方式。
您想与Postlight合作,这样就不必再做一次了吗? 保持联系。