在字节和滴滴划水四年,过于真实了...

news2024/11/16 18:11:19

先简单交代一下,我是某不知名211的计算机本硕,18年毕业加入滴滴,之后跳槽到了头条,一直从事测试开发相关的工作。之前没有实习经历,算是四年半的工作经验吧。

这四年半之间完成了一次晋升,换了一家公司,有过开心满足的时光,也有过迷茫挣扎的日子,不过还算顺利地从一只职场小菜鸟转变为了一名资深划水员。

我结合一些前辈经历总结出了一些还算实用的划水经验,有些是自己领悟到的,有些是跟别人交流学到的,在这里跟大家分享一下。

同时,我也准备了一份软件测试视频教程,需要的可以直接在下方观看,你也直接点击文末小卡片免费领取资料文档

视频教程观看处:

一个很变态但可以让你迅速掌握自动化测试(Web/接口自动化/APP/Selenium/性能测试等)的神奇方法_哔哩哔哩_bilibili一个很变态但可以让你迅速掌握自动化测试(Web/接口自动化/APP/Selenium/性能测试等)的神奇方法共计100条视频,包括:【自动化测试】 如何设计接口测试用例?、【自动化测试】自动化测试框架设计思路、软件测试全套资料及学习路线等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV1hj411z71j/?vd_source=74d0257ec7066cc4f9013524f0bb7013

学会深入思考,总结沉淀

我想说的第一条就是要学会深入思考,总结沉淀,这是我觉得最重要也是最有意义的一件事。

先来说深入思考。在测试员这个圈子里,常能听到一些言论:我这个工作一点技术含量都没有,这能让我学到什么东西?抛开一部分调侃和戏谑的论调不谈,这可能确实是一部分同学的真实想法,至少曾经的我,就这么认为过。后来随着工作经验的积累,加上和一些高level的同学交流探讨之后,我发现这个想法其实是非常错误的。

之所以出现没什么可学的这样的看法,基本上是思维懒惰的结果。任何一件看起来很不起眼的小事,只要进行深入思考,稍微纵向挖深或者横向拓宽一下,都是足以让人沉溺的知识海洋。

所以说学习和成长是一个自驱的过程,如果觉得没什么可学的,大概率并不是真的没什么可学的,而是因为自己太懒了,不仅是行动上太懒了,思维上也太懒了。

可以多写技术文章,多分享,强迫自己去思考和总结,毕竟如果文章深度不够,大家也不好意思公开分享。

积极学习,保持技术热情

不可否认,互联网行业在有一点上确实不如公务员等体制内职业。但是这个问题里35岁程序员并不是绝对生理意义上的35岁,应该是指那些工作十几年和工作两三年没什么太大区别的程序员。后面的工作基本是在吃老本,没有主动学习与充电,35岁和25岁差不多,而且没有了25岁时对学习成长的渴望,反而添了家庭生活的诸多琐事,薪资要求往往也较高,在企业看来这确实是没什么竞争力。

而如果我们积极学习,保持技术能力、知识储备与工作年限成正比,这到了35岁哪还有什么焦虑呢,这样的大牛我觉得应该也是各大公司抢着要吧?但是学习这件事,其实是一个反人类的过程,这就需要我们强迫自己跳出自己的安逸区,主动学习,保持技术热情。在滴滴时有一句话大概是,主动跳出自己的舒适区,感到挣扎与压力的时候,往往是黎明前的黑暗,那才是成长最快的时候。相反如果感觉自己每天都过得很安逸,工作只是在混时长,那可能真的是温水煮青蛙了。

刚毕业的这段时间,往往空闲时间还比较多,正是努力学习技术的好时候。借助这段时间夯实基础,培养出良好的学习习惯,保持积极的学习态度,应该是受益终身的。至于如何高效率学习,网上有很多大牛写这样的帖子,到了公司后内网也能找到很多这样的分享,我就不多谈了。

可以加入学习小组和技术社区,公司内和公司外的都可以,关注前沿技术。

主动承担,及时交流反馈

前两条还是从个人的角度出发来说的,希望大家可以提升个人能力,保持核心竞争力,但从公司角度来讲,公司招聘员工入职,最重要的是让员工创造出业务价值,为公司服务。

