Devops Engineer Resume
Richmond, VA
SUMMARY:
- Eight years of experience in IT Industry with ability to accomplish all aspects of the Software Configuration Management (SCM) process and Build/Release Management
- Ability to manage SCM processes which include compiling, packaging, deploying and application configurations.
- Extensive experience in using Version control systems includes Subversion (SVN), CVS, Rational Clear case, GIT.
- Expertise in using build tools like ANT, MAVEN and GRADLE for the building of deployable artifacts such as war, jar & ear from source code.
- Extensively worked on Hudson, Jenkins and Build Forge for continuous integration and for end to end automation for all build and deployments.
- Ability in development and execution of XML, Shell Scripts and Perl Scripts.
- Efficient in working closely with teams to ensure high quality and timely delivery of builds and releases.
- Expert in deploying the code through web application servers like WebSphere/Web Logic/Apache Tomcat/JBOSS.
- Experienced in Standards and procedures development, release management and CM training/advocacy.
- Expertise in trouble shooting the problems generated while building, deploying and also in production support.
- Worked with Operations and Release Management teams to help achieve a high quality of release management.
- Proficient in tracing complex build problems, release issues and environment issues in a multi - component environment.
- Extensive knowledge and experience in creating AWS cloud infrastructure using AWS resources like ec2, ELB, R53, ASG, S3 buckets, cloud watch alarms and lambda functions.
- Implemented/designed different cloud engineering approaches for backend eAPI applications and multi tier web applications.
- Designed and managed effective CI/CD build automation pipelines to ensure overall system quality throughout the SDLC.
- Managed environments DEV, SIT, QA, UAT and PROD for various releases and designed instance strategies.
- Extensive knowledge and experience in creating AWS cloud infrastructure using AWS resources like ec2, ELB, R53, ASG, S3 buckets, cloud watch alarms and lambda functions.
- Implemented multi-tier application provisioning in OpenStack cloud, integrating it with Chef/Puppet. Adding vSphere to nova compute nodes and Manage and troubleshoot the Nova Compute and Controller Services.
- Design and implementation of a Puppet-based configuration management system for all new Linux machines (physical and virtual).
- Experience in writing chef cookbooks and recipes to automate middleware installations, domain creations and deployment activities. Servers configure management via Puppet or Chef and System orchestration via Ansible. Experience in Setting up Chef Workstation, Working with Chef Cookbooks, Chef Recipes, Chef attributes.
- Implemented/designed different cloud engineering approaches for backend eAPI applications and multi tear web applications.
- Extensive knowledge on providing chef artifacts including chef cookbooks, Roles and environments for different types of applications.
- Evaluated Chef, Puppet and Ansible for automated deployment
- Strong troubleshooting, debugging, and analytical skills.
- Positive attitude, strong work ethic, and ability to work in a highly collaborative team environment.
- Proficient in communicating effectively with good project management skills.
TECHNICAL SKILLS:
Operating System: Windows 98/XP/NT/ 2000/2003/2008 , UNIX, LINUX (RHEL, AIX)
Versioning Tools: CVS, Subversion, IBM Rational Clear case, GIT, CA Harvest
Build Tools: ANT, MAVEN, GRADLE
CI Tools: Hudson, Jenkins, Build Forge, Bamboo
Repositories: Nexus
Languages: C, Perl scripting, Shell scripting, SQL, Java/J2EE
Web Technologies: Servlets, JDBC, JSP, HTML, JavaScript, XML, TIBCO
Web Servers: WebLogic, WebSphere, Apache Tomcat, JBOSS
Code as Infrastructure tools: Chef, Puppet
Cloud Engineering tools: AWS.
PROFESSIONAL EXPERIENCE:
Confidential, Richmond, VA
DevOps Engineer
Responsibilities:
- Involved in the Requirements gathering & Analysis from the business team.
- Helped teams to onboard their application to dashboard for monitoring.
- Developed CHEF scripts for deploying all the required software’s in AWS environment
- Developed Cloud Formation Templates to automatically create AWS EC2 instances
- Developing scripts on ELK stack for application monitoring and alerts
- Worked on Jenkins for automation of build and deployment.
- Active Participation as member of Change Control Board in Production Readiness process and Environment Readiness for all DEV and QA.
- Experience working as a release coordinator for multiple Infrastructure release.
- Designing, configuring, storing huge amount of data across AWS regions with fail-safe and disaster recovery options using AWS Elastic Block Storage, Simple Storage Service, archiving old data using AWS Glacier.
- Created Cloud Formation templates and deployed AWS resources using it.
- Design roles and groups for users and resources using AWS Identity Access Management (IAM).
- Implemented Chef to enhance the existing auto deployment process across wide environments
- Written Chef Cookbook, recipes to automate installation of Middleware Infrastructure and configuration tasks for new environments.
- Follow an extremely light and efficient Agile process, adapted to be most easily applied, and with that the ability to pursue and at any time change a project plan; and others, battle-proven, easy and fast, to prioritize among projects and manage a program in an Agile manner. Also methods of convincing stakeholders and winning them over.
- Implemented Dockers POC.
- Developed deployment scripts to enable Continuous Deployment t lower environments, Continuous Delivery to production Environment.
- Managed, configured servers to automate tasks and deploy apps on Virtual Machines, Bare-Metal and Cloud Instances using a tool Foreman along with Puppet.
- Experienced in installing, configuring, administrating Jenkins on Linux machines alongside updating plugins like GIT, Maven, SVN and Puppet.
- Experience in Installing, Configuring and Managing MySQL databases, Tomcat, JBOSS, WebLogic and WebSphere Application servers for deployments.
- Involved in configuring and develop Continuous Integration (Jenkins/Circle CI) jobs for various Java/JavaScript applications to build, code coverage and perform security scanning on the Java code using Maven, Sonar and to find bugs and Fortify tool.
- Created highly available and scalable infrastructure in AWS cloud by using various AWS services like EC2, VPC, RDS, Route53.
- Configured AWS EC2 Instances using AMIs and launched instances with requirements of specific applications.
- Created Docker images and created our own repository in enterprise dockyard, created docker containers using docker images and deployed them on Elastic Container Service in AWS. Created docker images for various applications /Micro Services.
- Developed Pipeline for build deployments on Dev/QA and Prod environments using Jenkins and auto scheduling automated deployments in non-working hours.
- Set up Jenkins master and added the necessary plugins and adding more slaves to support scalability and agility.
- Installed, configured and administered Jenkins as Continuous Integration Server on Linux machines.
- Understanding the inner workings of Windows, Linux, Unix and Cloud (AWS) environment and database servers knowledge on Oracle/MongoDB/DB2/MS SQL server. Administering the source/version control management tools GitHub, Subversion.
Confidential, Baltimore, MD
Release Engineer
Responsibilities:
- Deployed Bill Me Later products and applications into test and production environment.
- Worked closely with application developers to devise robust deployment, operating, monitoring, reporting for the Bill Me Later applications.
- Participated in the release cycle of the product which involves environments like Dev, INT, QA, LT and Production.
- Used GIT and SVN for branching, tagging, and merging.
- Tuned application configuration to support optimized performance per developer.
- Troubleshoot applications to diagnose problems.
- Developed deployment scripts to enable Continuous Deployment to lower environments, Continuous Delivery to production Environment
- Skilled to Write, debug, maintain scripts in Bash, Perl etc.
- Evaluated and implemented internal and third-party tools for appropriateness, ease-of- use, scalability, robustness.
- Coordinated with operations teams to create strategies and detailed plans for deployment sequencing, timing.
- Experienced with release engineering, build or configuration management in Jboss/Tomcat web application environment.
- Experienced in Software Development Life-Cycle, Incident, Problem, Change, and Release Management practices.
- Deployed Java/J2EE applications on to Apache Tomcat application servers and configured it to host the wiki website.
- Experienced administering a large scale distributed application environment.
- Experienced administering Java and C++ applications.
- Solid understanding of UNIX environment and network technology (symlinks, NAS devices, NFS/CIFS mounting).
- Excellent understanding of web architecture.
- Solid understanding of load balancing appliances in a web environment.
- Experience in designing and configuring open source management tools Puppet, Chef and CFengine in Devops Environment.
- Experience on working with Puppet Enterprise and Puppet Open Source. Installed, configured, upgraded and managed Puppet Master, Agents & Databases. Integration of Puppet with Apache and Passenger.
- Communicates with technical project leads, developers, quality assurance, and business team members.
- Active Participation as member of Change Control Board in Production Readiness process and Environment Readiness for all DEV and QA.
- Experience working as a release coordinator for multiple Infrastructure release.
- Use SDLC expertise when development teams are besieged by a variety of clients, to take pressure off them, enabling the teams to concentrate on the work at hand, channeling requirements, chastening clients through open communication so they won't be insulted, and using other methods pertaining to such concerns.
- Developed deployment scripts to enable Continuous Deployment to DEV and QA region, Continuous Delivery to production Environment.
Confidential, Minneapolis, MN
Sr. Build Engineer
Responsibilities:
- Primary duties include Build and Deployment of the java applications onto different environments like Dev, QA and UAT.
- Involved in Installing Hudson on a Linux machine and created a master and slave configuration to implement multiple parallel builds through a build farm.
- Built and Deployed java source code into application servers in an Agile continuous integration environment.
- Generated Ant, Perl & UNIX scripts for build activities in Dev, QA, Staging and Production environments.
- Worked on the transition project, which involves migration activities from Ant to Maven in order to standardize the build across all the applications.
- Coordinated application release with Development, DBA, QA and project management teams.
- Used GIT and CVS as Version Control and Process tool.
- Responsible for creating different release branches.
- Merged release branches to the trunk after the production release and resolved the conflicts erose if any during the merge in CVS.
- Managed Users and Groups in CVS and troubleshooted client spec issues and user issues.
- Integrated continuous integration system (Hudson) with CVS version control repository and continually build as the check-in comes from the developer.
- Automated the deployment and server bounce process is by creating the scripts using Websphere Scripting Tool and Shell scripts.
- Integrate SCM with other CI and CD tools to achieve desired results.
- Implemented Dockers tool for creating sandboxes, recreating infrastructure environments for software release testing.
- Build artifacts (war and ear) are deployed into a Websphere app server by integrating the WSDL scripts and Shell Scripts.
- Maintained configuration files for each application for build purpose and installed on different environments.
- Directed the Release Management Calls to synchronize with the Developers, Testers and DBA teams for successful Release.
- Presented reports to the Project manager about the progress and issues tracking key project Milestones, plans and resources.
- Deployed using Admin console into Websphere Application Servers.
- Involved in troubleshooting of user interface using JSP.
- Pushed releases to QA, Beta, and production environments.
- Worked with JIRA for Issue Tracking and monitoring.
- Worked closely with the team to review code for compatibility issues, resolve issues as they arise, and implement deployment processes and improvements on a continuous basis.
- Deployed Puppet, Puppet dashboard for configuration management to existing infrastructure.
- Installed Jenkins/Plugins for GIT Repository, Setup SCM Polling for Immediate Build with Maven and Maven Repository (Nexus Artifactory) and Deployed Apps using custom ruby modules through Puppet as a CI/CDProcess.
- Involved in leading Automation Deployment Team by working with Puppet.
Confidential, Chicago, IL
Sr. Build/Release Engineer
Responsibilities:
- Worked in different environments such as DEV, INT and QA.
- Analyze and resolve compilation and deployment errors related to code development, branching, merging and building of source code.
- Develop and enhance the automated configuration management system.
- Worked with Development Team Leads and testing team to establish a build schedule, execute the builds and troubleshoot builds failures, if any.
- Maintain and enhance current build procedures for all software development projects.
- Branching and merging of the code base in Rational ClearCase as well as Subversion.
- Created Subversion configurations record for builds using derived objects generated during build audit process.
- Used Ant to perform daily and weekly Software Builds.
- Used Build Forge for automation of Build and deployment Tasks.
- Responsible for creating different Projects and Environments in Build Forge.
- Building and Administering the Jenkins Continuous Integration servers.
- Built and Configured Jenkins Slaves for Parallel Job execution.
- Creating new Build jobs, Integration testing jobs and Deploy jobs in Jenkins to automate the process.
- Resolving merging issues during build and release by conducting meetings with developers and managers.
- Responsible for designing and deploying best SCM processes and procedures.
- Maintain build system and automate build process for different applications.
- Deploying Java Enterprise applications to WebSphere.
- Worked with in-house Build tools used across the bank catering to compliance issues.
- Automate deployment and release distribution process with shell, AWK, and Perl etc.
- Used PL/SQL to connect to various databases and to check for the invalid objects after and before each release.
- Posting the build on time & following it up with the testing team on posted builds.
- Worked with JIRA for Issue Tracking and monitoring.
- Coordinated the resources by working closely with Project Managers for the release and carried builds on various environments using continuous integration tool.
- Developed and implemented the software release management for the release of web applications.
- Worked with the Architects on SDLC process being the owner of post development environments.
- Performed Database Tasks as executing DML's in MySQL.
- Participated as an active member of Change Control Board in Production Readiness process.
Confidential, Moline, IL
Build/Release Engineer
Responsibilities:
- Analyzed ANT project for conversion.
- Converting the ANT Build projects to Maven Build projects.
- Developing the Maven Build scripts (pom.xml).
- Implemented Maven builds to automate JAR, WAR and EAR.
- Managed Maven project dependencies by creating parent-child relationships between projects.
- Used Hudson for continuous Integration and deployment in Tomcat Application Server.
- Used SVN as Version Control for branching, tagging, and merging.
- Integrating the code quality analysis tools like Cobertura, Find Bugs, JUnit, PMD, and Checkstyle into the projects.
- Building and Administering the Jenkins Continuous Integration servers.
- Built and Configured Jenkins Slaves for Parallel Job execution.
- Creating new Build jobs, Integration testing jobs and deploying jobs in Jenkins to automate the process.
- Installed and Configured the Apache Tomcat application servers for Dev and Integration Test Environments.
- Automated the process of deployment to Apache Tomcat Application Servers by developing Perl Scripts.
- Worked in Agile Project management Process.
- Built and Deployed Java/J2EE to Tomcat Application servers in an Agile continuous integration process and automated the whole process.
- Involved in periodic archiving and storage of the source code for disaster recovery.
- Developed, maintained, and distributed release notes for each scheduled release.
- Performed Database Tasks as executing DML's in MySQL.
- Participated as an active member of Change Control Board in Production Readiness process.
Confidential
Build Engineer/Unix Admin
Responsibilities:
- Primary responsibilities included Build and Deployment of the Java application into different environments like DEV,INT,QA and PROD
- Used CVS as version control system.
- Worked on Branching for parallel Development.
- Coordinated with the Developers for merging the change to Trunk.
- Maintained Ant Build scripts (Build.xml's).
- Updated and automated Release reports for Change Management.
- Documented release, builds and source control processes and plans.
- Worked closely with the development and QA team for product release.
- Deployed the applications to JBoss Application Server and static content to Apache Web server.
- Coordinating the build and deployment bottlenecks with the development team.
- Log management like monitoring and cleaning the old log files.
- System performance for hourly basis or daily basis.
- Remotely coping files using sftp, ftp, scp, winscp, and filezilla.
- Taking backup using tar and recovering during the data loss.
- Experience in writing bash scripts for job automation.
- Documenting the installation of third-party software’s.
- Configuring printers to the Solaris and Linux servers and also installing third party software’s.
- Maintaining relations with project managers, DBA’s, Developers, Application support teams and Operational support teams to facilitate effective project deployment.
- Manage system installation, troubleshooting, maintenance, performance tuning, managing storage resources, network configuration to fit application and database requirements.
- Responsible for modifying and optimizing backup schedules and developing shell scripts for it.
- Performed regular installation of patches using RPM and YUM.
- Monitored and fine tuning system and network performance for server environments running Solaris, Redhat Linux.
- Troubleshoot various systems problems such as application related issues, network related issues, hardware related issues etc.
Confidential
Linux/Unix Administrator
Responsibilities:
- Installation and Configuration of Redhat ES, SLES 9, 10 servers.
- Installation, configuration and management of Apache and Tomcat servers.
- Performing Nessus Scan on quarterly basis to scan for vulnerabilities in Web and Application servers.
- Applying patches to fix the holes that are found during the quarterly scan basis using Nessus scan.
- Upgraded and maintained servers, operating Systems and patches.
- Install/configure/maintain the Solaris / Linux servers, NIS, DNS, NFS, Mailing List, Send mail, apache, ftp, sshd.
- Managed NetaPP FAS 920 Storage and implemented RAID.
- Configuring and optimizing open-iSCSI in RHES for SAN using iOmega technology.
- Install host firewall IP Tables for Redhat Linux and Centos.
- Performed TCP/IP, DNS and DHCP administration.
- Setting up Oracle 10g server in Linux/Unix environment.
- Installed and monitored administering and monitoring tools such as Webmin and Nagios.
- Maintained and monitored all of company's servers’ operating system and application patch level, disk space and memory usage, user activities on day-to-day basis.
- Administered Backup and Restore operations using Veritas NetBackup 5.1.
- Monitored and fine tuning system and network performance for server environments running Solaris, Redhat Linux.
- Troubleshoot various systems problems such as application related issues, network related issues, hardware related issues etc.
- Experience managing various file systems using LVM and SVM and also configured file systems through network using NFS, NAS, SAN methodologies and installed RAID devices.
- Worked along with Monitoring teams to identify and troubleshoot issues on servers using tools like Nagios, Munin and Cacti.
