Devops / Aws Engineer Resume
Plano, TX
SUMMARY:
- Over 6 years of hands on experience in System Administration, Software Configuration Management (SCM), Build, Deployment and Release Management, Infrastructure Management and Software development environment set up.
- Expertise in creating DevOps strategy in a mix of environments consisting of Linux (RHEL, CENTOS) servers along with Amazon Web Services.
- Experience in branching, tagging and maintaining versions across the environments, using SCM tools like GIT, Subversion (SVN), CVS.
- Installed, Administered and Maintained several instances of JENKINS. Mastered supporting various development systems and running several builds a day with downstream jobs to perform the deployments onto SIT & QA environments.
- Hands - on experience in working with configuration management tools like PUPPET, CHEF and ANSIBLE. Experience in setting up Puppet Master, Puppet Agents for managing enterprise policies and configurations.
- Understanding of infrastructure automation using Docker and Ansible.
- Experience on Ansible as Configuration management tool, to automate repetitive tasks, quickly deploys critical applications, and proactively manage changes.
- Experience in Working with Public Cloud Platform like Amazon Web Services and good knowledge in using various services like AWS EC2,VPC,CLI, S3, Route53, Cloud Formation, Cloud Front, SNS, SQS, Cloud Trail.
- Experienced in Cloud automation using AWS Cloud Formation templates.
- Monitored RDS instances, ElastiCache and Elastic Load Balancer for performance and availability, and used CloudWatch to monitor instances.
- Worked with build tools Ant and Maven for writing build.xml and pom.xml respectively.
- Installed and administered NEXUS and Artifactory as Artifact Repository Manager for Builds.
- Experience in monitoring infrastructure using NAGIOS.
- Experience in working with EC2 Container Service plugin in JENKINS which automates the Jenkins master- slave configuration by creating temporary slaves.
- Exposed to all aspects of software development life cycle (SDLC).
- Experience writing Shell and Python scripts to automate tasks and deployments.
- Experienced in project analysis, gathering user requirements, technical design and training customers.
- Self-starter and a good team player with excellent troubleshooting skills, communication and presentation skills.
TECHNICAL SKILLS:
Configuration Management Software Tools: Puppet, Chef, Ansible Cloud Technologies Amazon Web Services (AWS)
Continuous Integration Tools: JENKINS/HUDSON Languages/Scripts C, Python,Ruby, Shell, Bash,HTML
Source Code Management Tools: GIT/GITHUB, CVS, SVN Build Tools ANT, Maven
Web/Application Servers: Apache, Tomcat, Nginix, Weblogic.
Operating Systems: Windows Variants, Linux/Unix (RedHat, Ubuntu, CentOS, Suse Linux) Databases MS SQL, Cassandra, MongoDB
WORK EXPERIENCE:
DevOps / AWS Engineer
Confidential- Plano, TX
Responsibilities:
- Created highly available and scalable infrastructure in AWS cloud by using various AWS services like EC2, VPC, Auto scaling, ELB, RDS, Route53
- Configured AWS EC2 Instances using AMIs and launched instances with requirements of specific applications.
- Build Automation and Build Pipe line Development using Jenkins and Maven. Set up build pipelines in Jenkins by using various plugins like Maven plugin, EC2 plugin and etc.
- Setting up Jenkins master, adding the necessary plugins and adding more slaves to support scalability and agility.
- Installed, configuring and administering Jenkins as Continuous Integration Server on Linux machines.
- Implemented the setup for Master slave architecture to improve the Performance of Jenkins.
- Planning and setting up of Continuous Integration for various properties on Jenkins with Commit, Component, Assembly, Deploy and Smoke jobs.
- Managed Ansible Playbooks with Ansible roles. Used file module in Ansible playbook to copy and remove files on remote systems.
- Created inventory in Ansible for automating the continuous deployment and wrote playbooks using YAML scripting.
- Implemented and designed AWS virtual servers by Ansible roles to ensure deployment of web applications.
- Managed the source code repository and involved in the build, release and continuous integration process.
- Experience in Administering GIT in Distributed Environments.
- Dealt with errors in pom.xml file in order to obtain appropriate builds using maven build tool.
- Created proper documentation for new server setups and performed backups on existing servers.
- Implemented a Continuous Delivery pipeline with Docker, Jenkins and GitHub.
- Whenever a new github branch gets started, Jenkins automatically builds a new Docker container from it.
- Installed and Configured the Nexus repository manager for sharing the artifacts within the company.
- Supported and developed tools for integration, automated testing and release management.
- Used Cloudwatch for monitoring servers CPU performance and memory utilization.
- Used Nagios as a monitoring tool to identify and resolve infrastructure problems before they affect critical processes and also worked on Nagios Event handlers in case of automatic restart of failed applications and services.
- Coordinated with the Dev, DBA, QA, and IT Operations environments to ensure there are no resource conflicts.
- Responsible for the development and maintenance of processes and associated scripts/tools for automated build, testing and deployment of the products to various developments.
- Involved in day-to -day System Administration tasks on RHEL/CentOS 5.x/6.x
- Verified the methods used to create and recreate software builds are consistent and repeatable.
- Involved in Research of the project application architecture to support/resolve build, compile, and test issues/ problems.
- Used Jira as ticket tracking and work flow tool.
Environment: GIT, Ansible, Mercurial, Jenkins, Tomcat, Apache, Oracle 11g, Python, JIRA, Maven, Nexus, Nagios, RedHat Linux, Ubuntu, CentOS, Linux, JAVA, AWS EC2, ELB, AWS SQS, AWS S3, AWS Cloud Formation Templates, AWS RDS, AWS Cloud Watch.
DevOps Engineer
Confidential - Minneapolis, MN
Responsibilities:
- Worked with software engineers to develop tools that support rapid creation, deployment, iteration and ongoing support of web applications.
- Managed code repository in GIT, improved practices of branching and code merge to custom needs of development team.
- Implemented Gitlab for version control of puppet modules and process documentation.
- Involved in Installing Jenkins on a Linux machine and created a master and slave configuration to implement multiple parallel builds through a build farm.
- Notified the developers on success/failure of a build by using SMTP and LDAP mailer plug-in in Jenkins.
- Designed and developed Continuous Integration systems with Maven and Jenkins.
- Supported and developed tools for integration, automated testing and release management.
- Involved in Research of the project application architecture to support/resolve build, compile, and test issues/ problems.
- Verified Maven Build Scripts based on the requirements.
- Managed Maven project dependencies by creating parent-child relationships between projects.
- Automated configuration management using Chef. Wrote cookbooks, recipes to manage nodes and Chef Server.
- Used tools like knife to enhance the functionality and usability of the cookbooks.
- Implemented Chef Cookbooks for OS component configuration to keep AWS server's template minimal.
- Deploying and Starting the Apache servers for running the web applications.
- Installed and Configured the Nexus repository manager for sharing the artifacts within the company.
- Developed and implemented Software Configuration Management strategies for various applications according to the agile process.
- Monitored the health of the applications and servers on PRTG which allows for the long term collection of monitoring data.
- Worked with AWS Cloud platform and Configured AWSEC2 Cloud Instances using AMIs and launched instances with respect to specific applications.
- Responsible for the development and maintenance of processes and associated scripts/tools for automated build, testing and deployment of the products to various developments.
- Used Remedy as deployment issue tracking tool.
- Participated in weekly release meetings with Technology, stakeholders to identify and mitigate potential risks associated with the monthly releases.
Environment: Amazon Web Services, Chef, GIT(GIT HUB), Maven, DB2, Remedy, PRTG, Shell Scripts, Tomcat, Apache HTTP, Nexus
Build & Deployment Engineer
Confidential - Cranston, RI
Responsibilities:
- Participated in the release cycle of the product which involves environments like Development, QA and UAT.
- Created subversion repositories with standard directory layout of trunk, branches, tags and also customized directory based on business/project need.
- Administered and maintained Subversion version control system adhering to the branching policies.
- Responsible for design and maintenance of the Subversion Repositories, views, and the access control strategies.
- Enforced development policies using Subversion hooks and other metadata.
- Responsible for design and maintenance of the Subversion Repositories, views, and the access control strategies.
- Updating the SVN log properties for revisions and promoting the changes from trunk revisions to release branch.
- Deploying and Starting the Apache servers for running the web applications.
- Worked with build.xml for applications using Ant.
- Developed and implemented Software Configuration Management strategies for various applications according to the agile process.
- Jenkins is used as a continuous integration tool for build and deployment of applications JAVA code.
- Designed and executed fully automated server build management, monitoring and deployment using Puppet.
- Developed Puppet modules and manifests to automate deployment, configuration, and lifecycle management of key clusters.
- Wrote Puppet Manifest files to deploy automated tasks to many servers at once.
- Developed FAI scripts which bootstrap systems from bare metal to functioning Puppet Clients.
- Developed scripts in Python to package log files and send them to a remote server.
- Directed the Release Management calls to synchronize with developers, testers and DBA teams for successful release.
- Automated the deployment and server bounce process by creating the scripts using WebLogic Scripting Tool (WLST).
Environment: Puppet, Vagrant, JAVA, Web logic, Subversion (SVN), ANT, AnthillPro, DB2, Shell Scripts.
Build & Release Engineer
Confidential
Responsibilities:
- Part of a World class team whose primary goal is to implement Build/Release as a practice across the Organization.
- My Responsibilities include Searching, Learning, Training and Documenting on new DevOps tools which would fit in our current Eco-System.
- Have done various POCs to explain and demonstrate the possibility of implementing CI/CD in various projects.
- Managed SVN repositories for branching, merging, and tagging.
- Developed Shell Scripts for automation purpose.
- Resolved merging issues during rebasing and re-integrating branches by conducting meetings with Development Team Leads.
- Installed CI server Jenkins.Managed Jenkins Plugins which integrates our In-house tools with Jenkins. Configured Poll the SCM for new Commits. (SCM- TFS, SVN etc.)
- Build the code using build tools. (Maven, Ant, MSbuild etc.).
- Performed static Code Analysis using SonarQube.
- Designed and implemented automation deployment using to promote major releases, monthly releases, and patches from Development -> Integration/QA -> Staging/UAT -> Production.
Environment: Jenkins, Maven, Ant, MSbuild, UAT, E2E, SCM, Java.
QA Analyst
Confidential
Responsibilities:
- Involved in planning all the testing activities (Test Planning, Test Cases Design, Review, Execution and Reports).
- Planning and execution of Smoke testing, Functional Testing, Regression Testing and Graphical User Interface Testing.
- Good experience in creating, modifying and enhancing both manual and automation test scripts.
- Performed UAT, Pre-Prod testing and Prod testing on real device.
- Interacted with end users to obtain specific system requirements and developed test plans, test cases and test scenarios.
- Managed Web and mobile-based customer account management sites and applications (e.g.: "MyAccount")
- Developed test plans, test cases, test scripts and test reports on multiple projects of varying size.
- Analyzed and made recommendations to improve efficiency and operation related to the project, studies and dashboard.
- Inform the test lead about what all resources will be required for software testing.
- Carried out black box testing every time when changes are made to the code to fix defects.
- Regular interactions with the customers regarding the services provided.
- Preparing presentations for clients and month end reporting.
- Browsing testing on Internet Explorer, Mac Safari, Firefox and chrome.
- Updating project manager regularly about the progress of testing activities.
Environment: Quality Center, SQL, Quick Test Pro, XML, MS Project, MS Office.