Luke Hsiao

The Engineering Tools Behind Numbers Station

Peek behind-the-scenes into Numbers Station's favorite day-to-day engineering software. As we evolve, this set of tools will too.

As a company, we are always refining which software tools are in our toolbox. For fun, we asked our team to nominate some of their favorite day-to-day software. Here’s a big list of software that Numbers Station enjoys using at time of writing. Consider this just a snapshot in time. It is slightly different from a year ago, and certainly will continue to evolve in the future. Everything listed here are tools that our team interacts with regularly, with many being fundamental parts of our daily workflows.

We hope posting this is a fun bit of transparency about how Numbers Station gets work done. Perhaps this will spark an idea for you or your business. But, we’d also love it if you have a suggestion for us!


Arc Browser

A large portion of our team raves about Arc. In general, we love to see competition in the web browser space, and Arc brings a lot of interesting and refreshing features.

ArgoCD

We run our service on Kubernetes, and have been big fans of ArgoCD for continuous delivery. By using ArgoCD, we can send releases to our clusters by simply bumping some version numbers in a repository with k8s manifest files. Then, ArgoCD takes care of the rest!

bottom

When we need to monitor resources, we usually reach for btm. btm is a better top (and htop), and similar to btop. The original motivation for the switch was trying to run htop on a massive server with over 150 cores. htop you need to configure differently to see anything at all (dropping all the CPU bars), and it is slow. btm handles it just fine out of the box. The filtering on the processes widget is very convenient. The ability to see all the other stuff like temps, GPU memory usage, network utilization, disk utilization, are all cherries on top.

delta

delta is a syntax-highlighting pager for git, diff, grep, and blame output. Our engineers find this to be a nice quality-of-life improvement when looking at git diffs and logs in the terminal.

Figma

Figma makes collaboration between our marketing, design, and frontend teams easy and efficient. They have earned their place as a de facto standard!

git-stats

We release frequently. In addition to standard git shortlog, we often like to use git-stats to get a quick sense of the “size” of the particular release. We like how we can see who was involved, and how many lines of codes are added and deleted, as well as some aggregate stats.

GitHub

We have used GitHub for our codebase from the start. We appreciate the familiarity, as well as the convenience of integrations like GitHub Actions, Dependabot, etc. It also makes collaboration and sharing open source repositories easy.

k9s

We use Kubernetes (k8s) to run our services in the cloud. For our infrastructure engineers, k9s is a favorite tool for monitoring and interacting with the clusters. We love that it is lightweight, comprehensive, and fits so easily into our terminal-based workflows.

Linear

We used to use Jira, but switched to Linear and haven’t looked back! In addition to having nice features, an intuitive UI, and good integrations for our workflows, we particularly like Linear’s performance. It is fast and responsive, which makes all the difference.

Mypy

We strongly value type hints in our Python codebase. We currently use mypy as our static type checker, and value it for helping us catch many bugs statically, rather than at runtime. Our only issue is its speed. We’ve been considering pyright or pylyzer as potential replacements.

Poetry

We use Poetry for Python packaging and dependency management. We appreciate how Poetry does exhaustive dependency resolution. We are definitely keeping our eyes on uv, which looks like a promising up-and-coming competitor.

Remix

We use Remix as our frontend framework of choice. It is performant, and allows us to mix client rendering and SSG where it makes sense. We appreciate the ergonomics of nested routes.

ruff

ruff is an extremely fast Python linter and code formatter, written in Rust. Previously, we were using flake8, isort, black. ruff was a drop-in replacement that is both significantly faster, but also has far more built-in rules that are easy to incrementally enable.

semantic-release

We follow semantic versioning. We also use conventional commits. With these two standards in place, it means we can automate our version management entirely! We do so using semantic-release, which runs on commits to our monorepo and generates tags and releases for us automatically.

Terraform

At Numbers Station, we enjoy the benefits of the Infrastructure-as-Code (IaC) practice. Currently, we use Terraform for our IaC needs. It has served us well, though we deliberately keep things pretty simple. It is likely, however, that we switch to the fully open-source OpenTofu in the future.

Tailscale

Thanks to wireguard, Tailscale makes private mesh networking dead simple. It’s our go-to tool when it comes to creating our private developer network. It’s performant, well documented, and in our experience, “just works” and gets out of your way.

Ubicloud

When it comes to scaling up GitHub runners, Ubicloud is convenient and cheap! We’ve found their service to be an effective cost-saving drop-in replacement.

valtio

Valtio API is our go-to choice for proxy state. Valtio’s proxy turns the object you pass it into a self-aware proxy, allowing fine-grained subscription and reactivity when making state updates. In other words, Valtio is dead simple global state management, and uses the Javascript-native Proxy object. It has less boilerplate than other global state managers because the state is mutable, so you can just do assignments rather than needing function calls.

VS Code

The majority of our engineering team uses vscode, and love it. In particular, its ability to let you work on a remote server as though files were local is highly convenient for our workflows. That said, we have engineers that rave about neovim and helix as well. We respect that we have a cohesive team despite strong editor preferences ;).

Zod

Zod is a TypeScript-first schema declaration and validation library. It helps us avoid duplicative type declarations and compose simpler types into well-defined data structures. Similarly, on the backend, we love Pydantic for similar reasons.

Final Thoughts

We are grateful for these software and services. In particular, the open source software ecosystem is what allows us to stand on the shoulders of giants and spend our innovation tokens elsewhere. These tools make a positive impact on the day-to-day life of our team. Thank you to all the people who have shared these great tools with the world!