Young Reacts #145

To prepare for my next role, I’ve been re-reading High Output Management by Andy Grove, a former Intel CEO. Although the book was first published about forty years ago, this book is surprisingly still applicable to the modern workplace. It provides both fundamental ideas and tactical tips for leaders: from measuring leaders’ impacts to running effective meetings. Having read other more recent management books (such as Measure What Matters and Death By Meeting), I see that Andy Grove thought about these current, mainstream ideas decades ago. Even though he doesn’t go as deep on these topics as other more topical books, the book is an excellent introduction to how leaders (both technical and people) should work.

It is a short read, so I recommend reading the book if you haven’t done so.


Software Engineering ⚙️

The Analytics Engineer

It’s been almost seven years since I worked in the data analytics space. Back then, the “data engineer” role was the hot new thing. Now, that role is superseded by various data tools, and a new “analytics engineer” role is getting more popular.

Migrating Notion’s marketing site to Next.js

Not all engineering projects have clearly defined goals like this migration (but all successful projects have them). It’s also great to see that the team went back and checked if the migration met the goals.

Why are hyperlinks blue?

This article is a thorough investigation of the origin of blue hyperlinks. My next question is, why are clicked hyperlinks purple?

People ❤️

How Many People Can Someone Lead?

An engineer needs a certain amount of support: technical guidance, product management, and people management. If one engineering manager needs to provide all three, his team needs to be smaller. It reminded me of my startup days with twelve reports, when I did “shallow” people management.

From SWOT to TOWS: Answering a Reader’s Strategy Question

SWOT (strengths-weaknesses-opportunities-threats) naturally makes the team look internally first (strengths and weaknesses) in analyzing its strategy. But without context, anything can be strengths and weaknesses. For example, Netflix’s freedom and responsibility culture can be an asset in the entertainment industry but not healthcare. To set the context, TOWS puts threats and opportunities first.

levels.fyi Internship Compensation Data

If you are curious how much companies paid summer interns, click through.

Cool stuff 😎

From Motor Control to Team Play in Simulated Humanoid Football

A fantastic video on how DeepMind taught virtual agents to play 2v2 football. I found it interesting that separately teaching the agents the low-level (running), mid-level (dribbling), and high-level (team coordination) skills worked for them as it does for humans.

Young Reacts #144

My two weeks of unemployment begin this week. Looking forward to some quality rest and recharge.

Photo by Tyler Nowak on Unsplash

Software Engineering ⚙️

Diagnose engineering process failures with data visualization

The author came up with a set of cool visualizations that describe engineering processes. But what I found interesting is not the visualizations themselves but the questions that the visualizations try to answer.

Answer 👉 2.6% of free #iOS apps and 4.4% of free #Android apps are built with #ReactNative

A couple of caveats with the statistics: first, the statistics include games usually built with game engines. Second, the more popular apps use React Native more (12%).

People ❤️

The 25 Micro-Habits of High-Impact Managers

I found “I trust you, make the call” the most important of all the listed micro-habits. Another great one I heard is using “and” not “but” when you are giving positive and constructive feedback. “But” invalidates all feedback that came before.

Business 💸

Apple must allow other forms of in-app purchases, rules judge in Epic v. Apple

Different folks have different views on if Apple won in this round: some say Apple lost now that they have to give up a sizeable chunk of their payment processing fee. Others say Apple won because it still kept control over the App Store. However, Epic hasn’t yet achieved its original goal, to restore Fortnite with its payment system despite its transgression.

HashiCorp runs low on staff, calls a halt to Terraform pull requests

Possibly the fallout of the Great Resignation?

Young Reacts #143

This is my last week at Netflix. I am satisfied with my experiences and contributions at Netflix. But I do have a couple of learnings that I wish I had known before joining Netflix.

  • First, because my manager at Netflix has complete freedom in setting my compensation, it is critical to work with the manager that fits my style.
  • Second, at a large company like Netflix, not all teams are created equal. Some are given more spotlights (and pressure, too). Find the team that suits my priority.
  • Third, I should broadcast my aspirations so that people will think of you when they see an opportunity. I need to talk to my direct management chain AND the leadership of the adjacent teams.

