构建一个出色的 Web 应用程序所需的 12 项技能






4.85/5 (9投票s)
以下是构建一个出色的 Web 应用程序所需的 12 项技能列表
那么,你知道如何构建一个 Web 应用吗?
敏捷方法论都在谈论“跨职能团队”,但如果你看看绝大多数敏捷团队,他们可能拥有以下“角色”:
- 开发版
- 测试员
- 分析师
偶尔会加入一个平面设计师。虽然跨职能技能是正确的想法,但我们往往会忽略一些关键技能。
像这样的技能
基础设施自动化
如果你构建了一个 Web 应用,你应该负责运行它。
基础设施自动化和管理应该在团队内部进行。这能让你体会到你的应用在运行过程中有多么容易或困难。
主要职责
- 自动化应用部署(是的,即使是移动应用)
- 自愈合基础设施
- 测试驱动基础设施
- 12 因素应用
社群建设
如果你不知道你的客户是谁,或者更糟的是,如果你还没有客户,你怎么知道你构建的是正确的应用?
在你编写任何代码之前,你就应该开始与你的社群建立对话。
主要职责
- 了解你的用户在哪里
- 理解你的用户
- 理解你为什么要做你所做的事情
- 向用户阐述你为什么做你所做的事情
- 首先给用户提供有价值的东西
- 为你的应用制定和执行发布策略
编程
这是一个显而易见的问题。我想说的是,开发者需要更多地关注原则而非技术。你也应该不断地获得视角。
主要职责
- 构建最简单的负责任的解决方案
- 选择满足用户需求的技术
- 对架构有战略性的展望
- 明白你一开始可能会构建错误的应用
- 写出优秀的代码!
文案写作
在构建移动和 Web 应用时,文本仍然是最重要的沟通媒介之一。你应该像对待代码一样,认真打磨产品中的每一个句子。
主要职责
- 说客户的语言
- 讲述你的故事
- 为什么比什么更重要
- 简洁
- 清晰
数据可视化
视觉系统是迄今为止人类可用的最高带宽信息通道。良好的数据可视化优化了这个通道。使用 3D 饼图会用垃圾数据堵塞它。
你宁愿做什么?
主要职责
- 理解你的 Web 应用中的数据
- 理解你的用户需要获得的见解
- 应用数据可视化理论将数据转化为洞察
用户体验
仅仅因为你喜欢它的外观,并不意味着它是 Web 应用的最佳工作方式。设计只有在有用、可用和令人愉悦时才算好。如果你想了解更多,我写了一篇关于如何学习用户体验设计的资源指南。
了解事物在现实世界中如何运作的唯一方法是观察人们如何使用它。
主要职责
- 纸质原型
- 可用性测试
- A/B 测试以改进现有功能(这在移动应用上更难)
- 使用指标做出明智的决策
商用版
为了优化影响和收入,你需要了解资金的来源和去向。获取新用户的成本是多少?他们需要使用你的应用多长时间才能赚回这笔钱?
你的主要成本在哪里?你是否优化了应用的正确部分以限制成本并最大化收入?每个 Web 应用都不同,你需要了解你的应用是如何独特的。
主要职责
- 了解你的业务如何盈利
- 功能优先级排序
- 了解成本的来源
- 了解竞争对手在做什么
- 寻找创新的方法来最大化收入和最小化成本
创新
不创新就灭亡!
这是硅谷的格言。如果你希望你的 Web 应用在全球舞台上具有竞争力,你就必须信奉它。
主要职责
- 降低失败成本
- 挑战传统思维
- 拓宽可能解决方案的范围
分析
这是另一个比较传统的角色。你需要深入了解事物的运作方式。彻底理解用户需求,并考虑所有边缘情况。
主要职责
- 理解和优化业务流程
- 理解和优化客户工作流程
- 法律要求
设计
你是否尽力而为?
人们会对你的 Web 应用的质量做出快速判断。你需要非常确定他们会留下良好的第一印象。幸运的是,网上有大量的资源可以帮助你学习 Web 设计。
设计每一次交互,考虑整体体验。
主要职责
- 让应用美观
- 为目标设备和用户需求而设计
- 设计是应用的运作方式,而不仅仅是外观
- 设计整个系统
- 让细节很重要
测试
你的产品是否一路顺畅,还是经常出问题?
你需要确保拥有一个稳健的测试框架。这包括单元测试、验收测试、基础设施测试、性能测试和负载测试。所有这些都应自动化且可重复。
主要职责
- 自动化!
- 尽早发现错误
- 识别根本原因
- 测试基础设施
领域知识
我把这个放在最后,因为它是在项目之间变化最大的一个。如果你正在构建医疗软件,你最好了解医学。确保你所谈论的是你了解的!
主要职责
- 挑战现有的行业思维
- 了解你所在领域的最新研究
- 成为专家
虽然拥有所有这些技能绝非成功的秘诀,但它们无疑会让你比那些不具备这些技能的人拥有巨大的优势。
即使你认为你没有做到所有这些事情,你可能只是做得不好。它们都不应该是事后考虑的事情。
你的团队有能力吗?
更新 – 秘密武器
对于能够放大以上所有技能的 1 项技能,请查看我关于破解心流状态的文章。