This job post is more than thirty days old. The position is likely filled by now.

Distributed Systems Engineer

thatDot, Inc.

thatDot, Inc.

Portland, OR
United States of America🇺🇸

thatDot is a growing company that specializes in solving high-throughput data streaming problems (entity resolution, streaming joins, ingest pipelines, incremental computation, pattern matching, etc.) using graphs. Some of the typical challenges we deal with include:

  • Designing and maintaining protocols in distributed systems
  • Implementing new features in our querying engines and actor-based graph interpreter
  • Creating high-throughput backpressured streaming pipelines
  • Ensuring horizontal and vertical scalability

Quine, our core technology, is the world's first streaming graph interpreter. Built on native streaming graph technology as the result of 7+ years of DARPA-funded R&D, this foundational new technology makes it easy for infinite datasets to be efficiently analyzed in real-time, and trigger events immediately. Quine powers many key use cases in cybersecurity, fraud detection, data pipeline engineering, infrastructure optimization, and a long list of others.

As a Distributed Systems Engineer at thatDot, we are seeking someone with interest and experience in distributed systems and data-intensive applications. You will have expertise with functional programming and object-oriented design and development. As a fast-growing team it is important that you can successfully collaborate with developers, architects, UX teams, and product managers, ideally in an early stage company environment.

Location

Support for fully-remote and in-person collaboration as it works best for individuals and the team. Some of our team is based in Portland, Oregon, but we are a remote-first company.

Role and Responsibilities

  • Learn. Become an expert in this cutting-edge technology. The “work” in “knowledge work” is all about gaining the necessary knowledge.
  • Share. When you’ve spent time building a mental model to solve a problem, teach it to your colleagues so we can all get smarter and build better things together.
  • Code. Great code follows from clear thinking. Write code you’re proud of and help grow the community of other contributors.
  • Collaborate. As a fast growing team our engineers must communicate and work together to achieve goals.
  • Write. Document your work in ways our community of backend software engineers will want to engage with.
  • Represent. As a distributed systems engineer you are our user. Advocate for the needs of our users and contribute to the community discussion on product direction and uses.

Job Requirements

  • Strong interest and background in distributed systems
  • Experience in Scala, Java, or other strongly typed JVM languages
  • Experience in streaming systems and back pressuring (ideally Akka streams)
  • Familiarity with functional programming and ability to use it pragmatically
  • Solid understanding of concurrency in the JVM
  • Familiarity with Akka or the Actor-model
  • Nice to have: experience using Cassandra (esp. in large clusters)
  • Nice to have: experience using Kafka

About thatDot

thatDot is working hard to change how software is built and deployed, to turn high-volume data into high-value data. But it’s the people that we work with make it such a rewarding experience. So you can start to get to know us, here is what we believe about...

Work:

  • About more than just a paycheck
  • Should be intellectually engaging
  • Should provide the opportunity to learn and grow
  • Short-termism in tech is bad. It’s worth building lasting relationships.
  • Punching a clock or counting hours is bad. Results > Hours.
  • It’s a big part of our lives, but it’s not all there is.

Code:

  • It’s fun! It’s fascinating. Always hold on to that.
  • Knowledge work: Coding is the easy part. Figuring out the ideas is hard work.
  • Our mental model is really what we’re building when coding. Code is an expression of your mental model.

People:

  • A person ≠ their opinions. We value people even when we disagree with their opinions.
  • Non-traditional backgrounds are highly prized. E.g. Philosophy majors wanted!
  • We complement each other. Everyone is good at something and bad at something.
  • We are upfront about what we don’t know, but we are also not afraid to learn anything that we don’t know.
  • Humility and intellectual security are important for all of us.

Hiring process:

  • No coding on a whiteboard, brain-teasers, or guess-what-I’m-thinking questions.
  • Plan to teach us something about the cool work you’ve done in the past.
  • Let us teach you something about the cool work we’re doing now.

Subscribe to receive the latest Scala jobs in your inbox

Receive a weekly overview of Scala jobs by subscribing to our mailing list

© 2025 ScalaJobs.com, All rights reserved.