虽然对于校招生一般都会有一定的培养体系,但实际上公司确实没有帮助我们成长的义务。而在能为公司办成事,创造价值这一点上,我觉得最重要的两个字就是主动,主动承担任务,主动沟通交流,主动推动项目进展,主动协调资源,主动向上反馈,主动创造影响力等等。

一定要主动,可以先从强迫自己在各种公开场合发言开始,有问题或想法及时one-one。

除了以上几点,还有一些小点我觉得也是比较重要的,列在下面:

第一件事建立信任

无论是校招还是社招,刚入职的第一件事是非常重要的,直接决定了leader和同事对自己的第一印象。入职后要做的第一件事一定要做好,最起码的要顺利完成而且不能出线上事故。

这件事的目的就是为了建立信任,让团队觉得自己起码是靠谱的。如果这件事做得比较好,后面一路都会比较顺利。如果这件事就搞杂了,可能有的leader还会给第二次机会,再搞不好,后面就很难了,这一条对于社招来说更为重要。

而刚入职,公司技术栈不熟练,业务繁杂很难理清什么头绪,压力确实比较大。这时候一方面需要自己投入更多的精力,另一方面要多跟组内的同学交流,不懂就问。最有效率的学习方式,我觉得不是什么看书啊学习视频啊,而是直接去找对应的人聊,让别人讲一遍自己基本就全懂了,这效率比看文档看代码快多了,不仅省去了过滤无用信息的过程,还了解到了业务的演变历史。当然,这需要一定的沟通技巧,毕竟同事们也都很忙。

脸皮要厚一点,多找人聊,快速融入,最忌讳有问题也不说,自己把自己孤立起来。

拍马屁是真的香

拍马屁这东西入职前我是很反感的,我最初想加入互联网公司的原因就是觉得互联网公司的人情世故没那么多,事实证明,我错了…入职前几天,部门群里大leader发了一条消息,后面几十条带着大拇指的消息立马跟上,学习了,点赞,真不错,优秀,那场面,说是红旗招展锣鼓喧天鞭炮齐鸣一点也不过分。

除了惊叹大家超强的信息接收能力和处理速度外,更进一步我还发现,连拍马屁都是有队形的,一级部门leader发消息,几个二级部门leader跟上,后面各组长跟上,最后是大家的狂欢,让我一度怀疑拍马屁的速度就决定了职业生涯的发展前景(没错,现在我已经不怀疑了)。

坦诚地说,我到现在也没习惯在群里拍马屁,但也不反感了,可以说把这个事当成一乐了。倒不是说我没有那个口才和能力(事实上也不需要什么口才,大家都简单直接),在某些场合,为活跃气氛的需要,我也能小嘴儿抹了蜜,甚至能把古诗文彩虹屁给leader安排上。而是我发现我的直属leader也不怎么在群里拍马屁,所以我表面上不公开拍马屁其实属于暗地里事实上迎合了leader的喜好…

但是拍马屁这个事只要掌握好度,整体来说还是香的,最多是没用,至少不会有什么坏处嘛。大家能力都差不多,每一次在群里拍马屁的机会就是一次露脸的机会,按某个同事的说法,这就叫打造个人技术影响力…

想舔就舔,不想舔也没必要酸别人,Respect Greatness。

不要被画饼蒙蔽了双眼

说实话,我个人是比较反感灌鸡汤、打鸡血、谈梦想、讲奋斗这一类行为的,都3202年了,这一套***治还在大行其道,真不知道是该可笑还是可悲。当然,这些词本身并没有什么问题,但是这些东西应该是自驱的,而不应该成为外界的一种强push。

『我必须努力奋斗』这个句式我觉得是正常的,但是『你必须努力奋斗』这种话多少感觉有点诡异,努力奋斗所以让公司的股东们发家致富?尤其在钱没给够的情况下,这些行为无异于耍流氓。我们需要对leader的这些画饼操作保持清醒的认知,理性分析,作出决策。比如感觉钱没给够(或者职级太低,同理)的时候,可能有以下几种情况:

leader并没有注意到你薪资较低这一事实

leader知道这个事实,但是不知道你有多强烈的涨薪需求

leader知道你有涨薪的需求,但他觉得你能力还不够

leader知道你有涨薪的需求,能力也够,但是他不想给你涨

leader想给你涨,也向上反馈和争取了,但是没有资源

