产品开发

Python SELF ZH
第 63 级 , 课程 3
可用

5.1 一点历史

在90年代互联网革命刚刚开始时,没人知道该如何正确地开发互联网服务。所有的功能立刻就暴露给用户,这种方法与传统的软件开发大不相同。

当时最大的搜索引擎公司 Yahoo 决定尝试一种新的方式,从好莱坞借用方法——他们的经理叫做制片人 :) 不过不奇怪的是,他们失败了。

值得一提的是,Yahoo 是收购其他公司的最大失败者。曾多次有人提议他们收购 Google 和 Facebook。最终,在他们事业的尾声,Microsoft 试图以400亿美元收购他们,但他们再次拒绝了。几年后,他们仅以30亿美元被收购。在90年代,他们鼎盛时期的市值高达2000亿美元,如果他们成功收购了 Google,现在的市值可能达到数万亿。不要像 Yahoo 一样

自互联网革命以来,许多不同的软件开发方法被测试过,现在的情况已经稳定下来。存在标准的角色和职责、标准的流程和标准的软件。

在学习过程中, 你会学到所有需要知道的东西,以便在现代IT公司中使用现代开发工具进行工作。

5.2 产品团队

典型的开发团队由以下人员组成:

  • 那些决定 产品应该有什么功能和特性 的人
    • Product Owner
    • Business Analyst
  • 那些决定 产品外观如何 的人
    • UI Designer
    • UX Designer
  • 开发者, 实现所有这些功能 的人
    • Software Architect
    • Backend Developer
    • Frontend Developer
    • Mobile Developer
  • 那些负责 产品高质量工作 的人
    • QA Automation
    • DevOps

Product Owner 在软件开发中起着关键作用,管理产品并确保开发团队专注于完成最重要的任务。他定义产品愿景,编制和优先排序任务列表(backlog),这有助于确保开发的每个阶段最大限度地符合业务目标和用户需求。

UX Designer 致力于创建一个便捷和高效的产品界面,这包括研究用户需求、开发原型和测试界面。此工作旨在改善用户与产品的交互,使其尽可能易于理解和使用。

DevOps 专家专注于优化软件开发和运行管理流程,以加速和简化产品更新。他们的工作包括测试、部署和系统监控的自动化,以及基础设施的设置和持续集成及交付(CI/CD)的保证。

5.3 开发团队

实际的开发由程序员进行。他们大致可以分为五类:

  • Software Architect
  • Backend Developer
  • Frontend Developer
  • Mobile Developer
  • DBA

角色和内容可能会随着团队规模和产品特性而变化,但大致情况是这样的:

Software Architect:负责复杂软件系统的架构设计。Architect 开发技术基础设施,确定程序各组件的结构和交互方法,确保其可扩展性、性能和安全性。

Backend Developer:专注于应用的服务器端开发。Backend Developer 的任务包括实现逻辑、集成数据库和数据管理系统、处理用户请求以及支持与前端的交互。

Frontend Developer:开发 web 应用的用户界面。这个角色需要了解 HTML、CSS 和 JavaScript,以及用于创建互动和响应式界面的框架和库,以确保良好的用户体验。

Mobile Developer:专注于移动设备应用的开发。Mobile Developer 为不同操作系统(例如,iOS 和 Android)创建应用,考虑平台特性、设备性能和用户体验。

DBA (Database Administrator):负责管理数据库,确保其可用性、安全性和优化。DBA 执行数据库配置、监控和维护任务,并开发备份和数据恢复策略。

评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION