One perk of working at a large tech company is our people’s network at other companies. A director invited me to a meeting between Netflix and Twitter about how the two companies use GraphQL. There were about 20 engineers from both companies—including a Twitter engineer whose blog posts I read many times! I initially expected to sit silently and observe, but I was asked the first question, so I even spoke for a few minutes. It might not have been exciting for those who give talks regularly or have large professional networks, but I got very excited.
After the meeting, I found out that we had similar engagements with Coursera and Atlassian and watched the recordings. It was eye-opening to see that the challenges we’ve seen internally, such as GraphQL schema governance, microservice migrations, and the federated Gateway’s responsibility, are universal. It was a big validation that my work is applicable more broadly. I am now thinking about writing a blog post on schema governance with my working group.
Software Engineering ⚙️
One metric cannot represent engineering productivity
Managers or executives often look for one true metric to track an engineering team’s performance. However, any single metric will be gamed or explained away. So it is important to measure holistically and find balance. For example, not only do we need to look at the completed story points, but also the business KPIs. (Link to the paper, The SPACE of Developer Productivity)
Yalc – Better workflow than npm | yarn link for package authors
I used to find working on libraries annoying as I could not test the changes quickly. I published beta versions like “0.9.0-beta.7” and pulled them into my main app. But it had two problems: the releases made the feedback cycle slow and polluted the package repository with broken versions. Not anymore with Yalc. I can now test my changes locally with “yalc publish” and “yalc add.”
When I showcase my code to other engineers, my explanation often becomes confusing as I jump through different files. Codetour is a Visual Studio Code extension from Microsoft that can record markdowns with specific lines of code so that I can share in a reusable and coherent way.
Things your manager might not know
The ability to have a meaningful conversation with your manager is a superpower, yet I am not good at it. I am fine chitchatting with my manager for 30 min every week. But it’s been hard for me to discuss what matters. Julia Evans shares some great tips in this article.
Dark patterns are banned in California
Dark patterns are “tricks used in websites and apps that make you do things that you didn’t mean to.” We run into them everywhere, most recently Clubhouse. But I’ve been skeptical about regulation efforts since it’s difficult to describe design issues in writing. On the contrary, the updated text looks clear enough to give me hope. (Link to The Verge article)
Reflections & Lessons Learned from Roblox, After More Than a Decade of Partnership
I was surprised to learn that Roblox was founded 18 years ago, considering that its game is a leading example of the metaverse concept. Surely, a great story for both the founder and the investors. But the skeptical part of me wonders how the IPO turned out for the early employees.