The first is probably specific to Netflix, but the other two apply to any large organization. I hope these experiences will make me a better leader.


Software Engineering ⚙️

Elasticsearch from the Bottom Up, Part 1 and Elasticsearch from the Top Down

Elasticsearch probably is the most popular search technology. I’ve heard of Elasticsearch many times and used APIs built on top of Elasticsearch throughout my career. But I haven’t learned how it works. Since my new team owns an Elasticsearch service, I finally decided to read about it. These two articles were good introductions.

I completely ignored the front end development scene for 6 months. It was fine

I agree that we don’t need to follow up on every new framework and library in the web development, but with a caveat.

It’s unnecessary to learn everything, but it is important to keep up with the major trends. They can affect our employability, especially after the early stage of our career. A shift toward component-based development was one (jQuery to React), and a shift toward a strongly-typed language is another. The good thing is that these shifts happen over a few years, so we don’t need to study everything all the time.

People ❤️

Guide: Understand team effectiveness

Measuring team effectiveness and creating an environment for it are both priorities for a manager. This study from Google answers both.

Gateway Teams

How one gets introduced to the new environment largely determines their future performance. Organizations should pay extra attention to whom the newcomers meet in their first few months. The newcomers should also seek out the high-performers and learn from them.

The Seniority Roller[c]oaster

When one moves between companies, especially after an entry-level role, their title or compensation is not always transferred. That’s because the same titles in different teams will have different expectations. “Lead Engineer” could be a purely technical role or management role. The above-senior roles require deeper domain knowledge and relationships, which makes the hiring managers more conservative. The article has some good tips for dealing with disappointing down-leveling.

Rejected internal applicants twice as likely to quit

As a rejected internal applicant, this was an interesting study to read and reflect on.

Business 💸

S. Korea passes bill to curb sway of Google, Apple in app store fees

The South Korean government will force Google and Apple to allow alternative payment systems when the users purchase digital goods within the apps. This issue can get more complicated as this bill benefits Korean app developers at the expense of Apple and Google.

Young Reacts #142

I started having my farewell conversations with my colleagues. During those conversations, I’ve shared what I especially enjoyed working with them and asked for feedback. In general, I appreciated their vote of confidence that I will do well in my new role at Square.

In one conversation, I received the most positive feedback so far in my engineering career: I epitomized what it means to be a senior engineer as I went outside my teams and tackled the challenges faced by the larger organizations. I am very grateful for that kind word, but I also recognize that the environments had to be right to stretch myself like that. I needed access to the right opportunity and freedom to pursue my vision. When I join Square, I plan to create the same environment for my team and others to go beyond their immediate responsibilities and stretch themselves.

Software Engineering ⚙️

Focusing on What Matters: Using SLOs to Pursue User Happiness

I tend to blindly trust existing processes and policies at their face value, especially when new to the domain. So I appreciated this list of assumptions to double-check when a service failed its service-level objectives:

  • Was the error budget consumed by real failures?
  • Did we notice a number of false positives?
  • Maybe we need to reevaluate the metrics we’re collecting,
  • or perhaps we’re okay with setting a lower target goal because there are other targets that will be more important to our customers.

How Replicache Works

Our users increasingly expect our tools to allow real-time collaboration thanks to tools like Google Docs and Figma. How to implement real-time collaboration correctly is not straightforward. This library explains one possible implementation strategy.

People ❤️

Why don’t hiring managers give 3 of THEIR references to job candidates?

A reference check is one of those rarely done but important signals. Candidates are already at a significant disadvantage in terms of the information they can get about their hiring managers. The hiring managers should level the playground by sharing their references.

Business 💸

Apple makes App Store concessions to settle developer suit

A class-action lawsuit against Apple forced Apple to concede on multiple fronts: allowing direct communication between developers and customers, lower commissions for smaller developers, and so on. Whether the court will accept this proposal and how this settlement could affect the Apple-Epic lawsuit are to be seen.

