记第一次出差得出的经验
文章目录
- 1:背景
- 2:过程
- 3:心得
1:背景
由于上家公司的某种原因,离职来到了新公司,内中原因不足道也。新公司业务方向暂且不说,入职后,个人看着以前的产品视频学习了不到两周,被带教老大告知有新项目,问我要不要参与。
说实话,对公司产品不了解的我,当时有些抵触。但是,为了表现自己的积极性,还是说可以的,还好带教老大跟我说,不让我做主力,多以学习为主(我上套了),我满心高兴,答应了。后面就是出发去佛山,路程很远,可能时第一次来到这么远的地方,陌生且孤单。当天晚上,见到了项目的其他人,同组内的一个前端,其他的都不了解。但是,问题来了,我当时忽略了一个重要的问题,做主力的后端没到,我太天真,没发现。次日,办理入场手续,开始进入办公地方(什么地方,什么项目可忽略)
2:过程
来到电脑旁,内部员工给输入了登机密码,虚拟机密码,经过几道程序,见到了所谓的开发代码(没错,此次是二次开发)。打开古老的 eclipse,main 方法启动的项目,注释和文档都没有(不要提什么接口文档,数据库文档,架构图),问就是没有,自己克服。默默接受,许久不用 eclipse,真的难受(还有一个问题就是内网没有网络,无法下载,外面的东西拷不进去,内部的东西拿不出来,想更新 jar 包,想下载 IDEA,想什么呢)。
随着时间的推移,第一阶段开发的差不多了,发现打不了包(不要说什么我菜,人家使用某个收费工具打的,我在代码中发现的文档),公司和原开发商也不提供。我们首先想到的是替换原 jar 包中的 class 文件,经过一个下午的尝试,成功了。演示后,被告知,这是一种投机的方式,他们后续不接受,让我们探索新的方法,同时,原厂商给了一般新的代码,让我们基于新的开发(底层代码被封装成了 jar 引入,看不到核心逻辑,同时,打开源码包进行了加密。打包也遇到很多问题,上一篇博客就说了这个问题)。
进入二阶段后,开发到年前,被告知,开发时间要求被提前两个多月,需要赶上他们的演练进度,当时就我一个后端,我不得不救助公司,派来了一个新的后端(就是原本主开发,我不是来给他当小弟的吗?这个是怎么回事?)。给的新版代码,底层核心逻辑我们看不到,被封装了,但是要求我们摸清他们的实现逻辑,并且给客户说清楚,我们当时无比的难受,我觉得要不是我理性的控制自己,我能和他们干起来。原代码中,有两种方式,脚本和人工,现在需要添加 api 方式,但是调度逻辑代码不知,我们就不能直接去修改调度逻辑,首先采用的是,将 api 调用前封装在一个脚本里,脚本调用后再去调用 api ,我们都做完了,年前汇报被否定了,给的理由也很奇葩,要 api 有什么用?我们僵持不下,随后问到,转化成人工是否可行,他们也没给出回复,也没说行,也没说不行,就是说存在风险。
年后,我们没办法,只能再次将api 转化成人工,中间还有解释各种逻辑,开发到联调到测试到上线演练,只有一周,结果很明显,我们翻车了,演练出现了问题,我们被客户一顿狠批(ps:前端同事受不了,年后离开了)。没办法,我们又只能再去测试,修改代码。没想到,客户来了一个新的玩法,他们联系到了原开发商,让他们来实现 api 的调度逻辑,让我们合并代码,还要保证我们的开发功能正常,距离下一次演练有三周,给原厂商两周事件,给我们一周事件,我们合并代码,测试是否可用,上线不要时间的吗?没办法,我们又加班加点,好不容易成功上线,演练当天确实出了一些问题,但是也证明了api 可用 (后面我问过原厂商的人,他们怎么做的,竟然是把 api 封装成脚本,我就知道,底层的自动化怎么可能会因为一个项目去修改,偏偏客户还接受了),但是暴漏了几个问题,后面慢慢处理,同事,后端帮忙的同事也走了,就剩下我和项目经理,干成了主开发,干成了运维。中间无数次要走,项目经理无数个理由等着你。
后面就是一次演练,又一次演练,原厂商带来的几个问题他们也不管了,说是都交付了,如果有新的需求需要走公司关系。但是,客户在不断提出现有调度逻辑满足不了的 api 需求,给你一个批量返回接口,让你根据数据分别去执行,你怎么搞?给你返回多个 Cookie,让你全部传递?客户可不管这些,原厂不合作,我们就只能折中再折中,中间加接口,使用真实ip等等,中间还出现了好多了问题,不想提了,想着都好气。最主要的是,绩效被打了差,原因是组织架构做了调整,我被分到了新的组,换了老大,老大认可我的辛苦,但是对部门没有产生效益,我有什么理由,我当时也很无奈,但是老大说,第一次他可以处理,不扣工资。我只能默默答应。
回来了,五一。参与到了新的产品项目中,在培训学习中,中间原来的项目经理多次联系我,我不想理他,我开发的工作做完了,凭什么还要给你做运维,你绩效拿优秀,我就是最差,什么一起扛,你在想什么?还想着10月份让我去支持,想什么呢?(不是我个人想法偏激,一起合作的一个前端,另一个本应该是主开发的后端都觉得此人不行)
3:心得
1:吃了无数的亏,加了无数的班,得出的第一个经验教训,永远不要相信任何人说的话,不要相信别人给你的承诺
2:做程序员,能不出差最好别出差,出差是没有时间概念的;就算出差了,不要做二次开发的工作,不仅对技术没有任何提升,还有无数的坑等着你
3:只做自己分内的事情,开发不要做运维的事情,态度要强硬,做着做着你就逃不掉了。不是所有的付出都是有回报的
4:以自己部门的工作为主,最好不脱离,其他的工作做的再好,别人只会夸项目经理,而你的直属上级会让你绩效最差
5:不要害怕提离职,不要害怕找不到工作,你越是这样想,他们越是压榨你
6:一个项目有没有大坑,别人都知道,可就是不告诉你?你气不气?默默接受,慢慢成长,你的心态会得到进步的
相关文章:
记第一次出差得出的经验
文章目录 1:背景2:过程3:心得 1:背景 由于上家公司的某种原因,离职来到了新公司,内中原因不足道也。新公司业务方向暂且不说,入职后,个人看着以前的产品视频学习了不到两周…...
第12章:视图
一、视图 1.常见的数据库对象 ①表table:表是存储数据的逻辑单元,行和列形式存在。列是字段,行是记录。 ②数据字典:系统表,存放数据库相关信息的表。系统表的数据通常是数据库系统维护。 ③约束constraint&#x…...
Word控件Aspose.Words教程:操作 XPS 和 EPS 文档
Aspose.Words 是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。 Aspose API 支持流行文件格式处理,…...
java并发-Exchanger
## 简介 Exchanger是Java并发包中提供的一个用于线程间数据交换的工具类。它允许在两个并发任务之间进行交换对象,当第一个任务调用exchange()方法时,它会阻塞等待另一个任务也调用这个方法,然后双方交换对象,并返回结果…...
毫米波雷达系列 | 传统CFAR检测(自适应类)
毫米波雷达系列 | 传统CFAR检测(自适应类) VI-CFAR [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dV34CKJt-1684215839850)(毫米波雷达系列 传统CFAR检测(自适应类).assets/image-20230516131206695…...
【2023/05/19】NFA
Hello!大家好,我是霜淮子,2023倒计时第14天。 非确定有限状态自动机(NFA)是一种模拟复杂系统行为的数学模型 目录 一、基本概念和理论 二、优点和缺点 三、应用场景 四、问题和挑战 五、重要性、作用和使用价值 …...
汽车功能安全
前言 近些年来,功能安全在汽车传统底盘域和动力域的应用已较为成熟,各大汽车企业功能安全意识也逐渐增强。在辅助驾驶和自动驾驶爆发式增长的大趋势下,现代汽车的功能安全在目前尤为复杂的电子电气系统中就显得更为重要,功能安全…...
【Python】数据分析与可视化实践:收支日统计数据可视化的实现
Python数据分析与可视化实践:收支日统计数据可视化的实现 Author:萌狼蓝天 Date:2023-5-7 数据读入与基本处理 上图是原始数据的一部分,存放于excel中,首先使用pd读入数据。读入数据后,删除不是收入&#x…...
Halcon 中_xld算子的概念与应用? select_shape_std 和 select_shape_xld区别?
文章目录 1 halcon中XLD的概念与应用1.1 halcon中什么是XLD?1. 2 XLD相关算子1.2 XLD的应用1.2.1 生成XLD的操作1.2.2 选取特定xld1.2.3 3.3 XLD的合并操作2 select_shape_std 和 select_shape_xld区别2.1 select_shape_std 算子介绍2.2 select_shape_xld算子介绍2.3 select_s…...
[pgrx开发postgresql数据库扩展]7.返回序列的函数编写(3)多行表序列
前文再续,书接上一回。 上一回我们解析了如何通过pgrx编写srf,返回一个TableIterator,但是在具体应用的时候,我们还是针对一条记录返回了一行数据(多个字段的一行,也还是一行),并没…...
刚入职,就想跑路了...
刚入职一家公司,想离职又怕找不到新工作。 说实话,这个问题还是蛮常见的,很多时候,入职的公司并不是自己最满意的,即使是最满意的,入职后总会遇到各种各样的不顺心,公司制度不规范啊࿰…...
如何让技术架构师具有预知未来业务发展的能力
大家好,今天我们来分享业务架构,但是我们并不是以产品经理角度讲述一个业务架构是什么以及如何做?而是以一个技术架构师的角度,讲述如何承接业务架构或在没有业务架构的时候,如何判断业务变化趋势而对系统架构提前做出…...
卷麻了,新来的00后实在是太卷了...
在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事,可遇不可求,向他学习还来不及呢。 真正让人反感的,是技术平平&…...
单片机--实战练习
目录 【1】GPIO 1.定义 2.应用 I - Input - 输入采集 O - Output - 输出控制 编辑编辑 3.GPIO结构框图 4.功能描述 输入功能 输出功能 5.相关寄存器 【2】点亮一盏LED灯 1.实验步骤 2.编程实现 3.编译下载 4.复位上电 练习:实现LED灯闪烁…...
Go Etcd 分布式锁实战
1 分布式锁概述 谈到分布式锁,必然是因为单机锁无法满足要求,在现阶段微服务多实例部署的情况下,单机语言级别的锁,无法满足并发互斥资源的安全访问。常见的单机锁如Java的jvm锁Lock、synchronized,golang的Mutex等 对…...
Windows环境下pcl点云库 安装配置教程
本文为Windows配置点云库pcl步骤,具体win10、visual studio 2019、pcl1.11.1。 【1】下载安装包 Releases PointCloudLibrary/pcl GitHub 其中,AllInOne是一个包含了PCL库所有模块的单独下载包,方便快速获取整个PCL库,而pdb则…...
岗位分析与可视化系统(三)
五、可视化 5.1薪资页面 在views,编写薪资分析的代码 def salary(request): uname = request.session[username] userInfo = User.objects.get(username=uname) edus, workexps = getSalary.getPageDt() defaultedu = 不限 defaultworkexp = 不限 if request.G…...
unity进阶学习笔记:json和xml
1早期的数据格式 在早期程序开发中一个简单且常用的数据格式为CSV。该格式单纯依靠逗号来分割数据。目前windows的office依然支持CSV解析,我们可以试着新建一个txt文件,在里面加入逗号分隔的信息: a, 1, 15, 30, true 将txt文件后缀改为csv&…...
数据结构之初识树与堆
前言:前面学习了顺序表,队列,栈,链表,我们知道他们都是一种线性表,是一种线性结构,而除此之外,仍有许多我们还没认识的结构,比如树形结构,不同于线性结构&…...
虚拟化技术 — VirtIO 虚拟设备接口标准
目录 文章目录 目录VirtIOVirtIO 虚拟设备接口标准VirtIO 的前后端分层架构标准VirtIO 的数控路径分离架构标准VirtIO 的传输层标准VirtIO 标准在 Linux 中的实现VirtIO VirtIO 由 Rusty Russell 开发,最初是为了支持自己开发的 lguest Hypervisor,其设计目标是在虚拟化环境…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
Android Wi-Fi 连接失败日志分析
1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
JS设计模式(4):观察者模式
JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中࿰…...
Razor编程中@Html的方法使用大全
文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...
