字节5年老测试,2月无情被辞。业务与技术你要理解的概念!

news2024/11/23 21:08:53

前言

近年来企业对于员工的要求不再满足于简单的处理工作,除了KPI考核,越来越多的公司会对思考力、理解力进行更深层次的综合评估,对于精准人才的筛选大搞特搞“末位淘汰制”。

一个在大厂工作认识几年的朋友跟我说,单一的能力很难受到上司青睐,就拿业务逻辑而言,搞不清楚业务与技术的概念,你拿什么上升?

什么是业务?

对于那些久经职场的人,也很难一句话说明白;

业务,作为工作中绝对的核心点,即便在一个公司待的足够久,对业务足够熟悉,也很难简单直接的说清概念;

业务,立足在一个行业的范畴内,比如物流、金融、电商等;

从行业向下看,延伸到工作中经常说的业务需求和价值,进行结构化的梳理;

从个人的经验中来描述业务的定义:行业的基本模式,运作的流程,具体的事务执行;

对于业务这种结构化的概念分析,只能作为了解事物的入门参考,并不在具体问题的范畴内;

核心的业务能力,要站位所处层级和阶段,体现在解决方案的设计和执行策略;

回到实践场景中来分析;

虽然对于公司来说,商业的生意模型是顶层,产品矩阵在上层,因为面向客户的是产品;

业务的核心需求对应着消费方,也就是客群;

业务的核心价值对应着生产方,也就是组织;

而产品就是业务高度聚合的可视化呈现,产品不单指互联网上的应用,也可以是商品或者服务;

而商业,通俗的说就是生意模式,是由基本的供需关系产生的,即客户和平台的之间的需求和利益;

所以业务对于公司内部来说,是绝对的核心位置,并且公司的运营和协作都要紧紧围绕业务;

在工作中要具备基本意识,产品是商业价值的关键,业务是产品的核心竞争力;

什么是技术?

对于一众码农玩家来说,很难一句话聊清楚软件技术的定义;

从个人实践经验来思考,肤浅的描述:软件技术就是数据的增删改查;

这种说法显然只能是内心戏,如果在工作中表述,容易把路走窄;

想要全面深刻的描述软件技术,可以对比一个经典的线下和线上的场景,比如电商;

传统的线下购物场景,就是买家(顾客)通过现金的方式,在实体门面中交易卖家的商品,流程简单高效;

对于线上交易的电商场景来说,围绕用户购买的一系列行为,都涉及数据的处理;

比如浏览行为的数据采集、存储、加工等;

基于行为数据分析出用户的画像,进行精准的推荐营销,进而实现商品销售;

这些场景的核心技术支撑,依赖软件的数据处理能力;

所以软件技术可以理解为数据的生产、采集、传输、存储、加工、交换、显示、分析,各种能力的统称;

从现象上看,就是把线下的场景映射为线上产品的能力,肤浅的表达为数据的增删改查也不为过;

但必须要强调的是,这里只是单纯的站在应用层面来描述软件技术;

实际上,当下主流的定义,是指基于信息技术实现业务的数据化、信息化、数字化、智能化的转型能力;

关于这个话题,后续会结合案例再详细总结;

对业务和技术的定义明确之后,就可以统筹性的将二者进行综合分析;

业务的核心流程

流程是组织协作的最核心机制,也是效率和质量的基本保障;

尤其对于复杂度偏高的业务来说,任何一个流程节点不严谨,都可能导致损失,时间和成本投入巨大,但是效果不符合预期;

从实践经验来看,业务的流程通常划分:需求、落地、沉淀三大阶段;

需求阶段

调研:采集和统筹各方意见,业务的核心要围绕客户需求设计,但是协作方的利益,产品的考量,技术的分析,运营的策略等,同样重要;

评估:围绕市场的现状,判断成本投入,包括直接成本,时间周期,人力资源等,预估创造的价值,平衡投入与产出;

设计:输出业务的前期设计,包括各个参与方的协作流程,时间周期和关键节点,产品以及视觉稿的初步呈现;

决策:需求阶段的核心流程走完之后,得到各个协作节点的负责人认同后,并进行邮件确认,避免后续的拉扯问题;

落地阶段

生产:产品可以是互联网应用、商品、服务能力等,作为业务流的高度聚合产物,产品决定了价值和竞争力;

营销:通过相应的营销策略和手段,推广产品并放大其价值,为业务营收提供助力,当然也要考虑投入和产出比;

销售:将产品的价值定义转换为具体的营收,挖掘更多的付费客户,维持业务和产品的持续能力;

沉淀阶段

