抹桥的博客
Language
Home
Archive
About
GitHub
Language
主题色
250
1474 words
7 minutes
Three Years at Alibaba: A Retrospective

Today marks my third anniversary at Alibaba, and I’d like to take this opportunity to reflect on my work over these three years. Before joining, a friend who referred me mentioned I might be responsible for developing the Japan site. I was quite excited at the time – international business, ‘international’! However, a few days before I joined, there was a massive organizational restructuring. My mentor changed, and so did my business domain. Aside from working on detail for a short period right after joining, my main focus later became the international marketplace storefronts.

Business Development#

Although the international storefront business is quite stable, there are still many areas for improvement and optimization. Over the past three years, my major projects have included:

  • Personalized Storefronts
  • CP Structured Display
  • Dual Track
  • Admin Backend Upgrade
  • Mobile Storefront 2.0
  • Content-driven Storefronts

I’d say I’ve made my own contributions to cross-border international trade.

Efficiency & Architecture Upgrades#

Development Efficiency Improvement#

Initially, I was responsible for detail development, and the first requirement I received was for something logistics-related. I thought it was very simple and self-estimated 2 days. My mentor told me I underestimated it, suggesting a week. My internal monologue at the time was: ‘A week for such a simple feature?’

However, when I actually started working on it, I realized that even a week would be tight. The detail page back then was a classic web application entirely dependent on backend VM rendering, with no frontend-backend separation. Almost any feature required changes from both frontend and backend, and debugging could only happen after deployment to the pre-release environment, which took nearly 20 to 30 minutes per deployment. You can imagine how incredibly low the development efficiency was. This ultimately led to me experiencing an all-nighter in my first week, making me almost want to resign on the spot. It was 2018, and such outdated technology was hard to imagine.

But I held back. Problems are opportunities for me to shine. So, I started working on efficiency improvements, creating a local debugging tool. It supported local VM debugging and both synchronous and asynchronous data mocking. This reduced the debugging cost from 20 minutes to see results after each code change to a direct local preview in 3 seconds.

Later, when I took over the storefronts, the first requirement was an internationalization refactor, which involved modifying dozens of modules. The steps required to modify a single module were:

拉取模块代码
  -> 安装相关依赖
    -> 修改多语言文案
      -> 构建代码
        -> 提交到预发环境
          -> 预发环境测试
            -> 发布代码到线上
              -> 走内部发布平台发布审批
                -> 发布代码上线

The process was incredibly tedious; deploying one module took half a day. If I had to modify dozens, it would be an eternity. So, I wrote a batch operation script that automated most of the process, except for the pre-release testing phase, which still required manual intervention. In the end, the entire requirement was completed in about four days.

Mobile Storefront Technology Stack Upgrade#

Later, I took over the mobile storefronts. I heard that two people had already left this business before me. After taking over, I realized, ‘Wow, this is indeed a deep pit.’ The project was developed based on weex, and the overall architecture was incredibly ‘magical’ and hard for ordinary people to understand. Operations from development and debugging to release were unbelievably ‘magical,’ no wonder the previous people couldn’t handle it.

After taking over, I slowly began to manage the business while familiarizing myself with the entire mobile storefront codebase. At the same time, I was researching the feasibility of refactoring the entire mobile storefront using H5. After extensive research, an online experiment, and a year of effort, I finally refactored the entire weex storefront with H5 technology.

Not only did development efficiency significantly improve, but business data also showed good results. As the first scenario in our ICBU to use H5 for core business on the client side, the implementation process involved collaborating across large teams and with client-side colleagues to establish the entire H5 development pipeline on the App. This included zCache, JSbridge, analytics tracking, immersive experiences, and other client-side capabilities, all of which basically supported H5 scenarios. Most importantly, it proved that using H5 for display-oriented pages on the client side is entirely feasible, and concerns about performance and user experience can be resolved.

Thanks to the successful experience in our scenario, other business teams subsequently began migrating from weex to H5.

Performance Optimization#

