Strictly speaking, this post is one day late, so apologies to my 2019 self.
Physical age may change, but the drive to fight is still burning, because this is the career I love.

First half
From February to June, I stayed on a delivery enterprise project A. The tech stack was [React, Spring Boot, MongoDB, etc.]. I played a basic developer role, mainly frontend, but also took some backend tasks.
The challenge of this project was integration and collaboration with many systems.
Reflecting on how this project improved me: it was more about collaboration and steady execution. From a frontend perspective, there were many issues, but how to change and push those changes was the real problem.
A painful lesson
I once upgraded redux. Packaging had no issues, but QA found a serious problem. We eventually fixed it, but it taught me hard lessons.
- For version upgrades, caution is necessary. As the industry says,
open source is free, but versions require caution. - You must read changelogs and understand them. Be clear about the impact scope of major, minor, and patch versions.
- Any major new change should be kept within your controllable range - for example, build a quick demo first, then promote it into the project.
Second half
Mid-year, I was transferred to a new Project B, and I was lucky to participate from start to current go-live in March. For me, taking a project from zero to launch felt great, since I was a core contributor from start to finish.
This project used the same tech stack as Project A. The difference was my role. I became the frontend lead. When I started, I reflected on why Project A had so many frontend issues, so I redesigned and adjusted the overall architecture. Here is what I did:
IDEA plugins: To make code review and commit standardization easier, I developed and improved two plugins. That made me familiar with the IDEA plugin mechanism, and I could solve some manual work at this layer.Frontend hooks: The overall frontend hook mechanism became more robust - static analysis, code style checks, commit message format checks, and UT when pushing upstream. As a result, if a commit goes through, it’s hard to fail in Jenkins. “Hard” because Jenkins still sometimes fails to pull code, which causes a red build. That issue hasn’t been solved yet.Second-party packages: The project has two web apps, and I felt there was a lot of repeated development in Project B. So I led the team to build shared packages. The goal was simple: DRY and an enterprise UI foundation. Version management followed standards strictly. Over time, this greatly improved productivity and safety.Frontend architecture: Compared with Project A, Project B’s architecture has been stable so far, thanks to multiple small adjustments. There are still some design flawsthat do not affect feature development, such as putting all requests in the saga layer, forcing data into Redux. I’m still thinking about how to solve this.
At this point, the overall project is close to the end. The hardships in between are felt by everyone on the team. One word: tired. That tiredness shows in my weight gain, worsening eyesight, and serious physical exhaustion.
Career direction
After some struggle, I made a choice at year-end that didn’t feel too hard: I decided to leave TW.
TW to me
- The 1.5 years at TW gave me little, but also a lot. I don’t regret coming here. These thoughtful partners helped me learn a lot,
except for a few. - I think the higher you climb, the smaller the circle becomes. Maybe one day I’ll return. Who knows.
The new job
For the new role, I don’t have high expectations. I hope to stay grounded, keep doing my work happily, and focus more on outputting value and showing value.
Of course, my personality means I often think in an immature or unstable way. If reality isn’t what I want, I can only keep looking.
My attitude toward job changes
I used to resist changing jobs and thought, “Why be so picky?” But today I think differently. If a person and a job don’t fit, you can’t change the environment. Maybe you’re just out of place. So sometimes changing is right. Just do your job well while you’re there.
We respect work, and we also respect ourselves.
Family
I’m getting older, and my family is no exception. Because of work, I’m often far from home. Sometimes I wonder, why? But this is probably the best choice for now. I control my fate. As someone in IT, if I’m not in a city full of opportunities, where else should I go?
What I can do is care for and love my family more. I now call home almost every day. If I have time to meet friends, why not spend more time caring for my family?
During my annual leave, I took my grandmother to Chongqing. Forgive me for being clueless - I didn’t realize how hilly that city is, and it wore her out. But she was still happy because she rarely traveled. This year I hope to take her to Xiamen or Sanya.
Habits
Writing blogs
My blogging output increased significantly this year - applause to myself. I write for a few reasons: (1) to influence and share; to help the team understand issues, I summarize real project problems and solutions, so we don’t waste time repeating. (2) I found my blog traffic was decent via Google Analytics, so I introduced AdSense to try traffic monetization. I don’t care about the money yet, but I like this healthy way of monetizing knowledge.
Reading
Medium
I read Medium a lot in the first half of the year and less in the second half, but I still read it. Medium articles are generally high quality. It’s a good supplement beyond books, source code, and official docs.
O’Reilly
Since I started reading on the iPad mini I bought, I got hooked on this platform.
Foreign-language books
After reading a few, the language barrier became smaller. The technical reading fluency I once hoped for is basically within reach.
Comprehensive and up-to-date books
It feels like anything you can think of is there once you search. No need to say more.
YouTube
- YouTube is now my main source of technical videos. I realized videos and books each have their advantages; videos are a great supplement. So I got a YouTube membership this year and loved it.
Final Thoughts
- Looking back on the year, it was exhausting and hard, but I made it through.
- Especially in the second half, physical output exceeded mental output. I didn’t like that, so I’m seeking change.
- In the new year, I want to enjoy life more, treat myself better, and keep traveling with my family.
- In the new year, I want to clarify my career path. I’ll be 29, and by 30 I should be settled down.