业务:当业务周期结束时,其应用服务有可能随之消失,但是很多业务是具有共性的,需要保留下来支撑新的业务流;

技术:在架构设计中追求技术和业务的分离,很大程度可以避免业务消失导致技术投入清空,技术的复用能力沉淀,可以降低新业务的实现周期和成本;

客群:客群的运营是业务流中的核心环节,对于互联网行业的产品来说,缺乏客群基础即没有流量,很难具备成长的持续性;

虽然不同的业务场景有不同的特点,在流程上也会有一定的差异性;

但是从实践经验来看,合理的流程机制可以直接避开很多问题;

技术的核心流程

从真实的研发现状来说,技术都是处于业务驱动的状态下,流程上自然也不是主导位置;

在大部分的公司中,基本都是围绕业务流程,做技术面的研发和管理,在业务到达间歇性的平缓期,才会考虑技术建设的投入;

只有在大厂或者小部分的公司中,才会有更纯粹的技术研发;

但其根本依旧是对业务趋势的判断,前瞻性的解决业务可能或已经出现的问题;

也可以从技术领域直接为公司创造价值,然而技术服务也同样依赖大量的基础用户,业务问题自然也会随之而来;

从实践经验来看,技术的流程通常划分:业务、实现、架构、沉淀四大阶段;

业务阶段

需求:深入理解每个版本需求的细节,因为细节的误差导致返工甚至重做,相信研发都经历过;

现状:这可能是大部分玩家都厌烦的问题,在业务流实现过程中,必然要面对新旧两套逻辑的衔接,需要对现状做优化甚至是重构;

发展:对于业务来说,场景的横向扩展,或者纵向深入,都会导致逻辑复杂度的提升,也会直接呈现在系统和数据层面;

实现阶段

选型:基于业务和系统现状,不同的场景选择合理的技术组件和工具,或者第三方解决方案;

时序:比较关键的是业务流程映射的系统交互时序,编码实现的逻辑时序等;

设计:围绕流程的交互时序,做实现逻辑的设计,数据层面的结构设计,团队协作的规划设计;

编码:通过编码实现完整的交互逻辑,从技术业务分离的角度思考,编码也分技术和业务两个阶段;

架构阶段

在业务和系统的演变过程中,架构设计也会从单服务发展到系统级的拆分;

沉淀阶段

单工程演变到分布式服务时,自然就会出现公共的技术和业务服务,以及大量的工具和数据的沉淀;

技术流程无论设计和规划的多合理,始终受限于决策层的认知和业务模式,多数情况下技术发展都会受到业务规模和周期的直接影响;

单纯站在技术实践的角度来看,架构的合理性和编码的质量可以保证系统的稳定性和持续能力,这就已经实属不易了;

业务和技术的周期

要先捋清楚一个共识,周期的概念不论在业务还是技术场景中,都反复出现;

周期:事物在运动、变化的发展过程中,某些特征多次重复出现;

业务的发展周期:孵化期、验证期、成长期、成熟期、衰退期、转型或者消亡期;

对于业务不同发展阶段来说,其相应技术研发的阶段侧重也不同,协作方和责任也在持续变化;

孵化期

业务:对于所属行业和市场的探索,基本模式的验证;

技术:从技术视角提供业务和产品的专业评估;

验证期

业务:证明当前业务具备市场价值和落地的可行性,实现产品的初步打造;

技术:技术的投入巨大,实现初始的系统构建,基于数据的沉淀,再次对业务进行验证;

成长期

业务:业务持续的扩张和发展,产品快速迭代,实现品牌打造;

技术:完善系统的业务流程,应对业务发展带来的高并发高可用问题;

成熟期

业务:实现营收增长,降低成本提高效率,即效益最大化;

技术:解决业务运营的问题,保证系统的稳定性;

衰退期

业务:注重公共业务的积累和沉淀,以及相应的客群维护;

技术:形成可复用的技术积累和沉淀,追求技术和业务的分离;

转型||消亡

业务:基于各种业务的沉淀,快速开始下个新的业务周期;

技术:基于各种技术的积累,快速实现新业务的推进;

理解业务和技术的不同周期,只是基础的能力,合理把握周期中各个阶段的趋势才是关键;

看清业务的本质,判断业务的发展变化,分析其内部的问题和矛盾;

利用合理的技术手段,构建稳妥的架构设计,并随着业务的发展不断调整;

在业务的中后期,能有体系化的业务和技术层面的沉淀,在面对业务的转型时,提供可复用的解决方案;

业务和技术的应对策略

对于业务而言;

用变化的思维,理解业务不同阶段的核心问题和矛盾;

设计合理的解决方案,支撑业务稳定和持续的发展;