Another area where I invested significant effort was performance optimization. At the time, the overseas access performance of the entire storefront was unsatisfactory. After more than a year of optimization and improvements, both PC and mobile storefronts have been optimized from the original **s+ (seconds plus) to an average of under 1.5 seconds overseas, which was quite challenging. For specific optimization strategies, you can refer to {% post_link shop-performance-improve Storefront Experience Optimization Summary %}.

Throughout the performance optimization process, frequent collaboration with external departments and various other roles was required. My communication and coordination skills grew significantly, and I also gained a deeper understanding of the entire full-link business system.

Similarities and Differences at Alibaba#

Similarities#

The similarities between working at Alibaba and other companies are that, as a regular technical developer, you need to handle requirements, write code, test, deploy, and perform all the other tasks expected of a technical professional.

Differences#

The differences in work are more pronounced. Alibaba has a ‘361’ system, which mandates that 10% of employees receive the lowest performance rating of 3.25. Receiving a 3.25 means no promotion, no salary increase, and no year-end bonus. Furthermore, two consecutive 3.25 ratings carry the risk of being advised to leave.

Moreover, the assessment itself isn’t just about a technical person doing what’s technically required. The company expects technical staff to think critically, have business sense, possess technical influence, lead business with technology, and deliver tangible output – these are points that are generally not strongly emphasized in other companies. As for whether writing clean code, delivering high-quality test builds, or clever designs would lead to a good performance rating, my personal experience says no. I discussed this with my manager, and their response at the time was: ‘These are your basic requirements.’ Of course, requirements might differ across departments.

This leads to immense pressure and mental exhaustion when working at Alibaba. Almost from day one, you have to consider what deliverables you can produce during your three-month probation period for your conversion defense. After conversion, you need to plan for the fiscal year, meaning what output you can generate that year – and, of course, simply taking on business requirements is generally not considered your output; those are basic expectations.

So, you see many people starting to worry in April: ‘What should I do this year? Will this project yield results? Am I the primary owner of this area?’ and so on. Once a direction is set, they spend their days in meetings reviewing various product requirements, write code at night, and constantly think about the progress of their annual goals.

It’s utterly exhausting mentally.

Personal Feelings#

I’ve been at Alibaba for three years; it’s been exhausting, but I’ve certainly grown.

The exhaustion is real; I’m physically and mentally drained. Even though our department is considered less intensely competitive, most people still leave after 9 PM, and with performance pressure, I constantly have to think about how to achieve my KPIs. When I was at NetEase, after work, I’d read books, browse GitHub, write demos, or play games and chat on forums – I was incredibly happy. At Alibaba, after work, I can pretty much only play games. Anything that requires mental effort, I just don’t want to do. I don’t even want to play games that require a bit of thinking, even though I used to love strategy games like Stellaris and Civilization. Now, going home truly means pure rest; I have virtually no personal life outside of weekends.

As for growth, I’ve indeed grown a lot. My overall professional abilities, such as communication, coordination, and planning, as well as my technical vision and depth, have significantly improved. My career progression at the company has also been roughly in line with my self-expectations; I was nominated for promotion to P7 in my second year, which I’m quite satisfied with.

However, everything comes at a cost. Along with rapid growth, my physical condition has deteriorated significantly. Less than two months after joining, I gained nearly 20 jin (about 22 pounds), which I call ‘overwork fat.’ Moreover, I’ve recently noticed my memory getting worse, and the abnormal findings on my annual physical exams have increased year by year. This state of affairs is definitely unsustainable, so I’ve recently been adjusting my overall work routine, hoping to balance work and life as much as possible through my own efforts.

Finally, happy third anniversary to myself.

This article was published on June 4, 2021 and last updated on June 4, 2021, 1584 days ago. The content may be outdated.

Three Years at Alibaba: A Retrospective
https://blog.kisnows.com/en-US/2021/06/04/three-years-summary-for-alibaba-work-experience/
Author
Kisnows
Published at
2021-06-04
License
CC BY-NC-ND 4.0