Skill: The Release Engineer will be responsible for managing complex code builds and supervising day-to-day code integration activities for a team of 20+ developers spanning multiple applications, environments and locations. The candidate will be responsible for developing and maintaining portions of the integration and release processes within the eCommerce team. The Release Engineer will be responsible for creating and maintaining environment configuration and controls, code integrity, code conflict resolution, and will work closely with software development, programming and QA teams to review code for compatibility issues, resolve issues as they arise and implement deployment processes.
• Create, maintain and support extensive build and test environments (Development/Integration/Staging)
• Create, review, publish and manage formal release notification, instructions, deployment notes and launch plans as needed
• Support and enhance build and release processes through automation using a combination of processes, existing tools and enhancements.
• Coordinate release activities with Release Management, Project Management, QA, and Web Development teams to ensure a smooth and trouble-free roll out of releases
• Manage, deploy and support multiple concurrent releases through various test environments
• Manage and maintain multiple test environments, ensuring that these environments are properly setup, configured, and available for each project as scheduled.
• Trace complex build problems, release issues and environment issues in a multi-component environment
• Develop, maintain and enhance key parts of the release procedures and processes. Communicating and educating those aspects to management and other stakeholders where applicable.
• Regular, dependable attendance and punctuality
Experience: • 5+ years in Linux/Unix Release Engineering role
- Experience with building and deploying J2EE based applications
- Experience with isolating build/deployment issues versus code issues.
- Ability to perform Linux/Unix general system maintenance
• 4+ years experience working with and administration of web server technologies ( JBoss/Websphere)
• 3+ years source control tool experience (e.g. Subversion, GIT, Clearcase)
• 3+ years build automation experience (e.g. Anthill Pro, IBM Urban Code Deploy, Hudson, Cruisecontrol)
• 3+ years build tools experience (e.g. Ant, Ivy, Maven, etc.).
• 3+ years of Perl, Ruby and/or UNIX shell scripting
• 2+ years SQL experience
• 1+ years experience administering and configuring Apache/Tomcat
• Experience in Source Code Branching and Merging
• Hands on knowledge programming in HTML and XML
• Hands on experience with Subversion merge tools
• Experience using major relational databases (e.g. Oracle, DB2)
Desirable Technical Skills:
• Experience setting up Continuous Integration (Hudson / Jenkins preferred)
• Familiarity with submitting files via SFTP, SCP, PGP, or general data encryption knowledge.
• Deployment automation experience (e.g. JBoss ON, scripted workflows, AnthillPro, uDeploy, etc.)
• Hands on web or mobile development experience (Objective C, Java/JSP, HTML5/XML)
• Infrastructure automation experience (e.g. Chef, Puppet, etc.)
• Experience implementing or using Continuous Delivery methodologies.
• Internet / E-Commerce application development experience
• Excellent customer service attitude, communication skills (written and verbal), and interpersonal skills.
• Patience and perseverance in following best practices for process improvements.
• Ability to plan long-term, but execute goals in tangible short-term incremental.
• Ability to work under pressure and in high stress situations with a calm demeanor.
• Team Player.
Education: • Solid understanding and practical experience of Agile SDLC, with particular emphasis on release engineering functions and the DevOps philosophy
• Experience working with rapid, overlapping product release cycles
• Excellent customer service attitude, communication skills (written and verbal), and interpersonal skills
• Experience working in cross-functional, multi-location teams
• Excellent analytical and problem-solving skills
• Ability to be flexible and adapt to any given situation
• In-depth understanding of the principles and best practices of Software Configuration Management
• Ability to work under pressure and in high stress situations with a calm demeanor
• Willingness to work evenings and weekends in support of builds and deployments