分析业务本质的关键在于,理解不同参与方的需求与核心利益,这是引发矛盾和问题的根本原因;

对于技术而言;

理解业务的发展周期,在不同的阶段对于业务和技术投入要合理分配;

业务成长期,要更多的侧重业务流程的打造;

业务平稳期,要更多的侧重技术方面的构建;

在常规的业务版本迭代中,也要适当的投入技术方面的长期建设;

可以在大版本之后进行技术优化,或者版本中统筹部分技术方面的需求;如果有业务空窗期,也可以直接走单纯的技术改造版本;

综合的看技术和业务

首先要明确基本的认知,对于技术和业务来说,不必纠结于谁更重要,显然是缺一不可;

在研发的过程中,业务能力和技术水平也会共同的提升;

合理的实现业务落地,就是技术能力的绝对体现;技术体系的架构设计,也是对业务深刻理解的映射;

作为拥有程序员DNA的测试人来说,同样会面临企业追求降本增效所带来的问题,要求越来越高,竞争越来越激烈,如何避免被优化?怎么获得更好的工作和机会?不断提升自己的技能栈成了迫在眉睫的问题

如何从初级功能测试到高级自动化测试开发,达到技术提升和待遇提高的目的,是很多初级测试人必经的一个阶段。作为一个过来人,对学习过程中的困难深有体会。

学习对任何人来说都是一种挑战,走出舒适区,花费大量时间和精力。但是如果你还有对美好生活的向往和追求,希望你能走出这一步,过程会有困难,结果会给你好的答案。

我的职业生涯,一路走来都离不每个阶段的计划,因为自己喜欢收集和总结,所以,我和朋友特意花了一段时间整理编写了下面的《自动化测试工程师学习路线》,也整理了不少【网盘资源】,需要的朋友可以扫描文末二维码获取网盘链接。希望能帮你少走一些弯路。

【自动化测试学习路线】

1. 自动化测试必备Python编程内容

2. Web UI 自动化测试基础内容

3. Web UI 自动化测试实战内容

4. APP UI 自动化测试基础内容

5. APP UI 自动化测试实战内容

6. API 接口自动化测试基础内容

7. API 接口自动化测试实战内容

8. CI/CD持续集成专项技术

9. 自动化测试框架实战技术

-事必有法,然后有成- 最后祝大家早日拿到满意的offer ~

如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方【小卡片】加入我们,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。

今天主要是和大家分享我的学习路线和网盘资源,后续我会分享一些面试攻略,有被帮助到的朋友,大家可以点赞支持一下~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/346783.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Gorm -- 配置连接、Gorm模型及Tag描述

文章目录引入依赖读取配置文件配置数据库连接池定义模型数据库表信息创建对应结构体数据模型中字段的标签属性columnserializerprimaryKeydefaultautoIncrement / AUTO_INCREMENTembedded / embeddedPrefixautoCreateTimeautoUpdateTime-foreignKey / references引入依赖 go g…

Tesseract OCR与文本智能识别

博主简介 博主是一名大二学生,主攻人工智能研究。感谢让我们在CSDN相遇,博主致力于在这里分享关于人工智能,c,Python,爬虫等方面知识的分享。 如果有需要的小伙伴可以关注博主,博主会继续更新的&#xff0c…

SQL工具性能实测:居然比Navicat还快,数百万行数据导出仅51秒

如今的SQL语言逐渐成为职场人士必备的能力。为了让更多SQL用户有一款免费又好用的SQL工具,麦聪软件于2023年1月初发布了一款Web版SQL工具SQL Studio,一经推广就赢得了众多用户的注册下载。 使用SQL Studio最明显的体验是什么?笔者回访中发现…

Centos系统里运行java的jar包

目前使用springboot开发是嵌入方式的tomcat,不需要单独使用tomcat,那么经常在服务器上运行jar包,这里记录一下在centos7系统里运行jar的方式。在运行之前需要确定centos7系统是否安装了java环境以及配置环境变量,还有jar需要运行的…

Go语言基准测试(benchmark)三部曲之二:内存篇

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《Go语言基准测试(benchmark)三部曲》的第二篇,目标是掌握如何用基准测试来观察被测方法的内存分配情况今天除了常规的操作&…

回溯算法章末总结

组合问题的特点 (1)abba 选中a之后,就不再选了 (2)找出所有的组合 (长度可以不相等) 组合问题模板 做回溯题步骤 (0)判断问题类型 (1)树状图 …

【百度 JavaScript API v3.0】LocalSearch 位置检索、Autocomplete 结果提示

