Job Summary:
As a Software Release Engineer, you will play a critical role in managing, planning, and coordinating software and firmware release activities across development and infrastructure teams. You will implement and refine end-to-end release management processes, oversee scheduling, and facilitate communication to deliver high-quality software releases efficiently and securely. You’ll collaborate closely with security staff to ensure proper access controls for all source code management (SCM) systems, and partner with Global Information Technology to manage and maintain build and release infrastructure in Oracle Cloud Infrastructure (OCI) and legacy data centers.
Key Responsibilities:
- Release Management: Oversee the entire software/firmware release lifecycle, from planning through deployment, ensuring release activities are efficient, timely, and well-documented.
- Automation: Develop and maintain scripts and tools to automate build, testing, and deployment processes, driving efficiencies and minimizing manual steps.
- Build & Deploy: Ensure smooth compilation, versioning, and deployment of code across multiple environments, including production.
- Configuration Management: Implement and maintain robust configuration management processes to ensure consistency and reliability.
- Troubleshooting : Quickly identify, diagnose, and resolve issues throughout the release process, minimizing impact on delivery timelines.
- Collaboration: Work with development, QA, operations, and security teams to ensure seamless, secure releases and unified processes.
- Continuous Improvement: Proactively identify opportunities to optimize release workflows, tools, and practices for reliability and scalability.
- Documentation: Prepare and maintain release notes, technical documentation, and process guidelines as part of each release cycle.
- Monitoring & Reporting: Monitor releases post-deployment and provide reporting on key release metrics and application performance.
- Stay Current: Stay abreast of new trends and best practices in release engineering, automation, and security.
Required Skills & Qualifications:
- Strong understanding of the Software Development Lifecycle (SDLC), release management methodologies, and CI/CD pipelines.
- Hands-on experience with automation and build systems such as Jenkins, GitLab CI, etc., and expert proficiency in version control systems (preferably Git).
- Proficient in scripting languages (e.g., Python, Perl, Shell) and familiar with configuration management/infrastructure-as-code tools (such as Ansible, Terraform).
- Experience working within Agile and/or DevOps frameworks (e.g. JIRA).
- Excellent written and verbal communication skills, with the ability to effectively communicate with stakeholders at all levels.
- Strong analytical and problem-solving skills, with a proactive approach to identifying and resolving release and deployment issues.
- Exceptional attention to detail in planning, coordination, documentation, and scheduling.
- Mandatory knowledge of Git/SCM branching strategies and transitioning release engineering tools/services to cloud environments (preferably OCI).
Preferred Qualifications:
- Experience supporting highly available, complex, enterprise infrastructure.
- Familiarity with release management for SaaS, PaaS, or large-scale distributed systems.
- Knowledge of security practices related to release and deployment workflows.