Netflix and Video Games

An interesting analysis of what video games mean for Netflix. The point that the younger generations are playing more video games, which poses a significant threat to Netflix, was spot on.

Young Reacts #141

I am returning to my final weeks at Netflix after two weeks of vacation. As much as I wanted to do the job well when I was here, I want to leave well, too. I started jotting down a list of things to do:

  • Handoff ongoing project responsibilities and past knowledge
  • Reach out to people I worked closely with
  • Back up some of my presentations and documents
  • Draft a farewell email early and iterate
  • Figure out what to do with the company devices
  • (and probably more as I think this through…)

Software Engineering ⚙️

Shipping fast and safe: Building a culture of low-risk learning

An Intercom engineer shares techniques to move fast while de-risking changes. Two were new to me: Ship instrumentation first and Ship the “read” path first.

Announcing TypeScript 4.4 RC

I won’t be using Typescript for quite some time now, but I am still excited about the changes in this release. Especially, the improved control flow analysis and the new exact optional property types will be huge.

Choice Words about the Upcoming Deprecation of JavaScript Dialogs

Chrome tried to deprecate JavaScript Dialogs (the dialogs from alert() and confirm() methods). It broke quite a few websites and surprised many. The community pushed back, and the deprecation is now postponed but still planned to go ahead. Has Chrome become too big for the internet?

Business 💸

Google considers switching FLoC to a topic-based approach, as exec acknowledges cookie replacement has fingerprinting potential

Federated Learning of Cohorts, or FLoC, is Google’s proposed alternative to the soon-to-be third-party cookies. However, several researchers and companies have confirmed that the assigned cohorts are too granular to protect users’ privacy. So Google is now contemplating a switch to a more coarse topic-based approach.

The Epic v. Google lawsuit finally makes sense

The Verge goes into various tactics Google employed to dissuade Epic from building its own app store. When Google Play comes preinstalled on all Android devices, only a few will bother to side-load another app store. That Android technically allows side-loading doesn’t make the platform open.

Young Reacts #140

Interviewing for a job is stressful but negotiating for the offer is even more so for me. That’s because I am not used to discussing money openly. During the negotiation, I kept telling myself that neither the employer nor I want me to accept an offer I don’t feel was fair. That feeling of leaving something on the table could turn into resentment quickly.

So I asked for more in a short email (it took me about 30 minutes to write) and got a sizable increase in my equity package. The discomfort from negotiating fades quickly, but the consequence lives long.

Photo by Scott Graham on Unsplash

Software Engineering ⚙️

The Alternative to Roadmaps

When there are interdependencies, roadmaps align teams towards common goals and timelines. At the same time, I’ve seen many cases where my teams’ work based on the roadmap didn’t actually deliver the results. How do we provide the space for iterations while we hold ourselves accountable to other stakeholders?

How We Design Our APIs at Slack

Building a public API is a whole different ballgame than building a private API. One needs to be far more careful about breaking changes and provide more consistency and visibility. As the choices will stay for a long time, more planning and testing are required.

What’s new in GraphQL-Codegen v2?

GraphQL-Codegen v2 is almost here. The Guild has created and shepherds many JS GraphQL tools, but GraphQL-Codegen probably is the most important. The most notable feature is the gql-tag-operations plugin, which works like Babel macros.

People ❤️

Job burnout: How to spot it and take action

I had a conversation with a colleague recently about feeling stuck and having trouble concentrating. After reading this list of burnout symptoms from Mayo Clinic, I believe I am experiencing burnout. Have a look and take some action if necessary.

Why Don’t Tech Companies Pay Their Engineers to Stay?

I agree with the author that companies should match the impact of their employees regardless of their current salary. But I disagree that a longer tenure equals a larger impact. The tenured could lose enthusiasm and go on autopilot, and the fresh eyes could come up with creative solutions.

How To Measure Data Engineering Teams

