CN

Reflections on Work and Growth (2017)

Word count: 1.1kReading time: 6 min
2017/04/23
loading

In the blink of an eye, it’s 2017. I’ve been working for nearly four years. I went to school in Weihai in 2009, started my internship in Shanghai in 2012, stayed in Shanghai after graduating in 2013, joined Meizu in Zhuhai in 2014, and have been here ever since.

I’ve been writing on this blog since graduation—writing, deleting, and rewriting—recording my journey from App development to System App development, and finally to System Framework development. Looking back after a few years is a great way to appreciate how far I’ve come.

This post records my thoughts on my blog, my job, my work habits, and my expectations for 2017. It’s a mix of confusion and ambition.

We are already 30% through 2017. I hope it’s not too late to share this.

About the Blog

Looking at the timestamp of my last post, it’s been exactly a year. I’m quite ashamed. Every time I intended to start writing again, something always got in the way.

When I first graduated, I loved writing. Study notes, tutorials, everything went up on the blog. But as my career progressed and I learned more, I wrote less. One reason is that as my technical level improved, I realized my depth was still lacking. I knew the “how” but often not the “why.” In that state, I worried my writing might mislead others.

Now that I’ve had a little more time to learn, I want to share some of the experience and tips I’ve picked up. I also want a record for myself. If I don’t write down an idea, it’s easy to forget it.

About Work

From my internship at HTC, a short stay at Firefly Lewa, to Meizu, I’ve worked for several years now—all in Android. Moving from App to System development has taught me that software engineering is fascinating, especially when your features are used by millions. That excitement and responsibility drive me to be better. I believe Android’s dominance in the smartphone world won’t be shaken for at least another five years, so it’s worth investing time here.

Beyond specific technical points, learning Android’s design philosophy, software architecture, and cultivating the ability to solve general problems is even more important. That is my current focus.

I haven’t decided which technical area to go deeper into yet. Right now, Android and Linux process management and CPU scheduling interest me. On the performance side, I’m leaning toward responsiveness, smoothness analysis, and tuning. These areas alone are enough to keep me busy for a long time.

Visiting the headquarters a few days ago, I saw that our company released 15 phones in 2016. Each one required performance tuning. Between the massive list of performance features and the unique performance bugs on every model, the team barely had time for deep, meaningful work. It felt like we were standing still. I hope to change this in 2017—starting with myself.

About Work Scope

My work mainly involves system-level optimization. I cover a lot of ground without going very deep. This year, I want to pick one area and really work on it:

  1. System-level performance optimization (Framework and App layers).
  2. Optimizing responsiveness, smoothness, memory, startup speed, overdraw, HWUI, and SurfaceFlinger.
  3. Defining performance test cases and standards.
  4. Identifying and implementing new performance optimization points.
  5. Developing key system projects like the Intelligent System Tuner and process priority optimization.
  6. Analyzing performance issues for both legacy and new devices.
  7. Training new employees and hosting internal tech sharing sessions.
  8. Competitive analysis.
  9. Documentation and summaries.

About Habits

Since 2016, I’ve developed a set of work habits, but I haven’t always followed them strictly. In 2017, I need to be more disciplined.

Daily Schedule

Every morning, I plan out my day based on yesterday’s records and emails:

  • Priority: Identifying the priority of each task and doing the most important ones first.
  • Time Estimation: Estimating the time for each task, down to 30-minute blocks.

I also leave a buffer for emergencies—like someone needing an urgent analysis that disrupts my plan. Managing time is a skill. Based on my experience at the company, my schedule usually looks like this:

  • Morning: Fewer interruptions. I focus on developing important features or researching new technologies.
  • Afternoon: Handling bugs, emails, and less critical features.
  • Evening: Technical research.

Of course, reality often gets in the way of the ideal. Software development is unpredictable. Someone suggested using a Pomodoro timer to avoid interruptions, but my personal tip is: just wear headphones!

I use Tower to manage my personal tasks. I tried to get the team to use it for a while, but it never quite fit, and they gave up. So here I am, using a team tool on my own. Priorities and times are displayed as tags:

Work Logging

After arriving home, I record the day’s work. While Tower is great for planning, it’s not ideal for logging. It’s hard to review, and personal logic or ideas get lost in it.

I use MWeb for logging. I record every task completed, no matter how small. For important tasks, I record my logic and solution. I also do weekly summaries, pulling from Redmine, email, and Tower. This ensures I don’t miss important data.

Article Clipping

I use Evernote to clip good articles or important findings, which I organize and review periodically.

About 2017

The company has been quite turbulent lately. Several colleagues have left, and we are in a painful transition phase. I’ve had my hesitations, but I’m not spending too much time overthinking it. I’ll just do every task at hand well. Opportunity favors the prepared.

As a software engineer, coding ability must always come first. I need to learn from my idol, 百万 (the screenshot below shows a week with 51 hours of coding)!

Million

About Me && Blog

Below is my personal intro and related links. I look forward to exchanging ideas with fellow professionals. “When three walk together, one can always be my teacher!”

  1. Blogger Intro
  2. Blog Content Navigation: A guide for my blog content.
  3. Curated Excellent Blog Articles - Android Performance Optimization Must-Knows
  4. Android Performance Optimization Knowledge Planet: The paid community stopped operating in 2026 and no longer accepts new members; this link preserves its history.

One walks faster alone, but a group walks further together.

Scan WeChat QR Code

CATALOG
  1. 1. About the Blog
  2. 2. About Work
  3. 3. About Work Scope
  4. 4. About Habits
    1. 4.1. Daily Schedule
    2. 4.2. Work Logging
    3. 4.3. Article Clipping
  5. 5. About 2017
  • About Me && Blog