地名检索移动到指定坐标 需求 在输入框中搜索,在下拉列表中浮动,右侧出现高亮的列表集。选中之后移动到指定坐标。 技术点 官网地址: JavaScript API - 快速入门 | 百度地图API SDK 开发文档:百度地图JSAPI 3.0类参考 实现 …

Pillow图像处理(PIL.Image类的详细使用)

文章目录Opencv、Matplotlib(plt)、Pillow(PIL)、Pytorch读取数据的通道顺序Python图像处理库(PIL、Pillow、Scikit-image、Opencv)Pillow 官方文档(超详细,超推荐)一、PIL库与Pillow库的区别二、Pillow库(…

Vue3 目录结构

Vue3 目录结构 架构搭建 请确保你的电脑上成功安装 Node.js,本项目使用 Vite 构建工具,需要 Node.js 版本 > 12.0.0。 查看 Node.js 版本: node -v建议将 Node.js 升级到最新的稳定版本: 使用 nvm 安装最新稳定版 Node.js…

使用docker配置mysql主从复制

1.新建主服务器容器实例: docker run -p 3307:3306 --name mysql \ -v /docker/mysql/data:/var/lib/mysql \ -v /docker/mysql/conf:/etc/mysql/conf \ -v /docker/mysql/log:/var/log/mysql \ -e MYSQL_ROOT_PASSWORDroot \ -d mysql:5.7 设置容器卷之后&#xf…

Java网络编程之UDP和TCP套接字

文章目录一. 网络编程概述二. UDP网络编程1. UDP套接字2. UDP客户端回显服务器程序2.1 UDP回显服务器2.2 UDP客户端2.3 UDP实现查词典的服务器三. TCP网络编程1. TCP套接字2. TCP客户端回显服务器程序2.1 TCP回显服务器2.2 TCP客户端2.3 解决服务器无法同时出力多个客户端的问题…

牛客专访ChatGPT:2023校园招聘如何做?附校招趋势

春招在即,牛客作为新一代数智化校园招聘引领者,为大家采访了当下“顶流ChatGPT”,关于近几年校园招聘的变化及2023企业做校招的建议。以下,为“ChatGPT专访”实录。01. ChatGPT眼中近3年校园招聘的变化牛客:很高兴作为…

Unity Material详解

一、创建 二、属性 1.Shader:Unity内置了一些shader,用户自定义的shader也在这里出现. Edit: 可以编辑一些shader可编辑的内容,如一些属性. 2.Rendering Mode:渲染模式 Opaque-不透明-石头适用于所有的不透明的物体Cutout-镂空-破布透明度只有0%和100…

go语言环境配置 项目启动

一 安装go语言 go语言各个版本之间兼容性比较差。所以可能你需要安装固定的版本 1 安装最新版的go brew install go2 查看go可以安装的版本 brew search go3 安装指定版本的go brew install go1.134 查看安装的go语言的版本 go version5 查看go的安装路径 which go || w…

【软件测试】稳定性测试怎么做,这篇文章彻底讲透了~

稳定性对产品的重要性不言而喻。 而作为质量保障,在稳定性测试方面的探索也在不断演化。记得两年前我们做稳定性测试还是基于恒定的压力,7*24小时长时间运行,关注的指标无非是吞吐量TPS的抖动、响应时间的变化趋势,以及各种资源是…

《机器学习系统:设计和实现》读后感和一些思考

目录 计算图、编译器前端、编译器后端 计算图 计算图的作用 计算图的组成 静态计算图与动态计算图 编译器前端 IR中间表示 机器学习框架的中间表示 常见编译器前端优化方法 编译器后端 概述 通用硬件优化:算子拆分和算子融合 算子信息 数据精度和存储…

opencv访问图像(MAT)的属性

大家好,我是csdn的博主:lqj_本人 这是我的个人博客主页: lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm1011.2415.3001.5343哔哩哔哩欢迎关注…

设计模式:装饰模式

1、装饰模式 1)定义 动态(组合)地给一个对象增加一些额外的职责。就增加功能而言,Decorator模式比生成子类(继承)更为灵活(消除重复代码&减少子类个数)。 2)动机&…

Harbor安装部署实战详细手册

文章目录前言一、安装docker二、安装docker-compose1.下载2.赋权3.测试三、安装harbor1.下载2.解压3.修改配置文件4.部署5.配置开机自启动6.登录验证7.补充说明四、harbor使用问题1.docker login问题:Error response from daemon: Get https://: http: server gave …

Ubuntu 安装 Qt5.7.0

下载 地址:https://download.qt.io/https://download.qt.io/ 文件夹说明: snapshots:预览版,该文件夹中包含最新的测试版本。 online:在线安装包。 official_releases:最终发布版。 new_archive&#…