Techreport blog

Engineering Insights & Guides

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

11,844 articles
Frontend — On Adding IDs to Headings

On Adding IDs to Headings

Here's a two-second review. If an element has an ID, you can link to it with natural browser behavior. It's great if headings have them, because it's often

CCChris Coyier·June 11, 2020Frontend
Distributed — Sponsored Post: StackHawk, InterviewCamp.io, Educative, Triplebyte, Stream, Fauna - High Scalability -

Sponsored Post: StackHawk, InterviewCamp.io, Educative, Triplebyte, Stream, Fauna - High Scalability -

Who's Hiring? * InterviewCamp.io has hours of system design content. They also do live system design discussions every week. They break down interview prep into fundamental building blocks. Try out their platform. * Triplebyte lets exceptional software engineers skip screening steps at hundreds of top tech companies like Apple, Dropbox, Mixpanel, and Instacart. Make your job search O(1), not O(n).

HSHigh Scalability·June 11, 2020Distributed
Distributed — Spark Joy by Running Fewer Tests - Shopify

Spark Joy by Running Fewer Tests - Shopify

Developers write tests to ensure correctness and allow future changes to be made safely. However, as the number of features grows, so does the number of tests. Tests are a double-edged sword. On one hand, well-written ones catch bugs and maintain a program’s stability, but as the code base grows, a high number of tests impedes scalability because they take a long time to run and increase the likel

SEShopify Engineering·June 11, 2020Distributed
Performance — Scaling End-to-End User Interface Tests

Scaling End-to-End User Interface Tests

At Slack, Quality is a shared responsibility. The Quality Engineering team is focused on creating a culture of testing, increasing test coverage, and helping the company ship high-quality features faster. We encourage all our developers to write and own end-to-end (E2E) tests. In turn, Quality Engineering (QE) is responsible for the frameworks used and provides…

RRoss·June 11, 2020Performance
Frontend — Building A Facial Recognition Web Application With React — Smashing Magazine

Building A Facial Recognition Web Application With React — Smashing Magazine

In this article, Adeneye David Abiodun explains how to build a facial recognition web app with React by using the Face Recognition API, as well as the Face Detection model and Predict API. The app built in this article is similar to the face detection box on a pop-up camera in a mobile phone — it’s able to detect a human face in any image fetched from the Internet. Please note that you will need t

ADAdeneye David AbiodunAdeneye David Abiodun·June 11, 2020Frontend
Networking — High Availability Load Balancers with Maglev

High Availability Load Balancers with Maglev

We own and operate physical infrastructure for our backend services. We need an effective way to route arbitrary TCP and UDP traffic between services and also from outside these data centers.

TSTerin StockTerin Stock·June 10, 2020Networking
Engineering — Mirage JS Deep Dive: Understanding Timing, Response And Passthrough (Part 3) — Smashing Magazine

Mirage JS Deep Dive: Understanding Timing, Response And Passthrough (Part 3) — Smashing Magazine

So far, we have seen how we can create records with Mirage, intercept API requests via route handlers and, last but not least, how the shape of the data returned to us from Mirage is affected. In this third part of Mirage JS Deep Dive series, Kelvin Omereshone will be focusing on using `response`, `timing` and `passthrough` in Mirage for a better handle on simulating an actual backend server. Howe

KOKelvin OmereshoneKelvin Omereshone·June 10, 2020Engineering
Design & UX — Is Your Website Stressing Out Visitors? — Smashing Magazine

Is Your Website Stressing Out Visitors? — Smashing Magazine

Stress isn’t just something that makes people feel uncomfortable. It stimulates the urge to “fight” or “flight”. The very last thing you want is to design a website that stresses visitors out, leading them to dread the experience or abandon it entirely. There are many things that might invoke this response from your visitors, including the design. In the following guide, we’re going to look at som

SSSuzanne ScaccaSuzanne Scacca·June 10, 2020Design & UX
Engineering — UtahFS: Encrypted File Storage

UtahFS: Encrypted File Storage

Several months ago, I realized that I had a lot of sensitive files on my computer (my diary, if you must know) that I was afraid of losing, but I didn’t feel comfortable putting them in something like Google Drive or Dropbox. Introducing UtahFS.

BBrendanBrendan·June 9, 2020Engineering
Engineering — From Static Sites To End User Jamstack Apps With FaunaDB — Smashing Magazine

From Static Sites To End User Jamstack Apps With FaunaDB — Smashing Magazine

To make the move from “site” to app, we’ll need to dive into the world of “app-generated” content. In this article, Bryan Robinson will get you started in this world with the power of serverless data. He’ll start with a simple demo by ingesting and posting data to FaunaDB and then extend that functionality in a full-fledged application using Auth0, FaunaDB’s Token system and User-Defined Functions

BRBryan RobinsonBryan Robinson·June 9, 2020Engineering
Career & Teams — 12 Ways To Improve User Interview Questions — Smashing Magazine

12 Ways To Improve User Interview Questions — Smashing Magazine

Right questions don’t simply roll off the tongue, but it’s a handy skill everyone can train. The following pieces of advice will help you to formulate questions that foster reliable answers from your users and clients. Slava Shestopalov will talk about 12 kinds of questions explained with examples. The first part includes six frequent mistakes and how to fix them. The second part presents six ways

SSSlava ShestopalovSlava Shestopalov·June 9, 2020Career & Teams
Performance — Analyzing Notion app performance

Analyzing Notion app performance

Here’s a fantastic case study where Ivan Akulov looks at the rather popular writing app Notion and how the team might improve the performance in a variety of

RRRobin RendleRobin Rendle·June 8, 2020Performance