It’s ideal to get feedback on your code faster — to make a code change and see the result instantly. But, as projects get larger, reload times get longer. Each incremental dependency or bootstrap code block that adds 200ms feels worth it, but 50 of them ... more
Here at Benchling, interaction with services is a large part of our business, from employees interacting with the software-as-a-service products with which we conduct our daily business, all the way down to interactions between the services that make ... more
Or, How To Deal With Flaky Friends Have you ever had that one friend ? You know the one. You love ’em, but their carefree relationship with plans can really get on your nerves from time to time. Let’s say you decide to organize a nice picnic gathering ... more
When I was a candidate applying to Benchling, I had questions for my interview panel just like they did for me. I was interested in the life sciences, but it was a new industry to me. So I asked the panel about the industry, lab software, and Benchling ... more
Legacy code is a fact of life. Here at Benchling, we’ve been writing scientific tools since 2012, and technologies, best practices, and styles have shifted over time. We’ve been happy to adopt technologies like React, Redux, and TypeScript, but what ... more
We had three interns join us at Benchling this summer. They were each embedded into a different sprint team working directly alongside our full-time engineers. In this post, we’ll dive into who they are, why they interned at Benchling, what they built, ... more
The world of frontend development evolves so quickly that sometimes it feels impossible to keep up. Even worse, what do you do with your existing code when technologies shift? Innovations in languages, libraries, and practices are great, but they’re ... more
We recently added computed fields to Benchling’s bioregistry. With this feature, you can store a biological entity associated with fields you set, and define computed fields that are functions over those fields. We will automatically compute those fields ... more
This is the second half of a 2-part series on performance engineering in React. In Part 1 , we took a look at how to use React’s Perf tools, common React rendering bottlenecks, and a few tips for debugging. Take a look if you haven’t already! In Part ... more
This is the second half of a 2-part series on performance engineering in React. In Part 1, we took a look at how to use React's Perf tools, common React rendering bottlenecks, and a few tips for debugging. Take a look if you haven't already! In Part ... more
This is the first half of a 2-part series on performance engineering in React. Part 2 — A Deep Dive into React Perf Debugging is now up! This post is for those of you with a complex React application. If you’re building something smaller, you might not ... more
This is the first half of a 2-part series on performance engineering in React. Part 2 - A Deep Dive into React Perf Debugging is now up! This post is for those of you with a complex React application. If you're building something smaller, you might not ... more
In our last post, we talked about the algorithm we use to do sub-second CRISPR searches on billions of DNA bases. Our initial search infrastructure was too expensive and unscalable, so one of our summer interns, Harini, focused on rebuilding this infrastructure ... more
In our last post, we talked about the algorithm we use to do sub-second CRISPR searches on billions of DNA bases. Our initial search infrastructure was too expensive and unscalable, so one of our summer interns, Harini, focused on rebuilding this infrastructure ... more