Quantifying an engineering team’s performance will always be difficult. Still, this article gave me an idea: one set of metrics to track the quality of service (uptime, error rates, etc.) and another set of metrics to track the effectiveness of new feature work. These metrics then can be fed into this resourcing framework.

Business 💸

A look at Americans’ return to workplaces

Envoy, the company that does B2B building access management, published the statistics on how people return to the office.

Young Reacts #139

I am finally done with this round of recruiting. I have no more phone screens or interviews scheduled. I started looking externally three months ago, talked to about 25 companies, phone screened with about 15, had about 5 onsite interviews. I had an offer from one company and am waiting to hear back from two companies.

The process was quite stressful, especially when I failed an internal interview for a manager role at Netflix. But the numbers don’t look that bad, considering that I am not currently a manager. Hopefully, I will be able to get an offer I am excited about at the end.


Software Engineering ⚙️

Mind the platform execution gap

This article is a good primer for what it means to be a platform: trust is the most important asset when a team builds a platform for other teams to rely on. Building software is complex enough that those teams do not need another variable in their work.

The article focuses on developer productivity platforms, but much of it applies to product platforms as well.

Unit Tests give you Observability!

A code coverage metric is not important. It’s a poor proxy for how well we understand our application. Instead of mechanically covering all lines of code, we should focus on the risky parts of code.

People ❤️

Tech Lead Management roles are a trap.

I did “full-stack” management when I was a manager because the startups I worked for didn’t have pre-existing structures: no career ladder, no recruiting team, and no defined hiring process. So I focused on creating those processes and less on managing individual performances. I also had to spend some time coding, which took more time away from performance management.

So when I look back, I haven’t communicated expectations and provided feedback enough. I don’t believe a tech lead role is a bad way to start managing (contrary to the article), but one should be aware of the risk and intentional about learning how to manage properly.

The Human Side of Elixir

I am against choosing a cutting-edge technology (Elixir, for example) over a boring one (Java) just for the sake of it. But doing so selectively could help to attract engineers to your team. You can’t compete on compensation, so you find another reason to choose your team, such as cool tech. My previous team was able to hire a top-notch engineer because we worked with serverless functions before it became mainstream.

Hidden Bias

A set of visualizations showing how biased inputs into the model training lead to biased results, even if the protected information such as gender is kept away.

Business 💸

Metaverses

A good call out that we won’t have “the Metaverse” but will have many competing metaverses.

Young Reacts #139

To let employees recharge, Netflix’s leadership chose to take August slow. For the first half, we are strongly encouraged to take time off. For the latter half, non-essential meetings (any meetings not directly related to work) are canceled. I felt many bottled-up pressures for the past few weeks, so I really welcome this slowdown. To recharge, my wife and I have planned on making multiple trips this month.

Photo by Madelynn woods on Unsplash

Software Engineering ⚙️

A framework for balancing and budgeting engineering resourcing

It is challenging to make a trade-off decision between engineering investment and product work. If a product team is left on its own, it would naturally focus on new features. So rule-of-thumb guidance on resource allocation coming from the top would help balance that.

The Large, Small, and Dynamic Viewports

When I developed a mobile website, iPhone’s dynamic viewport was a hot topic. We weren’t sure how our styling would react to the changes in the viewport size (I think the behaviors are still not standardized). I am glad to see some standardization effort.

People ❤️

Guiding critical projects without micromanaging

Flexibility is crucial for leaders. The situation is different, the team is different, and better yet, people change. While it is important to have heuristics and go-to moves, leaders need to stay nimble and do what’s best for the team.

How To (Not) Plan A Career

A bottom-up approach makes sense if one doesn’t yet know what to do. When they follow the approach, they should actively seek new experiences and learn from their choices. Otherwise, it will be like having no career at all.

The SaaS Org Chart

The example org charts are not particularly useful for me as I am not running an org. But it could be in the future when I join a startup.

Business 💸

Mark in the metaverse

Facebook is leaning into the metaverse, building on top of its Oculus and social network.

