Introduction
A career in IBM Software means you'll be part of a team that transforms our customer's challenges into industry-leading solutions. We are an infinitely curious team, always seeking new possibilities, and dedicated to creating the world's leading AI-powered, cloud-native software solutions. Our renowned legacy creates endless global opportunities for our network of IBMers. We are a team of deep product experts, ensuring exceptional client experiences, with a focus on delivery, excellence, and obsession over customer outcomes. This position involves contributing to HashiCorp's offerings, now part of IBM, which empower organizations to automate and secure multi-cloud and hybrid environments. You will join a team managing the lifecycle of infrastructure and security, enhancing IBM's cloud solutions to ensure enterprises achieve efficiency, security, and scalability in their cloud journey.
Your Role And Responsibilities
About the Role:We are seeking an exceptionally talented and experienced Senior Software Engineer to join our Runtime/Consul team. The Consul Engineering team builds the product that is the central nervous system for modern, cloud-native infrastructure. This team is a high-leverage group of developers responsible for the entire universe surrounding the core Consul product.In this role, you will be responsible for designing, building, and maintaining the Consul's core functionality that powers microservices. This is a highly influential individual contributor (IC) role where you will have a significant impact on our architecture, technology choices, and engineering best practices. You will be working on critical systems that require a deep understanding of distributed systems, high availability, fault tolerance, and security.
Responsibilities
- Lead the design and development of advanced features for Consul, driving architectural decisions and providing technical leadership to the team.
- Contribute to the entire software development lifecycle, from requirements gathering and design to implementation, testing, deployment, and ongoing maintenance and support.
- Mentor and guide engineers, fostering a culture of technical excellence, continuous learning, and best practices in code quality, testing, documentation, and operational excellence.
- Lead technical discussions, conduct code reviews, and mentor junior engineers.
- Identify and resolve performance bottlenecks, reliability issues, and security vulnerabilities, as well as troubleshoot complex issues.
- Stay informed about the latest advancements in service discovery, service mesh, and related technologies, evaluating their applicability to Consul.
- Collaborate effectively with cross-functional teams including product management, operations, and other engineering teams.
- Contribute to both our Community edition and enterprise offerings.
Preferred Education
Master's Degree
Required Technical And Professional Expertise
- 8+ years of professional experience in software engineering, with a strong focus on designing and building distributed systems, especially cloud infrastructure.
- Hands-on experience with Golang.
- Proven track record of building and operating highly available, fault-tolerant, and scalable systems in production environments.
- Strong understanding of network protocols, operating systems, and cloud infrastructure (AWS, GCP, Azure).
- Experience with containerization (Docker, Kubernetes) and orchestration technologies.
- Familiarity with various data stores (e.g., SQL, NoSQL, KV stores) and messaging systems.
- Excellent problem-solving skills and the ability to tackle complex technical challenges independently.
- Strong communication and interpersonal skills, with the ability to articulate technical concepts to both technical and non-technical audiences.
- Bachelor's or master's degree in computer science or a related field, or equivalent practical experience.
Preferred Technical And Professional Experience
- Experience with infrastructure as code tools (Terraform, Ansible).
- Prior experience contributing to or maintaining open-source projects.
- Experience with distributed consensus algorithms (e.g., Raft, Paxos) and their practical application.
- Experience with advanced AI methodologies, including building MCP servers, agent-agent communication, and model deployment.
- Proficiency in developing ML techniques such as Retrieval Augmented Generation (RAG) and Supervised Fine-Tuning (SFT).