这时候我们需要做的是向上反馈,跟leader沟通确认。如果是1和2,那么通过沟通可以消除信息误差。如果是3,需要分情况讨论。如果是4和5,已经可以考虑撤退了。对于这些事儿,也没必要抱怨,抱怨解决不了任何问题。我们要做的就是努力提升好个人能力,保持个人竞争力,等一个合适的时机,跳槽就完事了。

时刻准备着,技术在手就没什么可怕的,哪天干得不爽了直接跳槽。

选择和努力哪个更重要?

这还用问么,当然是选择。在完美的选择面前,努力显得一文不值,我有个多年没联系的高中同学今年已经在时代广场敲钟了…但是这样的案例太少了,做出完美选择的随机成本太高,不确定性太大。对于大多数刚毕业的同学,对行业的判断力还不够成熟,对自身能力和创业难度把握得也不够精准,此时拉几个人去创业,显得风险太高。我觉得更为稳妥的一条路是,先加入规模稍大一点的公司,找一个好leader,抱好大腿,提升自己的个人能力。好平台加上大腿,再加上个人努力,这个起飞速度已经可以了。等后面积累了一定人脉和资金,深刻理解了市场和需求,对自己有信心了,可以再去考虑创业的事。

如果对自己没太大自信的话,可以文末加群一起抱团取暖,记住找我内推。

本来还想分享一些生活方面的故事,发现已经这么长了,那就先这样叭。上面写的一些总结和建议我自己做的也不是很好,还需要继续加油,和大家共勉。另外,其中某些观点,由于个人视角的局限性也不保证是普适和正确的,可能再工作几年这些观点也会发生改变,欢迎大家跟我交流~(甩锅成功)

最后祝大家都能找到心仪的工作,快乐工作,幸福生活,广阔天地,大有作为。

整理了一波之前发布的软件测试资源【点击文末小卡片免费领取】,无套路领取!

基本涵盖了软件测试 的全部核心技术点:测试理论,Linux 基础,MySQL 基础,Web 测试,接口测试,App 测试,管理工具,Selenium 相关,性能测试,计算机网络,组成原理,数据结构与算法,逻辑题,人力资源,技术脑图等等…质量非常高!!!应对技术面试绰绰有余!

全网首发-涵盖16个技术栈

第一部分:测试理论(测试基础+需求分析+测试模型+测试计划+测试策略+测试案例等等)
第二部分:Linux( Linux基础+Linux练习题)
第三部分:MySQL(基础知识+查询练习+万年学生表经典面试题汇总+数据库企业真题)
第四部分:Web测试
第五部分:API测试
第六部分:App测试
第七部分:管理工具
第八部分:Python基础(Python基础+编程题+集合+函数+Python特性等等)
第九部分:Selenium相关
第十部分:性能测试
第十一部分:LordRunner相关
第十二部分:计算机网络
第十三部分:组成原理
第十四部分:数据结构与算法
第十五部分:逻辑题
第十六部分:人力资源

软件测试基础

1、软件测试的步骤是什么?
2、如何录制测试脚本?
3、应该考虑进行如何测试的测试方法
4、怎样估计测试工作量?
5、测试设计的问题
6、当测试过程发生错误时,有哪几种解决办法?
7、测试执行的问题
8、测试评估的目标
9、如何提高测试?
10、C/S模式的优点和缺点
11、B/S模式的优点和缺点
…...

36d7a288838f4e018d871969cc87f92b.png?

Linux

1、grep和find的区别? grep 都有哪些用法?
2、查看IP地址?
3、创建和删除一个多级目录?
4、在当前用户家目录中查找haha.txt文件?
5、如何查询出tomcat的进程并杀掉这个进程,写出linux命令?
6、动态查看日志文件?
7、查看系統硬盘空间的命令?
8、查看当前机器listen 的所有端口?
…...

9745681e844e4748a6367f7c5657fd28.png?

Python编程

1、统计python源代码文件中代码行数,去除注释,空行,进行输出?
2、python调用cmd并返回结果?
3、冒泡排序
4、1,2,3,4 这4个数字,能组成多少个互不相同的且无重复的三位数,都是多少?
5、请用 python 打印出 10000 以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221 等)
6、给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数
7、判断 101-200 之间有多少个素数,并输出所有的素数
8、一个输入三角形的函数,输入后输出是否能组成三角形,三角形类型,请用等价类- 划分法设计测试用例
…...
 

