Sourcegraph is at the center of transformation in software development, providing powerful code intelligence solutions. The Software Engineer - Platform role involves solving complex technical problems, developing cloud infrastructure solutions, and collaborating with customers and internal teams to enhance the Sourcegraph Cloud offering.
Responsibilities:
- Develop inter-cloud connectivity solutions to support enterprise customers from highly regulated industries to use Sourcegraph Cloud
- Build a control plane to orchestrate a fleet of single-tenant Sourcegraph Cloud instances
- Expose complex infrastructure as API to support internal customers to iterate faster
- Dive into upstream dependencies (e.g., CDK for Terraform, Terraform providers for GCP) to debug and patch non-trivial problems
- Be an advocate for building reliable services and work with leadership to help product teams achieve operational excellence
- Participate in on-call rotation to uphold our contractual SLA commitments
- Onboard onto the Sourcegraph architecture, tooling, and development workflow
- Build a solid understanding of the team’s areas of ownership, technical challenges, and problems the team solves for our customers, and know how all of these align with the top-level company goals
- Actively participate in team meetings, sharing ideas and insights to contribute to the overall team goals
- Start contributing to the team goals and deliverables by shipping new features, debugging issues, and fixing bugs
- Demonstrate a comprehensive understanding of the Cloud infrastructure, its underlying technologies, and its integration within the Sourcegraph ecosystem
- Lead initiatives contributing to team goals through both discovery and delivery phases, collaborating directly with product and design partners, other engineering teams, and non-technical stakeholders from different departments
- Contribute to the architectural design and implementation of new features or improvements, actively shaping the future direction of Cloud infrastructure based on customer needs
- Lead initiatives contributing to team goals on the roadmap by going through the entire product development lifecycle discovery, design, implementation, and delivery
- Participate in our on-call rotation
- Define long-term technical vision and strategies for new product development, scaling existing services, and managing technical debt
- Collaborate with the Engineering Manager on defining the team’s growth strategy based on the long-term product vision, the technical vision, and the team’s needs
- Seek feedback from customers and stakeholders to identify opportunities for further improvements or new features, actively iterating on the Cloud infrastructure to ensure it continues to meet our high bar
Requirements:
- Proficiency in Go, or other strongly typed languages
- Knowledge in one of the public cloud platform providers (GCP, AWS, Azure)
- Experience with Terraform (or similar IaC solutions) and Kubernetes to build tooling and automation
- Skilled at debugging distributed systems, followed by designing and implementing solutions to those problems. This means you should know your way around various OS-level primitives, e.g., network, CPU, and memory
- Ability to communicate clearly and empathetically, especially in writing and documentation
- Preferred time zone between UTC-8 and UTC+2
- Built services and exposed them as API for external consumption (e.g., gRPC)
- Comfortable implementing system-level software (e.g., custom transport protocol) if needed or has contributed to Kubernetes controllers/operators
- Published blog posts and/or tech talks about your work
- Experience working on small high-performing teams, preferably tech startups