Young Reacts #137

My wife and I started fostering a dog last week. We had to adjust to living with this little boy. But it felt good to look after something that needs my help. I started feeling quite a bit more positive over the last couple of days. I wouldn’t say fostering is for everyone, but I’d suggest looking for some purpose bigger than oneself.


Software Engineering ⚙️

Introducing Envelop – The GraphQL Plugin System

This is a cool idea from The Guild. I am excited that this plugin approach allows developers to adopt new features without waiting for the framework owners to support them as Babel does.

The Latest Ref Pattern in React

We don’t want to use useState because we don’t need to trigger a component re-render when we update to the latest value.

When I read this, I immediately thought of the infinite loop I created because I used useState instead of useRef 🤦🏻‍♂️

at method for relative indexing

The “at” method is an alternative for the “indexOf” method on an array. This new method understands negative indexes such as “-1,” making it simpler to get elements near the end. This feature is available on the latest Chrome (92) and Firefox (90).

People ❤️

The Activision Blizzard Lawsuit Fallout Is What Women Have Been Saying All Along

This recurring sexism in the game industry showcases how difficult it is to fix cultural issues. Press releases and public apologies won’t fix them. That makes me reconsider the companies I am talking to with checkered pasts.

The Case for Location-Independent Salaries

I’ve seen many employees argue for location-independent salaries. But this is the first time I’ve seen such a founder. I appreciate that the founder aligned the company’s compensation policy with its mission. If you wonder how much the company pays, check out its job posts.

Beat the bystander effect with minimal social pressure

When my team needs to find the owner for the next steps, I usually take them myself as I don’t like unowned tasks and feel awkward asking others to do the work. “Being clear that “no” is a fine response” is the neat trick I’ve been missing.

Business 💸

Visual guide to the best books on product management

A list of interesting books on product management. I’ve read a few on this list. Because I don’t have a great memory, I usually summarize my takeaways in one sentence per book:

  • Crossing the chasm: your customer profiles change as you go from early adopters to the mass market.
  • The Lean Startup: Build-Measure-Learn-Repeat
  • Escaping the build trap: a collection of useful tactical PM tips
  • Measure What Matters: A good reference for when you implement OKR

Young Reacts #136

I’ve talked to a director last week about my career goals and one piece of advice rang deep. He said, “Don’t trust the people who say that titles don’t matter. They say that because they’ve had the titles. You should do what you want.”

And another piece of advice he had: “You should write more.”


Software Engineering ⚙️

npm audit: Broken by Design

When I used “npm audit” for the first time, I was glad to have it. I was going through the same daily motion of “npm install” but now was able to enjoy the security benefit of experts. I still think that, with sufficient education and experience, it’s not that hard to read through the alerts and fix the ones I need to care about. But I see Dan Abramov’s point that it’s daunting yet not right enough for the newcomers.

Islands Architecture

Server-side rendering is usually followed by hydrating to a single-page application. What if, instead of having only one hydration point after loading, we hydrate by interactive elements? That could improve the performance. The creators of Snowpack came up with a new static site builder, Astro, that follows this architecture.

People ❤️

My questions for prospective employers (Director/VP roles)

I fully recognize that if you really need that role, it would be difficult to ask some hard questions. But also remember that asking good questions shows the interviewers that you are serious about the role.

Despite the title of the article, there are some good questions for lower-level roles, especially the first two sections.

A Manager’s Guide to Holding Your Team Accountable

Holding someone accountable and being held accountable are both inherently uncomfortable. So our discomfort is not a reason to avoid accountability. Start with simple, and non-judgemental questions. When we ask judgemental questions, that’s a sign that we waited too long before the questions and started creating our internal narratives.

Business 💸

Introducing Culdesac

When I hear the word “startups,” I first think of tech startups, and maybe some IoT or Biotech companies. But I never expected a city-building startup. Having to drive a car through traffic is the worst but most people have to bear with it because our cities are built to be only livable with cars. This company is challenging that status quo.