Sr. Software Engineer - Backend - Consul Ecosystem, Automation Tooling
At HashiCorp, we’re building a generation-defining infrastructure software company, powered by our core principles and a growing team of talented, committed professionals working together to help organizations seamlessly transition to and operate in the cloud. Founded in 2012 and headquartered in San Francisco, 85 percent of our employees work remotely, strategically distributed around the globe. From our inception we built the company with a remote-first approach because we believe talent has no boundaries.
About the team
The Consul team, like all of HashiCorp, is fully distributed (100% remote). We have been a remote company since our founding in 2012.
Consul helps organizations automate network configurations, discover services, and enable secure connectivity across any cloud or runtime. The Consul Automation Tooling team creates critical tools that live outside of the Consul repository for our Consul practitioners and customers. These tools include Consul Template, Consul Terraform Sync, Envconsul and more.
About the role
On the Consul team, we help organizations automate network configurations, discover services, and enable secure connectivity across any cloud or runtime. 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.
Consul started as an infrastructure management tool for service discovery and health checking, and has evolved to become a full-featured service mesh. You’ll be an active contributor to the tooling that supports Consul. At a high level, a subset of what these tools do are: enable our practitioners and customers to dynamically update their network infrastructure devices, monitor services and render templates based off of updates to those services, monitor external nodes and launch subprocesses with environment variables.
You’ll be following new developments in emerging technology and competitive offerings, looking for opportunities for product differentiation, and rethinking product architecture to meet new global scale and organizational demands.
In this role you can expect to:
- Build and architect distributed systems for the Consul automation tools.
- Interface directly with internal teams, users and HashiCorp customers, as well as the larger Consul community.
- Participate in discussions with product managers and customers to better understand the network topologies, challenges, and constraints for which operators are trying to solve, and leverage those insights when approaching feature design and implementation.
- Propose new functionality or substantive changes through written documents in an async process, describing the problem background, proposed implementation and example UX, then iterating on peer feedback collaboratively.
- 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 have:
- Familiarity with service-oriented architectures, and ideally have worked on an infrastructure or platform team building internal tooling to deploy, connect and monitor them.
- Empathy for the people operating, learning, teaching and supporting software you write, and consider their experience when making design decisions and performance, security or complexity tradeoffs.
- Experience in a lower-level language like Go.
- Awareness of the broader service mesh ecosystem and an interest in contributing to a full-featured product offering while reducing complexity and barriers to adoption for practitioners.
- Curiosity for academic computer science research, particularly distributed systems papers such as Raft and Paxos variants, and enjoy learning more about the challenges of consistency at global scale.
About the Application Process
Please note, as collaboration and communication are a critical aspect of how we work, a cover letter is a great way to provide a sample of how you communicate.
If you choose to write a 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.
HashiCorp embraces diversity and equal opportunity. We are committed to building a team that represents a variety of backgrounds, perspectives, and skills. We believe the more inclusive we are, the better our company will be.