Senior Release Engineer
Job Summary:
The Senior Release Engineer is responsible for ensuring that release process is automated for mobile, web and backend applications and adheres to release engineering best practices. This role would automate the release process using CI/CD framework such as Jenkins and establish release train readiness and product onboarding.
Job Expectations:
Design and develop Enterprise level Continuous Integration Environment for Build and Test systems
Improve and encourage development hygiene by incorporating unit testing, code coverage, functional testing, container security scanning, static code analysis within the development workflow
Collaborate with engineering teams to devise code branching strategies, application deployment and rollback strategies, and implementing the development workflow in the CI pipeline
Ability to drive cross functional projects that impact global development teams
Develop an overall plan for processes and tools with the intent of creating a well-integrated build and release system
Develop and implement release train onboarding and exit criteria
Troubleshoot build and deployment related issues
Ability to work with a diverse group of people, effectively balance competing priorities, and meet tight timelines
Knowledge, Skills and Abilities:
Knowledge of source control management systems (i.e. Git) and code branching/merging strategies
Familiar with managing on demand instances - AWS Technologies
Knowledge of software that enables automatic provisioning and deployment like Helm, Kubernetes, Docker, AWS-ECS
Knowledge on unit testing, code-coverage tools and configuration management (e.g. Puppet, Chef, Ansible, Salt )
Expertise with one or more build automation tools ( Jenkins, GitLab CircleCI, Bamboo, Bitrise)
Working knowledge of modern software architecture such as micro services, event-driven architectures, containers, frontend for backend services
Able to identify areas of weakness between release pipelines and provide enhancements
Ability to understand loosely defined specifications and identify build strategy, tools and resources required
Hands-on experience with complex build systems
Knowledge of webhooks, tags and other trigger mechanisms essential for build and release
Strong ownership instincts and being able to mentor junior team members
Experience Requirements:
Generally eight (8) plus years experience with CI, config management and automation tools. Experience programming and scripting experience with Python, Ruby, Bash and C# is a plus.
Education Requirements:
A Bachelor's Degree in Computer Science or equivalent work experience
#LI-MM1