Software Engineer, Consul

HashiCorp

HashiCorp

Software Engineering

Bengaluru, Karnataka, India · Tokyo, Japan

Posted on May 29, 2026
Introduction

At IBM Software, we transform client challenges into solutions. Building the world’s leading AI-powered, cloud-native products that shape the future of business and society. Our legacy of innovation creates endless opportunities for IBMers to learn, grow, and make an impact on a global scale. Working in Software means joining a team fueled by curiosity and collaboration. You’ll work with diverse technologies, partners, and industries to design, develop, and deliver solutions that power digital transformation. With a culture that values innovation, growth, and continuous learning, IBM Software places you at the heart of IBM’s product and technology landscape. Here, you’ll have the tools and opportunities to advance your career while creating software that changes the world.

Your role and responsibilities

About the Role: We are seeking a highly skilled and experienced Software Engineer to join our Consul team. You will be designing, building, and maintaining the core of HashiCorp Consul, the open-source and enterprise tool that powers the service mesh and service discovery for thousands of companies worldwide.

This is a high-leverage individual contributor (IC) role where you will have a significant impact on the future development of Consul. You will be joining hands in solving some of the most challenging problems in distributed systems, networking, and cloud-native infrastructure.

Responsibilities:

  • Feature Development: Own end-to-end delivery of features and bug fixes with minimal guidance, based on Jira or GitHub issues. Write high-quality, well-tested code, including unit and integration tests.

  • Code Quality & Reviews: Actively participate in code reviews, offering thoughtful, constructive feedback with a focus on readability, maintainability, and correctness.

  • Documentation: Maintain clear and up-to-date documentation for both technical implementations and user-facing features.

  • Support Engagement: Investigate and resolve issues in customers’ production environments with support from senior team members or collaborate with the support team to resolve them in the customer’s environment

  • Continuous Learning: Proactively seek feedback and apply it to improve. Demonstrate growing independence while collaborating closely with senior engineers.

Required education
Bachelor's Degree
Preferred education
Master's Degree
Required technical and professional expertise
  • 3+ years of professional software engineering experience, ideally working on production-grade distributed systems.

  • Strong proficiency in Go (Golang), including a solid understanding of pointers, interfaces, and concurrency (goroutines, channels).

  • Hands-on experience building features and debugging issues using logs, metrics, and basic tracing.

  • Foundational knowledge of networking (TCP/IP, HTTP, gRPC), operating systems, and cloud platforms (AWS, GCP, Azure, or OpenShift).

  • Familiarity with container orchestration concepts (e.g., Kubernetes or Nomad—Pods/Jobs, Services, Deployments).

  • Strong problem-solving skills with the ability to work through ambiguous technical challenges with increasing autonomy.

  • Understanding of automation and testing strategies, including load, performance, and scalability testing. Experience with CI/CD pipelines (e.g., GitHub Actions)

  • Bachelor’s or Master’s degree in Computer Science (or related field), or equivalent practical experience

Preferred technical and professional experience
  • Familiarity with service mesh technologies (Consul, Istio, Linkerd) or proxies (Envoy, HAProxy). Or have used products like Vault/Nomad in their projects

  • Familiarity with various data stores (e.g., SQL, NoSQL, KV stores).

  • Exposure to distributed consensus algorithms (e.g., Raft, Paxos).

  • Experience with infrastructure as code tools (e.g., Terraform).

  • Contributions to open‑source projects.

Years of Experience:
3 - 6