We need extraordinary engineers to join our team. You will act as both architect and programmer: both designing and coding the testing infrastructure for our database product. 

Timescale already has an extensive regression test suite for our product that runs as a single-node primary but need to develop better infrastructure to test our scale-out multi-node capabilities. This is a technically challenging and exciting problem because the infrastructure for such tests needs to be able to produce reproducible test output while at the same time test all the vagaries of distributed environment (connection drops, latency spikes, intermittent failures, permanent failures, etc.). 

This is not a QA / testing role: our core database engineers will be writing the test cases, rather you would be responsible for creating the infrastructure to run these tests. Besides testing the database for correctness, this system would also need to be able to test performance and protect against performance regressions. You would be working closely with our core database developers to design a system that can effectively push our database to its limits in a distributed environment.

The second main responsibility of this role is release engineering. Our product is distributed on a variety of platforms and environments: Linux, Mac, Windows, Raspberry Pis, high-powered servers, on-bare-metal, in docker, etc. You would need to automate packaging and distribution across all of these heterogeneous environments using a build-farm or similar infrastructure.

Timescale is a remote-first organization; this is a full-time position and can be fully remote.

Responsibilities

  • Play a core role in helping to design and develop testing infrastructure for a distributed database.
  • Develop, test, and release new testing infrastructure and release features and capabilities. 
  • Continually improve, optimize, and test the infrastructure that you build.
  • Be an enthusiastic and personable teammate, receiving and providing code reviews, and otherwise partnering and helping other engineers.

Requirements

  • Bachelor’s degree in computer science or equivalent experience.
  • 5+ years engineering experience.
  • Expertise building testing, release or CI/CD systems.
  • Experience in SQL (especially PostgreSQL) highly desirable (but not required).
  • Experience with Golang and/or C are preferred.
  • Solid knowledge of concurrency control, data replication, and/or distributed systems.
  • Passionate about building high-quality infrastructure and development tools.

About Timescale

At Timescale, we are dedicated to serving developers worldwide, enabling them to build exceptional data-driven products that measure everything that matters: software applications, industrial equipment, financial markets, blockchain activity, consumer behavior, machine learning models, climate change, and more. Analyzing this data across the time dimension (“time-series data”) enables developers to understand what is happening right now, how that is changing, and why that is changing. Timescale develops TimescaleDB, the category-defining open-source relational database for time-series data, and offers fully-managed TimescaleDB and related database services. Timescale is a remote-first company with a global workforce and is backed by Benchmark Capital, New Enterprise Associates, Redpoint Ventures, Icon Ventures, Two Sigma Ventures, and other leading investors.

Apply for this Job

* Required