As a Software Engineer (Compilers, Scala) at thatDot, we are seeking someone with interest and experience in compilers 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, and product managers, ideally in an early stage company environment.
Skilled in Scala or another functional language
Expertise to compiler development, IR design, type systems, program analysis
Professional experience designing, building, and optimizing language compilers
Experience working with/in multiple programming languages
Interest and background in distributed systems
Exposure to designing, implementing, and maintaining complex data infrastructures
Hands-on experience designing and developing scalable, high performing and fault-tolerant applications
Able to rapidly learn and apply new technologies
Understanding of concurrency in the JVM
Expertise in measuring, evaluating, and tuning application performance
Willingness to create and update documentation to facilitate learning, with comfort speaking to groups and presenting information
Nice to have: graph databases and graph algorithms
Nice to have: familiarity with Akka or the Actor-model
Nice to have: experience using Kafka
Nice to have: experience using Cassandra (esp. in large clusters)
Day to day, your role at thatDot will be:
Learn. We value curiosity and share a desire to continuously learn new things, including from each other.
Collaborate. As a fast growing team, we must communicate and work together to achieve goals. That includes both within teams and across our small, dynamic team.
Write. Clarity of thought is best reflected in clear documentation. We document our work in ways our community of backend software engineers will want to engage with.
Represent. Advocate for the needs of our users and contribute to the community discussion on product direction and uses.
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.
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.
Creativity In Work:
Work should be fun!
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. Communicating is an expression of your mental model. First think clearly, then help someone else share your thoughts.
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.
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.
Quine, our core technology, is a streaming graph interpreter that makes it easy to find complex patterns and anomalies in massive data streams and trigger action immediately. Built on native streaming graph technology developed with years of DARPA-funded R&D, Quine makes it easy for infinite datasets to be efficiently analyzed in real-time. Quine powers many key use cases in cybersecurity, fraud detection, data pipeline engineering, infrastructure optimization, and a long list of others.