Career development
3 Career Killers for Software Engineers
Not thinking clearly about staying or leaving
- Considerations: 1. Manager 2. Pay
- Sure, that hop could increase your compensation but you could be leaving a good team and moving to something worse.
- If you’re in a bad environment, don’t believe promises but watch the management’s actions to see if they’re actually dealing with the root problem.
- Ultimately, if you’re in a good spot, don’t throw it all away. You’ll only recognize your golden ages from hindsight.
Preferring Output Over Impact
- Finding task that differentiate yourself.
- Finding a meaningful refactor that prevents future bugs is better than routinely integrating package updates.
Great to have a nose for outsized impact.
Get Your Money Right
Time in the market is better than timing in the market.
How to manage time
How to leetcode
Manage up
How to become a SDM
SDM and time management
工作的本质是时间管理,任务优先级管理和目标管理。我们可以将具体工程实现抽象成上面一般概念,从而形成方法论:一件事到底怎么做就可以做成?能够做好manager,自己的生活也不会过得差,也大概率能管理好自己一生。其实对于技术出身尤其是很多 STEM 的PhD,都有非常好潜质去做一个好的manager,就是因为PhD不仅仅是学术技能的训练,关键也是怎么把事情做好的训练。
如果说Team Leader 不仅仅需要关注自己实际工作对于项目的推进,还需要指导和帮助下属设定和完成目标,那么好的manager就是后者工作方向上更进一步:在已经洞察工作方法论的基础上设定一个能够摸得着,但需要一定努力的,同时又能尽可能地体现出团队整体工作价值的目标。
How to write a design doc/ORR
The problem
It can take 2~3 weeks for me to finish one design doc/ORR. When there’s a need to write such a doc, I would postpone the work as late as possible. And when there’s no way to push it off, I wouldn’t start the work until the last evening + morning. Such behavior damages my mental health and also the doc quality.