e4d7ec4d3bb549c9a5531e0bff05fb9d.png?

MySQL数据库

1、你用的Mysql是哪个引擎,各引擎之间有什么区别?
2、如何对查询命令进行优化?
3、数据库的优化?
4、Sql注入是如何产“生的,如何防止?
5、NoSQL和关系数据库的区别?
6、MySQL与MongoDB本质之间最基本的差别是什么
7、Mysql数据库中怎么实现分页?
8、Mysql数据库的操作?
9、优化数据库?提高数据库的性能?
10、什么是数据的完整性?
…...

747547df3b644252a4b04b8f0d8e0104.png?

Web测试

1、Web测试和app测试区别?
2、WEB测试环境搭建和测试方法
3、WEB测试教程
4、WEB测试要点及基本方法

......

在这里插入图片描述

APP测试

1、App  稳定怎么做的? Monkey怎么用p (App  稳定测试 )?
2、App 弱网测试怎么做的?

......

接口测试

1、什么是接口?
2、如果模块请求http改为了https,测试方案应该如何制定,修改?
3、常用HTTP 协议调试代理I具有什么?详细说明抓取HTTPS协议的设置过程?
4、描述TCP/IP协议的层次结构,以及每一-层中重要协议?
5、接口产生的垃圾数据如何清理?
6、依赖第三方的接口如何处理?

...... 

在这里插入图片描述

必会工具(selenium+jmeter)

1、如何开展自动化测试框架的构建?
2、如何设计自动化测试用例?
3、webdriver如何开启和退出一个浏览器?
4、什么是自动化测试框架?
5、Selenium是什么,流行的版本有哪些?
6、你如何从命令行启动Selenium RC?
7、在我的机器端口4444不是免费的。我怎样才能使用另一个端口?

...... 

性能测试

1、你认为性能测试的目的是什么?做好性能测试的工作的关键是什么?
2、服务端性能分析都从哪些角度来进行?
3、如何理解压力测试,负裁测试以及性能测试?
4、如何判断是否有内存泄漏及关注的指标?
5、描述软件产“生内存泄露的原因以及检查方式。(可以结合- 种开发语言进行描述)

......


面试指南

1、逻辑题

2、人力资源题

整份文档一共有几百页,全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!希望大家都能够有些收获!

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

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

相关文章

torch.cuda.is_available()为false的解决办法

