Senior Software Engineer – Go (Golang) OSS Package Ecosystem
VOLTO Consulting · Redmond, WA · 2 days ago
On-siteEngineeringFull-time
About the role
We are seeking an experienced Go (Golang) Open Source Software Engineer to drive the modernization and maintenance of large-scale third-party package ecosystems. The engineer will be responsible for performing version upgrades of open-source Go packages, resolving dependency conflicts, fixing code breaks introduced by package updates, and ensuring successful validation through build, test, and presubmit pipelines.
Responsibilities
- Open Source Package Upgrade Management
- Perform version upgrades of Go open-source packages across large codebases.
- Analyze package dependencies and transitive dependency chains.
- Assess compatibility impact of package upgrades on consuming applications.
- Drive package modernization and retirement of obsolete dependencies.
- Manage end-to-end package migration activities.
- Dependency Analysis & Remediation
- Investigate dependency conflicts and version incompatibilities.
- Resolve issues arising from indirect and nested dependencies.
- Analyze API deprecations and breaking changes introduced by package upgrades.
- Create remediation plans for application and library compatibility issues.
- Develop dependency migration strategies for large package ecosystems.
- Go Development & Debugging
- Troubleshoot and resolve code breaks resulting from package version migrations.
- Modify Go applications and libraries to align with updated package APIs.
- Perform root cause analysis of runtime, functional, and integration failures.
- Develop and maintain fixes for OSS-related defects.
- Contribute improvements and fixes to upstream open-source projects where appropriate.
- Build & Test Engineering
- Diagnose and resolve build failures triggered by package upgrades.
- Investigate and fix unit, integration, and regression test failures.
- Ensure successful execution of CI/CD validation pipelines.
- Resolve failures identified during global presubmit validation processes.
- Improve build reliability and automation around package migration workflows.
- Copybara & Source Synchronization
- Manage Copybara configurations and synchronization workflows.
- Troubleshoot repository synchronization and code migration issues.
- Resolve merge conflicts and code integration challenges.
- Support source movement between internal and external repositories.
- Patch Management
- Create and maintain local patches for package compatibility.
- Track upstream fixes and assess opportunities to retire local patches.
- Manage patch lifecycle and release readiness.
- Maintain upgrade documentation and remediation records.
- Engineering Automation
- Develop automation for:
- Dependency discovery
- Version analysis
- Impact assessment
- Upgrade validation
- Failure triage
- Build tooling to improve migration velocity and engineering productivity.
- Develop automation for:
Required Technical Skills
- Go Programming Expertise
- Strong software engineering experience in Go (Golang).
- Deep understanding of:
- Goroutines
- Channels
- Concurrency patterns
- Memory management
- Context propagation
- Error handling strategies
- Experience developing and maintaining production-grade Go applications.
- Go Ecosystem Knowledge
- Extensive experience with:
- Go Modules
- GOPROXY
- Dependency resolution
- Semantic versioning
- Package publishing
- Open-source package maintenance
- Extensive experience with:
- Build & CI/CD
- Strong experience with:
- Bazel
- Go Build
- Go Test
- GitHub Actions
- Jenkins
- Buildkite
- GitLab CI
- Ability to troubleshoot large-scale build environments.
- Strong experience with:
- Dependency & Migration Engineering
- Experience performing:
- Package upgrades
- Framework migrations
- Dependency conflict resolution
- Version compatibility analysis
- API migration and refactoring
- Experience performing:
- Source Control & Repository Management
- Git expertise.
- Experience with monorepos and large-scale codebases.
- Familiarity with Copybara or equivalent repository synchronization tools.
- Code review and branching strategy experience.
- Platform & Infrastructure
- Linux systems expertise.
- Container technologies:
- Docker
- Kubernetes
- Familiarity with cloud-native development practices.
Preferred Qualifications
- Experience managing large-scale OSS upgrade programs.
- Contributions to public Go open-source projects.
- Experience with supply-chain security and dependency governance.
- Familiarity with vulnerability remediation practices.
- Experience with SBOM generation and management.
- Understanding of modern software release engineering practices.
Skills
- Golang