Back to all listings

Senior Software Engineer Distributed Systems

Remote · Full Time

About this role

Weaviate is a fault-tolerant, distributed database, and it currently supports Horizontal Scaling through sharding data across multiple nodes. As part of this role, you will help the Weaviate Core team improve the distributed capabilities of Weaviate. This includes building mechanisms for replication and high availability, recovery after node failure, re-sharding, and dynamic scaling. In addition to hands-on implementation work, you will be part of a small group that designs and constantly refines Weaviate’s multi-node architecture. You have a good understanding of how data is replicated in a distributed system, including various consensus algorithms, two-phase commits, etc. You are familiar with the architecture of common hyper-scale databases, such as Cassandra/Dynamo, Cloud Spanner, etc.

What we are looking for

  • You have strong experience working on distributed systems and are passionate about high availability, tuning consistency, and scalability of stateful loads.
  • You have experience with Golang. Alternatively, you are familiar with similar, compiled languages (C, C++, Rust, Java) and are willing to adopt Golang
  • You have a passion for cloud-native technology, including Kubernetes and Helm. Additionally, you are familiar with the offerings of the cloud providers (GCP, AWS, Azure)
  • You are a great communicator and team player
  • (optional) You have contributed to or developed a distributed database system before

What we offer

  • 100% remote with flexible work hours.
  • Competitive compensation, including paid time off.
  • You will work at the forefront of search, ML/AI, and cloud-native technologies - and all of it is open source.
  • An atmosphere that encourages learning and personal growth, with very experienced team members to learn from.
  • Opportunities to speak at conferences, publish blog posts, videos, etc. (We are aware that this is not for everyone and is therefore optional).

Our Values

  1. Openness by Default – we believe that the best way to create community and build new technology can only be done by being open and transparent. The open nature of our company is not limited to open-source software but also how we communicate with the outside world.
  2. Listening to our Community – the community of users and customers around the technologies we build have been tremendously gracious in giving us feedback, sharing ideas, and contributing ideas. We go to great lengths to listen and process all forms of feedback to create the best solutions we can.
  3. Quality – we create core infrastructure that companies in any industry, foundations, and governments rely on. This means we need to develop high-quality software and processes to support them. Every change in software and processes must stand reliability and performance quality control. We always think about the production environment and the impact on existing, and new users first. Additionally, we show our standards through developer friendly-UX and open-source software.

About SeMI Technologies

At SeMI Technologies, we believe that the next wave of software infrastructure is AI-first and that a solid open-source community is the basis for creating high-quality software. Our flagship solution is the vector search engine Weaviate, with which we aim to serve any community member, large or small, all over the world. Will you join us in this mission?

Need help?

Not sure exactly what we’re looking for or just want clarification? We’d be happy to chat with you and clear things up for you. Anytime!

Email us

Don't see a job for you?

Do you feel like you belong working with SeMI, but we just don’t have your dream job posted? No problem, just reach out using the email address above.