Techreport blog

Engineering Insights & Guides

The best problem-solving writing in software engineering — databases, performance, security, frontend and distributed systems, in one feed.

11,670 articles
Databases — Applying Product Thinking to Slack’s Internal Compute Platform

Applying Product Thinking to Slack’s Internal Compute Platform

According to a recent Thoughtworks radar, “the industry is increasingly gaining experience with platform engineering product teams that create and support internal platforms.” They caveated this with a piece of advice: “When creating a platform, it’s critical to have clearly defined customers and products that will benefit from it rather than building in a vacuum.”…

JTJavier TureganoJavier Turegano·March 9, 2022Databases
Engineering — International Women’s Day 2022

International Women’s Day 2022

Welcome to International Women’s Day 2022! Here at Cloudflare, we are happy to celebrate it with you! Our celebration is not only this blog post, but many events prepared for the month of March: our way of honoring Women’s History Month by showcasing women’s empowerment

SASofia, AngelaSofia, Angela·March 8, 2022Engineering
Networking — Announcing experimental DDR in 1.1.1.1

Announcing experimental DDR in 1.1.1.1

The majority of DNS queries on the Internet today are unencrypted. This post describes a new protocol, called Discovery of Designated Resolvers (DDR), that allows clients to upgrade from unencrypted DNS to encrypted DNS when only the IP address of a resolver is known.

CAChristopher, AnbangChristopher, Anbang·March 8, 2022Networking
Frontend — An open source compositional deadlock detector for Android Java

An open source compositional deadlock detector for Android Java

What the research is: We’ve developed a new static analyzer that catches deadlocks in Java code for Android without ever running the code. What distinguishes our analyzer from past research is its ability to analyze revisions in codebases with hundreds of millions of lines of code. We have deployed our analyzer in Meta’s continuous integration […]

CWChris Wiltz·March 8, 2022Frontend
SRE & Ops — Augmenting Flexible Paxos in LogDevice to improve read availability

Augmenting Flexible Paxos in LogDevice to improve read availability

We’ve improved read availability in LogDevice, Meta’s scalable distributed log storage system, by removing a fundamental trade-off in Flexible Paxos, the algorithm used to gain consensus among our distributed systems. At Meta’s scale, systems need to be reliable, even in the face of organic failures like power loss events, or when systems are undergoing hardware […]

CWChris Wiltz·March 7, 2022SRE & Ops
Performance — Test Budget: Time Constrained CI Feedback - Shopify

Test Budget: Time Constrained CI Feedback - Shopify

At Shopify we run more than 170,000 tests in our core monolith. Naturally, we're constantly exploring ways to make this faster, and the Test Infrastructure team analyzed the feasibility of introducing a test budget: a fixed amount of time for tests to run. The goal is to speed up the continuous integration (CI) test running phase by accepting more risk. To achieve that goal we used prioritization

SEShopify Engineering·March 7, 2022Performance
Performance — Performance Signals For Customizing Website UX — Smashing Magazine

Performance Signals For Customizing Website UX — Smashing Magazine

Using signals to deliver less, or different, content is a form of progressive enhancement (or graceful degradation depending on how you look at it), whereby extraneous content is only loaded when necessary, but the core functionality of the website still works. In this article, we’ll look at some of the signals that can be used for this.

BPBarry PollardBarry Pollard·March 7, 2022Performance
Engineering — The 2030 Self-Driving Car Bet

The 2030 Self-Driving Car Bet

It’s my honor to announce that John Carmack and I have initiated a friendly bet of $10,000* to the 501(c)(3) charity of the winner’s choice: By January 1st, 2030, completely autonomous self-driving cars meeting SAE J3016 level 5 will be commercially available for passenger use in major cities. I am betting against, and John is betting for. By “completely autonomous,” per the SAE level 5 definition

JAJeff AtwoodJeff Atwood·March 4, 2022Engineering
Performance — Adding the V8 CPU Profiler to v8go - Shopify

Adding the V8 CPU Profiler to v8go - Shopify

V8 is Google’s open source high-performance JavaScript and WebAssembly engine written in C++. v8go is a library written in Go and C++ allowing users to execute JavaScript from Go using V8 isolates. Using Cgo bindings allows us to run JavaScript in Go at native performance. The v8go library, developed by Roger Chapman, aims to provide an idiomatic way for Go developers to interface with V8. As it t

SEShopify Engineering·March 4, 2022Performance