两三年没涨薪了

前几天到上海见合伙人,有好几位合伙人也都是中型或者是大厂的骨干,基本上是在P8这个级别,大家谈到了几个共同点。

几个典型的现象说一下,既是新闻,也是旧故事。天下的事都雷同。
第一个,老板换了,他下面的人要换一遍。2个身边的案例了,一位是大湾区某技术总监在度假期间,被离开了。起因是老板换了组织调整。
第二个是,大家都玩起了代码量考核。考核些什么呢?考核就是把能够客观化的研发相关的过程、度量数据和线上的这个结果数据都纳入到考核标准里面。根据这些情况,然后对这个绩效去进行评估,你是S还是A还是B。
第三个,沪上小D谈到他所在的大团队总监2-3年没有涨薪了。
整体看下来,不少公司都处于降本增效的阶段。 几年前不少人想着跳槽涨薪, 现在是有份工作就不错了。 某工业4.0 科技公司的CEO说由于客户欠款问题,我们发了6个月半薪了,等款回来再给大家补上。 
前几天又见了一位老同事,现在在某AI公司负责人力资源。 老板还是有不少本事和关系的,公司还是6点下班。 但也纠结招的人明年能不能消化,近期已经减员过2次了。 还算地道,离职员工一般一个季度最后可以拿到拖欠工资。

亚马逊宣布取消远程办公,明年1月2日开始RTO(return-to-office),每周要到公司上班5天,习惯了wfh的员工可能要不适应了。不确定其他北美大厂会不会跟进。

思科大连裁员,主要涉及日韩TAC部门,蓝牌(正式)员工为主,岗位多为技术支持。补偿有两种可选,N+7直接走 或者 N+5延迟2个月再走。不过尽管N+7很豪华,不少员工依旧舍不得离开,因为大连的神仙外企不多,离开了未必能再找到这么好的公司。

真不是传递焦虑,在职要如何办呢?

1、能上班的好好上班,减少抱怨。

一位叫“身心俱疲的中年人” 在某平台吐槽道,

马上46岁,干了18年了。总结下来就是跑输了大时代,不怪别人只怪自己太作,在互联网大厂干了七年也没做出名堂,选择创业公司也没选对,现在只能在国企混着,一把年纪还得迎合别人,看别人脸色,真是身心俱疲,无时无刻不在怀疑自己,也无时无刻不在后悔,唉。
46了还能在国企混,也有好多人羡慕呢。工作不开心,可以做点副业玩。至于看脸色,修炼自己。
2、尽早开始第二曲线

李善友老师有本《第二曲线创新》很不错,里面提到“单一要素最大化”,聚焦第一曲线的一个要素,把它放大为第二曲线的全部。

LinkedIn创始人Hoffman提出的ABZ理论。在他看来所有职场人都要做好三手准备:

A计划:你的本职工作,以及基于此的长期规划,它是你基本生活的保障,要不断投入努力和资源。

B计划:你的人脉资源、你的兴趣爱好、你的副业、你创新的想法,诸如此类,它们是能帮助你实现弯道超车的机会。

Z计划:从A到B这个过程所需要的投资,你的资产规划、你的被动收入、你的积蓄,它们帮助你在面临裁员、减薪之际仍能保障一家人短期的生活。

军哥也是很早开启了线下社群和线上自媒体,当初是兴趣,现在也帮助放大自己单干的业务。未来,【一人公司】会越来越多。

3、成为复合型人才

很多程序员、搞IT的朋友,以内向、不善言辞为荣。很多业务高速发展期的时候,尚可用守着自己的专业技能做好一颗螺丝钉。

但当下及未来,一个共识就是充满了不确定性,比如2023年AIGC的风口,现在人们花在直播/短视频上的时间大大超过阅读图文的时间,更别提20年前的纸媒了。

我们再细看一下。你在一家公司,呆得久,原因是啥?可能你的代码写得好,设计能力强。

但是基本功的训练往往在前5年就完成了,后面增强的是什么?沟通能力,业务理解能力,产品sense,这本身就是多个能力的叠加。所以早就是复合型(π 型)人才要求,无非10年前要求叠加大数据能力,现在要叠加AI 能力而已。

4、去杠杆,减少负债

这个懂的都懂,就不展开了。

如果不想温水煮青蛙,自测一下自己的成长加速度。 如果1年甚至2-3年没有明显的技能成长,或者突出贡献。你的加速度其实已经慢下来了。 人都有惰性, 也都有潜能,一个温水环节会让青蛙慢慢地....

ps,军哥免费星球,欢迎有兴趣的朋友来聊聊,内容涵盖职场、副业、技术等等。

