互联网兵种简介
上篇文章熟悉了一个程序员教练的重要性。
那么常见健身房里分为有氧运动:跑步、游泳、健身操。无氧运动:撸铁、撸铁、撸铁。
那么教练会问你想练什么。同样的互联网里也会分为多种兵种,你是想做服务端、前端、算法还是啥,刚入门的小白,对此可能一无所知。下面一块了解下吧。
兵种简介
大家看到的一款产品或者新上线的一个功能,需要多个兵种相互配合才能够完成。
- 产品:先头部队(调研市场、输出需求)
- 设计:阅兵方队(让产品展现优美,交互合理)
- 客户端研发:通讯兵(将产品做成APP应用为载体进行传播)
- 服务端研发:战斗集群,航空母舰(对数据流转整体服务进行支撑)
- DB:弹药库(存储着整体的数据,是公司最为宝贵的财富)
- 测试:医疗兵(对产品质量进行把控)
兵种配合交互图:
兵种的职责和成果如下:
职责和输出内容图如下:
产品:
- 调研需求,整理需求,输出prd文档
- 整理原型
- 协调资源、评审需求
设计:
- 根据产品提供的原型进行设计
- 提供原型图
客户端研发:
- 根据UI图,开发页面展示
- 根据服务端提供的接口数据处理展示
服务端研发:
- 开发设计
- 编码实现
- 上线压测
测试:
- 根据需求文档和开发设计文档 输出测试用例
- 根据用例验证功能
- 性能测试、压力测试
示例
通过淘宝的例子来讲述一下
这是苹果手机”淘宝“首页的展示,头部有很多的资源位包含”百亿补贴“、”聚划算“、”淘宝直播“等一系列的产品入口,下方还有”猜你喜欢“等推荐模块。
那么这些是怎么呈现出来的呢?
首先大家知道苹果手机的操作系统为iOS,在苹果手机上开发应用程序,比如阿里的技术团队就会有iOS研发工程师开发”淘宝“应用,上架到苹果应用市场。
但是iOS研发工程师并不知道页面要长什么样、要呈现什么数据。
长什么样子:”产品”会提供原型图(一种大概的样子模型)给“设计”,“设计”根据原型加上自身美感设计出精细化的展现形态(包含每个位置的长宽高比例、颜色、交互方式等)给到iOS研发工程师。
长什么样子的问题解决了,那要展示什么数据呢?这时候服务端工程师就上场了,可能是Java、Python或者其他编程语言,此处我们假设为Java研发工程师,会提供用户“需要展示的数据”给iOS研发工程师,以上就是一个应用APP最小的研发流程了。
那么Java工程师怎么知道用户“需要展示的数据”是什么,Java工程师首先会根据运营同学配置的一些资源位进行展示,其中一些比如“推荐”:根据用户行为来推荐动态的数据就属于“推荐&算法”的范畴。知道了“需要展示的数据”的来源,那这些数据是存储在哪里的呢?比如我们会用.txt .doc等文件来存储我们的文本或者图片,服务端程序会将数据保存到mysql、redis、es、hive等一些存储上,“淘宝”的DBA角色将承担数据库的选型、快速检索支持等工作。
市场需求
那么市场上对这些兵的需求量有多大呢?截取了拉钩网的职位列表图
看看拉钩上面的职位: 大的方向上分为 技术、产品、设计、运营、市场、销售、智能、游戏。
其中技术的细分项本文大概涉猎了其中几个进行了概述,可以看到 导航栏中 作为热门语言的Java、PHP、C++、区块链,作为需求量较大的兵种,承担了一级菜单项。