Engineering

Mark for Offline in Box Drive
How we designed Mark for Offline in Box Drive

Without doubt, the most highly anticipated upcoming feature of Box Drive is the ability to mark files for offline access (MFO). In practical terms it brings the syncing ability of Box Sync to Box Drive enabling you to work on files offline and send and…

Open Sourcing ResetOnSnapshotReservoir
Open Sourcing ResetOnSnapshotReservoir

Metrics data is a key pillar of Observability at Box. Engineers rely very heavily on service metrics to measure performance and debug issues. The Observability Team at Box provides instrumentation libraries for services to produce metrics data which…

Snitch: Putting consistency back into S3
Snitch: Putting consistency back into S3

Consistency is a key concept in data storage: it describes when changes committed to a system are visible to all participants. Classic transactional databases employ various levels of consistency, but the golden standard is that after a transaction…

Box Engineering
Introducing wavectl: A Command Line Client For Wavefront

Box has recently announced that we are supporting close to 60 million users. It is really exciting to empower so many people from a myriad of industries and help them work more efficiently.

Dev and prod parity
Dev and prod parity

If you are like me, you've worked in places where your development environment and your production environment have notable differences. I've certainly seen cases where I have had bugs on my local dev machine that don't happen in product.

Solr: Improving performance for Batch Indexing
Solr: Improving performance for Batch Indexing

A few months ago, I worked on improving performance of our 'full' indexer. I feel that the improvement was significant enough to share the story. Full indexer is Box's process to create the search index from scratch, reading all of our documents from an…

Box Blog Image
Future architecture: what you've got here won't get you there

For the past year, I've been a member of a team building a server-side framework that, initially, is focused on supporting browser-based client code here at Box. I plan to blog some about the things we're doing to make the Box platform even more epic…

Box Engineering
How we improved webpack build performance by 95%

At Box, we’re modernizing our front-end architecture with frameworks such as react and redux, as well as webpack for the build process. We’ve tackled many performance issues with the new tools and libraries adopted along the way, and would like to share…

Box Engineering
Introducing Makefile.test: A Generic Makefile to Run Test Executables

At Box, we are always looking to improve our software quality and development speed. Test driven development and effective tests are important factors leading to engineering efficiency and productivity.

How we built Differences in Box Notes
How we built Differences in Box Notes

Box Notes, our built-in note taking app built for teams, aims to leverage its strength in real-time collaboration to 10x the productivity of Box users. One of the challenges with this, though, is that Notes are constantly changing.

Box Graph
Box Graph: how we built a spontaneous social network

By now it's no secret that the amount of content that is being created and shared is increasing exponentially. To help extract value from all of that content, we introduced Box Skills, a framework that brings machine learning innovations to content…

Box Blog Image
Connecting to the Google Vision API via a Proxy

Images are the second most common and fastest growing content type in Box. Last month we introduced image recognition in Box to help unlock the value of these images to your business. We're applying machine learning to images, making it easier for…

Box Blog Image
Handling missing metrics in Wavefront

At Box, we manage several large scale Kubernetes clusters and heavily rely on real-time metrics to monitor them. In addition to metrics coming from the control plane (for example from kube-state-metrics), all applications running in Kubernetes also emit…