One of my new year goals is to discuss my career more openly with my manager. I brought up that I want to become a manager in a year or two, and he gracefully offered me to share how he carries out his core responsibilities.
During our 1:1 Last week, he talked me through how he went about hiring for an open position on the team. There were several learnings from the discussion:
- Find someone who can not only do the job but also strengthen the whole team. This requires thinking about missing skills on the team.
- Relatedly, share and align the expectation with the recruiting teams via syncs and docs.
- Hiring is deemed the most important activity for a Netflix manager. One open IC position takes up 30-40% of the hiring manager’s time.
I really missed talking about leadership topics like this, and I thank my manager for this time 🙏🏼 I hope to learn how he prioritizes our product projects next time.
Software Engineering ⚙️
Conventional Commits and its niceties
Conventional Commits specifies a convention for commit messages so that both humans and machines can understand the messages. The machine-readable messages enable powerful automation. For example, at work, I can commit with a message like “fix(hierarchical-dropdown): fix hover state,” and our continuous deployment pipeline automatically increments the version and publish the hierarchical-dropdown library. Now the similar functionality is available on Github Actions thanks to Google. Link
Naming is hard
Naming variables is hard, especially for non-native English speakers. Code should be readable like prose, but that is hard to achieve when you don’t read and write English much. I wish I came up with a naming guide like this one when working in Korea, which would have helped my team. Link
People ❤️
Swinging between IC (individual contribution) and Management
Aaron Suggs was once a director, then a staff engineer, then a manager, and is now a principal engineer (remember Charity’s pendulum?). I like his criteria for choosing his role on his team (although it is a privilege to be able to choose a role):
- What skills does the team need most acutely: management to coordinate the actions of a group; or an IC to accelerate the execution?
- Will I have sufficient support and feedback to learn and succeed?
- Am I the only one on the team who could do this; or could others do it well?
There are other valuable takeaways like framing his impact into “working the plan” and “serendipity” in this interview. Link
Business 💸
Google vs. Australia
The Australian government attempts to make Google and Facebook pay when they link to Australian news organizations. The same law also obliges the tech giants to use the news from those organizations. While I understand the need to ensure journalism’s survival, I am unsure if taxing Google when it forcedly links to the Australian news is the best-formulated policy. Now Google Search is threatening to leave Australia completely. Link
AWS vs. Elastic
Elastic built the popular open-source search technology Elasticsearch and the open-source visualization technology Kibana. But AWS built a competing service on those technologies which threatened Elastic’s survival. In response, Elastic has changed the two technologies’ licenses to forbid cloud providers from using those technologies to offer competing products.
Now, AWS has responded by forking Elasticsearch and creating open-sourced versions. That’s legal, of course. But such a practice discourages future venture-backed open-source technologies, which won’t be ideal for us engineers. Link