Software Engineer - Consul (Systems)
We help organizations with service discovery, configuration management, and health monitoring. To do so, we develop and maintain the Consul & Serf tools, along with supporting libraries like Raft, Memberlist, Memdb, and Yamux. The customers and large community of users of our tools are operators, infrastructure engineers, and software developers that encounter novel performance, scaling, and usability challenges that we help them solve.
Some of the future challenges for our team include:
- Performance optimizations for our heavily used Raft library
- Support for advanced Raft topologies
- Indexing improvements to our memdb library used by the Consul state store
- Improvements to Serf for increased stability and scalability for the Gossip layer utilized by Consul
- Network multiplexing support for Yamux
- Distributed encrypted Gossip with Serf
Much of our work and libraries are open source and receive contributions from a large community of users. Consul, Serf, and their supporting libraries are written in Golang.
Engineering at HashiCorp is largely a remote team. While prior experience working remotely isn't required, we are looking for team members who perform well given a high level of independence and autonomy.
In your cover letter, please describe why you're interested in working at HashiCorp, and what draws you to this role in particular! Specifics of your past experience that are relevant to this role are great to include, too.
In this role, you can expect to:
- Work on next-generation distributed systems for infrastructure management
- Develop novel algorithms within the context of our open source tools
- Build and architect systems for managing extremely large-scale global fleets of resources
- Interface directly with internal teams, users and HashiCorp customers, as well as the large Consul community
- Own the full lifecycle of feature development from design through testing and release
- Program mostly in Golang, learning from and contributing to a team committed to continually improving their skills
You may be a good fit for our team if:
- You’re familiar with service-oriented architectures, and ideally have seen them in operation at a global scale
- You’re comfortable with low-level programming
- You have prior experience working in high performance or distributed systems; while we strive to hire at a variety of experience levels, this particular opening is not well-suited for recent graduates
- You’re able to knowledgeably discuss performance, security, and user interactions in complex systems
At HashiCorp, we are committed to hiring and cultivating a diverse team. If you are on the fence about whether you meet our requirements, please apply anyway!
Apply for this Job
Did we miss something?
Do you believe you'd be a great fit for this role, but the description above doesn't quite match your skills or experience? We'd still like to hear from you.
Subscribe to our monthly newsletter to get the latest news and product updates.