一、问题 在进行torch进行开发的过程中,我们习惯性的会使用pip install torch这样的方式来安装torch的包。 其实这样的是安装CPU的torch。 在导入包,执行下面代码的过程中,会出现结果为false。 import torchprint(torch.cuda.is_availabl…

04-数据集汇总

一、3D检测数据集 1、Argoverse数据集[参考] 年份:2019年; 作者:Argo AI等; 场景数:共113个场景,室外,包括USA,Pennsylvania,Miami,Florida等&#xff1b…

Django进阶:DRF(Django REST framework)

什么是DRF? DRF即Django REST framework的缩写,官网上说:Django REST framework是一个强大而灵活的工具包,用于构建Web API。 简单来说:通过DRF创建API后,就可以通过HTTP请求来获取、创建、更新或删除数据(…

CFDEM-OpenFOAM-Yade安装教程

在网上搜索与OpenFOAM相关的颗粒两相流计算资料时,发现了一个CFD-DEM coupled simulations with Yade and OpenFOAM。 在此之前,我学习过OpenFOAM自带的颗粒计算求解器,但是自带的求解器有很多缺点,最大的缺点就是颗粒运动方程的求…

10. 实现业务功能--退出登录

目录 1. 实现 Controller 2. 单体测试 3. 实现前端界面 退出的具体实现逻辑如下: 1. 用户访问退出接口 2. 服务器注销 Session( 在 Controller 中可以直接进行处理 ) 3. 返回成功或失败 4. 如果返回成功浏览器跳转到相应页面 5. 结束 一般来说&#…

Python入门--开发工具

Python是一种优秀的编程语言,具有简单易学、开放源代码、高效可靠等特点,广泛应用于Web开发、科学计算、数据分析、人工智能等领域。以下是常用的Python开发工具: PyCharm:JetBrains公司开发的Python IDE,功能强大&…

VMware vSphere Client端设置热添加虚拟机的CPU和内存

使用vSphere Client连接到VMware ESXi Server,在“配置→网络”中,可以看到,当前有两个虚拟交换机,并且为该虚拟交换机分配了管理地址10.10.228.81,点击“添加网络”如图所示。 添加配置向导,在网络类型&am…

AIGC的变革

AIGC(Artificial Intelligence and General Computing)是一个涵盖人工智能和通用计算的领域,它的发展前景非常广阔。以下是一些关于AIGC发展前景的观点: 人工智能市场增长迅速:随着人工智能技术的迅猛发展,…

嵌入式学习之投票系统改进版本

今天周六,9点钟就开始写代码,但是呢,一直在家里面,真的很容易心烦气躁,我正在研究有没有什么方法可以改变我的状态,今天写的代码是做昨天做的选票系统的改进,代码如下:

C语言实现贷款计算器

等额本金,等额本息数学推导:贷款 买房,利息怎么算?不要被忽悠了!李永乐老师讲等额本金和等额本息 一个心血来潮的研究,避免以后买房被坑。 捣鼓了半天才发现原来支付宝的那个利率是年利率不是月利率,坑了…

猿人学刷题系列(第一届比赛)——第四题

题目:采集这5页的全部数字,计算加和并提交结果 地址:https://match.yuanrenxue.cn/match/4 页面分析 首先打开开发者工具然后刷新界面进行抓包。 通过返回的数据来看,我们需要的数据极有可能是位于info键对应的值中,…

Nginx介绍(Nginx是什么?能干什么?)

Nginx的产生 没有听过Nginx?那么一定听过它的"同行"Apache吧!Nginx同Apache一样都是一种WEB服务器,基于REST架构风格,以统一资源描述符(Uniform Resources Identifier)URI或者统一资源定位符(Uniform Resources Locator…

删除有序链表中重复的元素-II(链表)

乌!蒙!山!连!着!山!外!山! 题目: 思路: 双指针,slow和fast,并且增加标记flag初始为1。 如果slow指向节点值等于fast指向节点值&…

JAVA结合AE(Adobe After Effects)AE模板文件解析生成视频实现类似于逗拍(视频DIY)的核心功能

最近看抖音上有很多各种视频表白生成的直播而且直播间人很多,于是就思考如何实现的视频内的文字图片内容替换的呢 ,答案需要用到类似与逗拍一样的视频DIY的功能,苦于我是java,百度了半天没有办法和思路,总不能为了一个…

Hadoop小结(上)

最近在学大模型的分布式训练和存储,自己的分布式相关基础比较薄弱,基于深度学习的一切架构皆来源于传统,我总结了之前大数据的分布式解决方案即Hadoop: Why Hadoop Hadoop 的作用非常简单,就是在多计算机集群环境中营…

typescript报错:‘name‘ was also declared here

问题再现 用 Typescript 时, 遇到一个声明常量 name 的报错。代码如下: let name:string"zhangsan"; let num:number1001;执行编译时报错: 原因 在默认状态下,typescript 将 DOM typings 作为全局的运行环境&#…

windows vscode使用opencv

1.windows vscode使用opencv 参考:https://blog.csdn.net/zhaiax672/article/details/88971248 https://zhuanlan.zhihu.com/p/402378383 https://blog.csdn.net/weixin_39488566/article/details/121297536 g -g .\hello_opencv.cpp -stdc14 -I E:\C-software\…

测试工具coverage的高阶使用

在文章Python之单元测试使用的一点心得中,笔者介绍了自己在使用Python测试工具coverge的一点心得,包括: 使用coverage模块计算代码测试覆盖率使用coverage api计算代码测试覆盖率coverage配置文件的使用coverage badge的生成 本文在此基础上…

Jmeter生成可视化的HTML测试报告

Jmeter也是可以生成测试报告的。 性能测试工具Jmeter由于其体积小、使用方便、学习成本低等原因,在现在的性能测试过程中,使用率越来越高,但其本身也有一定的缺点,比如提供的测试结果可视化做的很一般。 不过从3.0版本开始&…

【流程引擎】---springboot+camunda案例之费用审批流程

目录 一、案例说明二、案例说明2.1、主要代码实现2.2、案例测试分析过程2.3、总结一、案例说明 上篇文章介绍了springboot简单集成Camunda,后续以具体案例来介绍Camunda使用。 下面介绍一种简单的“费用审批流程”。该流程会串行的经历三层组织审核,一直到流程结束。 其中,…