跪拜 Guibai
← All articles
Full-Stack · Agent · AI Programming

Inside a Chinese SOE: Pay Cuts, Layoffs, and the Case for AI Full-Stack

By 双越AI_club ·
Read original on juejin.cn ↗ Google Translate ↗ Alt translation

Pure frontend roles are already being squeezed inside China's state-owned sector, and AI coding deepens that squeeze. The fallback that existed a few years ago, remote work for foreign companies, is largely gone, so the remaining exit is full-stack capability.

Summary

AI coding has reached one of the most conservative corners of China's tech employment: a state-owned company in the financial-bond industry in Beijing. This year the company started using roo-code with DeepSeek v4. The stack those tools work on is a decade old. Many frontend projects still run Vue2, and the backend is Java, Spring Boot, and MySQL. Frontend and backend remain strictly separated, and full-stack development has not been promoted internally.

Headcount is shrinking at the same time. Permanent positions are mostly leadership, and roughly 90% of front-line requirements, development, and testing work is outsourced. After AI became common, many people were laid off and hiring stopped. This year overtime pay and bonuses were canceled and salaries were cut. Morale is low enough that people stall work and slack off all day, even though the projects themselves are stable and requirements keep coming.

The advice, from Shuangyue (wangEditor author and a former Baidu and Didi senior frontend engineer), is to retrain as an AI full-stack developer. Remote frontend work for foreign companies, which spiked around 2022, has collapsed because overseas firms are also laying off and AI coding pushed everyone to full-stack. He argues the situation gives the engineer two advantages: spare time and real company projects to learn from. Even a slow six-month study path lands by next spring, just in time if a job search becomes necessary.

Takeaways
— At this SOE, permanent posts are mostly leadership; about 90% of requirements, development, and testing work sits with outsourced contractors.
— AI adoption coincided with layoffs and a hiring freeze; overtime pay and bonuses were canceled, and salaries were cut.
— The company uses roo-code with DeepSeek v4, but still keeps frontend and backend separated and has not pushed full-stack development.
— Many frontend projects still run Vue2, a roughly ten-year-old framework; backend is Java with Spring Boot and MySQL.
— Remote frontend work for foreign companies spiked around 2022 and then collapsed as overseas layoffs and AI coding erased those roles.
— The recommended move is to spend spare time learning full-stack development on real company projects, with a six-month horizon.
Conclusions

AI tooling entered this SOE before the stack modernized: roo-code and DeepSeek v4 now sit on top of Vue2 and Java/Spring Boot from ten years ago, so AI is being used to accelerate old work rather than to build new architecture.

At a company with stable projects, layoffs plus canceled bonuses and pay cuts mean AI adoption is being used to cut headcount in replaceable delivery roles, not to fund new product work.

A stable stack any new hire can pick up makes the frontend-only worker easier to replace; the full-stack advice addresses employability first.

Concepts & terms
Roo Code
An AI coding agent that runs inside a code editor; in this account, the company pairs it with DeepSeek v4 for code generation and editing.
AI full-stack
A workflow where one engineer, aided by AI, handles both frontend and backend work, replacing the traditional split between the two. This is the recommended direction for a frontend-only programmer.
Touch fish (摸鱼)
Chinese workplace slang for slacking off during working hours. In this account, employees with canceled bonuses and pay cuts stall tasks and idle through the day.
From the discussion
Featured comments
黎大仙

Being full-stack is hard these days too — with involution and intense competition, it's difficult to stand out.

AI向善

As a programmer, I ran into a different kind of problem: nothing abnormal showed in the logs, and only distributed tracing finally located the root cause.

See top comments, translated →
Source: juejin.cn ↗ Google Translate ↗ Backup ↗