5163470d3678bc9d332e579f0552215b.jpeg



【DQN实现避障控制】使用Pytorch框架搭建神经网络,基于DQN算法、优先级采样的DQN算法、DQN + 人工势场实现避障控制研究(Matlab、Python实现)内容概要:本文围绕使用Pytorch框架搭建神经网络,重点研究基于DQN算法、优先级采样的DQN算法以及DQN与人工势场相结合的方法在避障控制中的应用,提供了Matlab和Python的实现代码。文档还涵盖多种智能优化算法、机器学习与深度学习模型、路径规划技术、无人机控制、电力系统管理等多个科研方向的技术实现与仿真研究,展示了丰富的MATLAB/Simulink应用场景和前沿算法的代码复现,旨在为科研工作者提供全面的技术支持与实践参考。; 适合人群:具备一定编程基础,熟悉Python或Matlab语言,从事人工智能、自动化、控制工程、机器人、电力系统等相关领域的研究生、科研人员及工程师。; 使用场景及目标:①学习和实现强化学习在机器人或无人机避障中的具体应用;②掌握DQN及其改进算法(如优先级采样)的设计与训练流程;③结合传统人工势场法提升智能体避障能力;④获取多种高热度科研方向(如微电网优化、故障诊断、路径规划等)的代码实现与复现方案,助力论文撰写与项目开发; 阅读建议:建议按目录顺序系统性学习,重点关注DQN与人工势场融合的避障策略实现细节,结合提供的网盘资源下载完整代码进行调试与实验,同时可拓展学习文中提及的多种优化算法与深度学习模型的应用方法。
<think>好的,用户想在Navicat中设计数据表并编写SQL代码来实现基于业绩排名的规则。我需要先理解用户的具体需求,然后逐步给出解决方案。 首先,用户提到了业绩排名和累计业绩值,这两个因素会影响。所以,数据表的设计需要包含员工的基本信息、业绩数据、累计业绩以及资信息。可能需要两张表:员工表(employees)和资调整记录表(salary_adjustments)。员工表存储员工的基本信息和当前资,资调整表记录每次调整的情况,方便追踪。 接下来是创建数据表。根据引用[1]中的例子,员工表的结构可以参考employees表,包含员工ID、姓名、部门、当前资、业绩评分和累计业绩。资调整表可能需要调整ID、员工ID、旧资、新资、调整日期和备注。在Navicat中创建表的话,用户可以通过图形界面操作,或者直接写SQL语句。比如: CREATE TABLE employees ( employee_id INT PRIMARY KEY, name VARCHAR(50), department VARCHAR(50), current_salary DECIMAL(10,2), performance_score INT, cumulative_performance DECIMAL(10,2) ); 然后是编写逻辑。用户需要根据排名和累计业绩来决定比例。这里可能需要使用存储过程和事务,参考引用[2]中的存储过程例子。比如,创建一个存储过程,计算每个员工的排名,然后根据排名确定幅。同时,使用事务确保数据的一致性。 规则可能需要用到子查询来计算排名,类似引用[3]中的案例,查找排名第二的成绩。这里可以用窗口函数RANK()或者DENSE_RANK()来获取员工的业绩排名。比如: SELECT employee_id, RANK() OVER (ORDER BY performance_score DESC) AS performance_rank FROM employees; 然后根据排名应用不同的比例,比如前10%10%,接下来20%8%等。同时,累计业绩值可能需要满足一定条件,比如超过某个阈值才有额外幅。 在编写存储过程时,可能需要游标来逐行处理员工数据。使用事务处理,确保在更新资时出现错误可以回滚,参考引用[2]中的事务例子。比如: CREATE PROCEDURE ApplySalaryAdjustment() BEGIN DECLARE done INT DEFAULT FALSE; DECLARE emp_id INT; DECLARE current_sal DECIMAL(10,2); DECLARE perf_score INT; DECLARE cum_perf DECIMAL(10,2); DECLARE cur CURSOR FOR SELECT employee_id, current_salary, performance_score, cumulative_performance FROM employees; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; START TRANSACTION; OPEN cur; read_loop: LOOP FETCH cur INTO emp_id, current_sal, perf_score, cum_perf; IF done THEN LEAVE read_loop; END IF; -- 计算排名和幅 -- 更新资并插入调整记录 END LOOP; CLOSE cur; COMMIT; END; 另外,用户可能需要触发器来自动记录资变更,引用[4]中的触发器例子,使用inserted和deleted表来跟踪变化。比如,在资调整时自动插入记录到salary_adjustments表。 调试部分,用户需要在Navicat中测试存储过程,执行并检查结果是否正确。可能需要手动插入测试数据,运行存储过程,然后查询employees和salary_adjustments表验证数据。 最后,用户可能还需要考虑性能优化,比如索引的添加,或者存储过程的优化,避免全表扫描影响速度。此外,规则的灵活性,比如参数化存储过程,让用户可以通过输入参数调整比例和条件,增加可维护性。 总结步骤应该是:设计数据表结构 -> 创建表和必要约束 -> 编写存储过程处理逻辑 -> 使用事务确保数据一致性 -> 创建触发器自动记录变更 -> 测试和调试。需要确保每一步都符合用户的需求,并且参考了提供的引用内容中的方法。</think>以下是在Navicat中实现业绩排名系统的分步解决方案: 一、数据表设计(建议使用ENGINE=InnoDB保证事务支持) ```sql -- 员工主表 CREATE TABLE employees ( employee_id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, department_id INT, current_salary DECIMAL(10,2) DEFAULT 0.00 CHECK (current_salary >= 0), performance_score INT COMMENT &#39;最新考核分数&#39;, cumulative_performance DECIMAL(10,2) COMMENT &#39;三累计业绩值&#39; ); -- 资调整记录表 CREATE TABLE salary_adjustments ( adjustment_id INT PRIMARY KEY AUTO_INCREMENT, employee_id INT, old_salary DECIMAL(10,2), new_salary DECIMAL(10,2), adjustment_date DATE DEFAULT (CURDATE()), FOREIGN KEY (employee_id) REFERENCES employees(employee_id) ); ``` 二、规则存储过程实现(包含事务处理) ```sql DELIMITER $$ CREATE PROCEDURE ApplyPerformanceRaise() BEGIN DECLARE done INT DEFAULT FALSE; DECLARE emp_id INT; DECLARE base_sal, new_sal DECIMAL(10,2); DECLARE perf_rank INT; DECLARE cum_perf DECIMAL(10,2); -- 创建临时表存储排名 CREATE TEMPORARY TABLE temp_ranking AS SELECT employee_id, RANK() OVER (ORDER BY performance_score DESC) AS ranking, cumulative_performance FROM employees; DECLARE cur CURSOR FOR SELECT t.employee_id, e.current_salary, t.ranking, t.cumulative_performance FROM temp_ranking t JOIN employees e ON t.employee_id = e.employee_id; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; START TRANSACTION; OPEN cur; read_loop: LOOP FETCH cur INTO emp_id, base_sal, perf_rank, cum_perf; IF done THEN LEAVE read_loop; END IF; -- 规则逻辑 SET new_sal = CASE WHEN perf_rank <= (SELECT COUNT(*)*0.1 FROM employees) THEN base_sal * 1.10 -- 前10% WHEN perf_rank <= (SELECT COUNT(*)*0.3 FROM employees) THEN base_sal * 1.08 -- 前30% WHEN cum_perf > 1000000 THEN base_sal * 1.05 -- 累计业绩达标 ELSE base_sal * 1.03 END; -- 更新主表并记录调整 UPDATE employees SET current_salary = new_sal WHERE employee_id = emp_id; INSERT INTO salary_adjustments(employee_id, old_salary, new_salary) VALUES (emp_id, base_sal, new_sal); END LOOP; CLOSE cur; COMMIT; DROP TEMPORARY TABLE temp_ranking; END$$ DELIMITER ; ``` 三、调试与执行步骤: 1. 在Navicat查询窗口执行建表语句 2. 插入测试数据: ```sql INSERT INTO employees(name, department_id, current_salary, performance_score, cumulative_performance) VALUES (&#39;张三&#39;, 101, 15000.00, 95, 1200000), (&#39;李四&#39;, 102, 18000.00, 88, 980000), (&#39;王五&#39;, 101, 20000.00, 92, 1500000); ``` 3. 执行存储过程: ```sql CALL ApplyPerformanceRaise(); ``` 4. 验证结果: ```sql SELECT e.*, sa.new_salary, sa.adjustment_date FROM employees e LEFT JOIN salary_adjustments sa ON e.employee_id = sa.employee_id; ``` 四、扩展功能建议(参考引用[2][4]): 1. 添加触发器自动记录修改: ```sql CREATE TRIGGER salary_audit AFTER UPDATE ON employees FOR EACH ROW BEGIN IF OLD.current_salary <> NEW.current_salary THEN INSERT INTO salary_adjustments(employee_id, old_salary, new_salary) VALUES (OLD.employee_id, OLD.current_salary, NEW.current_salary); END IF; END; ``` 2. 添加索引优化查询性能: ```sql CREATE INDEX idx_performance ON employees(performance_score); CREATE INDEX idx_cumulative ON employees(cumulative_performance); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值