Back to all Engineering positions

Software Engineer, CDK for Terraform

United States (Remote), Canada (Remote)

Why work at HashiCorp?

At HashiCorp we have a set of principles that give us a shared understanding so we can act collectively and in a consistent manner. Our core principle is one of integrity. Integrity builds trust, upon which the strongest relationships are built. When we trust others, we are more willing to be open and engage. We must foster relationships internally to create a friendly, productive, and positive environment and externally with our users, partners, and customers to drive the adoption of our tools and products.

We also value top-notch collaboration and communication skills, both among internal teams and in how we interact with our users. We take care to balance and be responsive to the needs of our open source community as well as our enterprise level customers.

Engineering at HashiCorp is 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.

What would you be working on?

Terraform-CDK is an open source project for defining infrastructure as code using familiar programming languages - currently TypeScript, Python, and Java. You will be part of a new engineering team dedicated to growing Terraform-CDK to a stable, production-ready tool.

Terraform-CDK itself is written in TypeScript, and uses the jsii library to generate libraries in a constantly-expanding set of languages. Terraform Core itself is in go, and you may have opportunities to contribute to Terraform Core. Terraform-CDK generates Terraform configurations, so you will develop a deep understanding of Terraform Core, Terraform Providers. Most of your day-to-day coding will be in TypeScript, but you will regularly troubleshoot Python, Java, and golang.

This project is technically challenging. We’re doing quite a bit of code generation across languages, translation between type systems across languages, and need to present a native-feeling user experience to practitioners in whatever language they come in with.  

As a new open source project, you will also engage significantly with the community in GitHub, on discuss, doing community office hours together with our Developer Advocates. We’ll need to build close relationships with early adopters and learn from the successes and challenges people encounter. You will also be working closely with engineers from the upstream CDK project.

In this role you can expect to:

  • Build and ship features and bug fixes for Terraform-CDK
  • Advocate for the future direction of infrastructure-as-code using familiar programming languages
  • Help open source and commercial users solve problems they experience while using Terraform-CDK

You should apply to join the team if you:

  • You have experience using infrastructure-as-code tools as an application developer and wished you could natively use IaC tools from the primary language you were writing
  • You are comfortable and fluent across many languages. Terraform-CDK currently supports TypeScript, Java, and Python, and we expect to add golang and C# support. 
  • You are familiar with code generation, translation between type systems, compilers and transpilers, and basic distributed systems concepts
  • You are familiar with Terraform, CDK, and/or other infrastructure-as-code tools
  • You are familiar with infrastructure management concepts and have general familiarity with commonly deployed services and widely used cloud services. Ideally you have been responsible for managing production infrastructure managed via infrastructure-as-code tools
  • Have prior experience with CI/CD tools and automation workflows, both for application development and infrastructure management
  • You have experience developing early-stage infrastructure tools and display an entrepreneurial startup mindset as well as the needs of enterprise users.

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!

Please note that this role is also open in Germany, the UK, and the Netherlands. Please apply here if you are applying from one of those countries.

All work requires excellent written communication skills, remote work doubly so. For this reason, we require a cover letter for your application to be considered complete. 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 experiences 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. 


Benefits at HashiCorp

Note: some benefits may differ from one country to another.