We use technology that helps us fast and reliable software systems. We’re not tied to a single framework or programming language, and have experience with a wide variety of technologies. Here are some of the tools we’ve built with before.
Haskell is a statically typed functional programming language that enables writing software that is highly reliable and performant while also being conducive to developer productivity and maintainability. We’ve written about why Haskell is our first choice for building production software systems. We’ve found that Haskell allows us to consistently deliver excellent results in far less time than any other language we’ve used.
Elm is a programming language influenced by Haskell and shares many of its features. Like Haskell, Elm enables creating high performance, error free software. Unlike Haskell, Elm is specialized for user interfaces. We use Elm for building highly dynamic front ends, particularly ones requiring complex user interactions and large amounts of data.
PostgreSQL is a powerful open source relational database management system. It is known for its reliability, broad feature set, and excellent performance. PostgreSQL enables creating and operating databases of all sizes that vary in complexity from very simple to having tens of millions of rows in hundres of tables. We use PostgreSQL for any system requiring persistent data storage.
Nix is a robust package manager for the Linux operating system that makes software builds reproducible. Nix also simplifies system configuration management, allowing all underlying system components to be managed by a flexible configuration language. This makes provisioning servers and deploying software reliable and repeatable. We use Nix for provisioning servers and for managing multi-machine deployments with a variety of different system configurations.
Amazon Web Services (AWS) is an industry-leading cloud services provider that offers reliability and scalability on a secure and cost-effective platform. We use AWS for hosting the software systems we build and often utilize managed services like RDS and AWS Lambda to provide great value and peace of mind to our customers.