Job Summary
We are looking for a skilled DevOps Engineer to lead our release management activities and drive the successful delivery of software releases. The ideal candidate will have a strong background in DevOps practices, release management, and automation, with a focus on ensuring the stability, reliability, and security of our software products.
Principal Duties and Responsibilities
- Lead the planning, coordination, and execution of software releases across multiple dev teams and environments.
- Define, implement, and enforce release management processes, policies, and best practices to ensure consistent and reliable release delivery.
- Assist in enforcing best practices in branching strategy to optimize development workflows.
- Collaborate with development, QA, product, and other cross-functional teams to streamline the release process and resolve conflicts or dependencies.
- Assist Product Managers in identifying and managing inter-dependencies and timing concerns to ensure seamless delivery.
- Design and maintain automated release pipelines using CI/CD tools to facilitate continuous integration, testing, and deployment of software releases.
- Implement and maintain release automation scripts, tools, and workflows to improve release efficiency and reduce manual intervention.
- Develop rollback strategies and contingency plans to address unforeseen issues during deployments.
- Monitor release performance and metrics, identify areas for improvement, and implement corrective actions to optimize the release process.
- Manage release calendars, schedules, and dependencies to ensure timely and coordinated release delivery.
- Facilitate release meetings, go/no-go reviews, and retrospectives.
- Communicate release status, risks, and impacts to stakeholders, and escalate issues as needed to ensure timely resolution.
- Lead after-hour deployments to the production environment.
- Drive continuous improvement initiatives to enhance the release process.
- Stay current with industry trends, emerging technologies, and best practices in DevOps and release management.
- Maintain detailed documentation related to release processes and procedures.
Experience and Education
- Bachelor's degree in computer science, MIS, or related field (or equivalent work experience).
- 3+ years of proven experience in release management, DevOps, or related roles, with a focus on automating release processes and managing complex release pipelines.
- Strong understanding of DevOps principles, CI/CD methodologies, and agile software development practices.
Required Skills and Abilities
- Experience with release automation tools such as Jenkins, GitLab CI/CD, or similar platforms.
- Expertise in Heroku, with experience in Heroku flows considered a significant plus.
- Proficiency in scripting and programming languages such as Bash and JavaScript.
- Experience with PostgreSQL, SQL, or other relational database systems
- Development experience with React and Node.js is highly desirable.
- Excellent communication, collaboration, and leadership skills, with the ability to work effectively across teams and influence decision-making.
- Strong problem-solving and troubleshooting abilities, with a focus on driving continuous improvement and innovation.
- Experience in agile principles and frameworks.
- Proficiency in Jira, Confluence, and/or other collaboration software systems preferred.
Benefits Summary
- High quality voluntary health, vision, disability, life, and dental insurance programs
- 401K Matching Plan
- Employee Stock Purchase Plan
- Paid holidays, vacation, and sick leave
- Corporate sponsored programs to enhance employee physical, financial, mental, and emotional wellness
- Financial Solution Program