Devops Engineer/aws Cloud Engineer Resume
Kansas City, MO
PROFESSIONAL SUMMARY:
- Over 8+ years of hands on Experience in DevOps, AWS, Build & Release and Configuration Management.
- Certified in "AWS - Certified Solutions Architect- Associate", "AWS - Certified Developer- Associate".
- Actively involved in all stages including proposal, process engineering, design, development, testing, deployment and support of software development lifecycle (SDLC) Methodologies using Agile programming and Waterfall Process.
- Experience in branching, tagging and maintaining the version across the environments using SCM tools like Subversion (SVN), CVS and GIT.
- Excellent understanding of source-code management principles and systems, particularly GIT.
- Extensive experience using MAVEN, ANT as build tools for the building of deployable artifacts from source code.
- Extensively worked on JENKINS for continuous integration and for End to End automation for all build and deployments and writing scripts for CI/Deployment in PERL/SHELL.
- Experience in using Nexus and Artifactory Repository Managers for storing the binaries for Maven and Ant builds.
- Experienced in using Configuration management tools like Puppet/ Chef/Ansible for Deployment on Multiple platforms.
- Experienced in Writing Chef Recipes to automate our build/deployment process and do an overall process improvement to any manual processes
- Integrated into various infrastructure tools, including Amazon Web Services, ANSIBLE, PUPPET, and VMware vSphere Integrated Containers.
- Installed and configured Docker and created images of SOA environment and orchestrated the domains in a Docker container and Used Docker API to deploy and manage environments.
- Experience with Setting up Chef Infrastructure, Chef-repo and Boot strapping chef nodes.
- Worked on Amazon Web Services on EC2, S3 bucket, RDS, EBS, ELB, Auto-Scaling, AMI, IAM through AWS Console and API Integration with Puppet Code.
- Build and configure a virtual data center in the AWS cloud to support Enterprise Data Warehouse hosting including Virtual Private Cloud (VPC), Public and Private Subnets, Security Groups, Route Tables, Elastic Load Balancer.
- Designed highly available, cost effective and fault tolerant systems using multiple EC2 instances, Auto Scaling, Elastic Load Balance and AMIs and Glacier for QA and UAT environments as well as infrastructure servers for GIT and Chef.
- Managing Amazon instances by taking AMIs and performing administration and monitoring of Amazon instances like EC2 using Amazon Cloud Watch.
- Manage Amazon Redshift clusters such as launching the cluster and specifying the node type as well.
- Used Amazon Route53 to manage DNS zones and give public DNS names to elastic load balancers IP's and AWS Beanstalk for deploying and scaling web applications and services developed with Java, PHP, Node.js, Python, Ruby and Docker on familiar servers like Apache.
- Extensive experience in SHELL/PERL/PYTHON/BASH scripting.
- Experience in Configuring, deploying and administering to Application servers WebLogic, JBoss, Apache Tomcat web server, and WebSphere.
- Configured Networking Concepts DNS, NIS, NFS and DHCP, SMTP troubleshooting network problems such as TCP/IP, providing support for users in solving their problems.
- Experience in Installing, upgrading and configuring Red Hat Linux 3.x, 4.x, 5.x, and 6.x using Kickstart Servers and Interactive Installation.
- Experience in open source monitoring, graphing and logging solutions like Nagios.
- Experience in writing bash shell scripts to automate day to day tasks such as backup, synchronization, systems health, monitoring etc.
TECHNICAL SKILLS:
Operating Systems: Windows server, LINUX (RHEL), UNIX, Ubuntu.
Database Servers: SQL Server, MySQL, PostgreSQL, Oracle
Programming Languages: Bash, Shell scripting, Python, Ruby, Java, Groovy, C, AWK, SED
Version Control: GIT, SVN, CVS, GitHub, Code Commit
Build Tools: Apache Ant, Apache Maven, Gradle
CI/CD Tools: Jenkins, Bamboo, Code Deploy, UDeploy
CM Tools: Puppet, Chef, Ansible, Vagrant, OPS Work
Monitoring Tools: Nagios, Splunk, ELK, Amazon Cloud Watch
Application/Web Servers: WebLogic, JBoss, Tomcat
Cloud Services: AWS (EC2, S3, VPC, RDS, Elastic Cache, IAM)
Ticketing Tools: JIRA, BMC Remedy
Web technologies: HTML, CSS, XML, JAVA Script, Servlets, JDBC, JSP, JSON.
Containers: Docker, Kubernetes, EC2 Container Services
Testing Tools: Junit
WORK EXPERIENCE:
DevOps Engineer/AWS Cloud Engineer
Confidential - Kansas City, MO
Responsibilities:
- Part of End-End development of the application in Agile Mode.
- Extensively used Scrum Programming concept which is part of Agile methodologies to plan work for every iteration.
- Used JIRA as an issue tracker tool to collaborate with testers and functional team as well as to track defects and change requests.
- Used Atlassian Confluence to manage and share data between the team members.
- Implemented Microservice Architecture, with Spring Boot-based services interacting through a combination of REST, SOAP and Apache Kafka
- Defined and Implemented CM and Release Management Processes, Policies and Procedures.
- Setup and build AWS infrastructure various resources, VPC EC2, S3, IAM, EBS, Security Group, Auto Scaling, and RDS in Cloud Formation JSON templates .
- Implemented several Continuous Delivery Pipelines for different products using Puppet & Jenkins .
- Designed standards for Cloud Formation as well as Terraform for infrastructure.
- Collaborated with team members to architect a CI/CD pipeline using Terraform in conjunction with Jenkins in AWS.
- Set up build pipelines in Jenkins by using various plugins like Maven plugin, EC2 plugin etc.
- Designed and developed the REST based Microservices using the Spring Boot, Spring Data with JPA
- Used Spring Boot, which is radically faster in building cloud Micro services and develop Spring based application with very less configuration
- Used SOAP based Web services and RESTful Web services for transferring data between applications
- Experienced best practices for integrating microservices into an existing system architecture
- Built and Implemented collaborative development environment using GIT, GitHub and Integrated it with Jenkins.
- Set up Jenkins master and added the necessary plugins and adding more slaves to support scalability and agility.
- Responsible for ensuring Continuous Delivery/Continuous Integration across all environments from UAT/TEST to Pre-Production and Production using Jenkins.
- Configured and worked on static code quality and coverage tools like SonarQube.
- Onboard numerous applications into SonarQube and help maintain the SonarQube installation.
- Installed SonarQube as a Docker container on AWS EC2 and Integrated it with Jenkins.
- Designed AWS Cloud Formation templates to create custom sized VPC, subnets, NAT to ensure successful deployment of Web applications and database templates.
- Created custom monitors, alarms and notifications for EC2 hosts using Cloud Watch .
- Created and updated puppet manifests and modules, files, and packages stored in the Git repository.
- Configured and administered GitHub Enterprise in AWS with High Availability(HA) enabled and handled Migrations from Subversion GitLab to GitHub.
- Working experience of installing Chef server and managing multiple nodes using Chef.
- Developed Chef Cookbooks and Recipes to manage system configuration.
- Worked in setting up Chef Infrastructure, Chef Repo and Chef nodes.
- Installed Chef Server Enterprise on premise/workstation/bootstrapped the nodes using knife and automated by testing Chef recipes/cookbooks with test-kitchen/chef spec.
- Developed Chef Cookbooks to manage system configuration and for Tomcat, MySQL, Windows applications and versioned them on GIT repositories and Chef Server.
- Written Chef Cookbooks for various DB configurations to modularize & optimize product configuration.
- Maintained branches/forks in GitHub version control for the changes made in cookbooks as per release
- Implemented Chef Recipes for Deployment of build on internal Data Centre Servers and re-used and modified same Chef Recipes to create a Deployment directly into Amazon EC2 instances.
- Automated the cloud deployments using chef, python (boto & fabric) and AWS Cloud Formation Templates.
- Extensively used Docker for virtualization, Ship, Run and Deploy the application securely to fasten Build/Release Engineering.
- Worked on Docker and Vagrant for different infrastructure setup and testing of code.
- Evaluated Kubernetes for Docker container orchestration.
- Collaborated in the automation of AWS infrastructure via terraform and Jenkins - software and services configuration via chef cookbooks.
- Created private cloud using Kubernetes that supports DEV, TEST, and PROD environments.
- Managed Kubernetes charts using Helm. Created reproducible builds of the Kubernetes applications, managed Kubernetes manifest files and managed releases of Helm packages.
- Experience with building containerized applications using Docker images.
- Integrated JIRA and Subversion using Pre-commit hooks to ensure the process is followed and automated JIRA tasks using JIRA CLI.
Environment: Github, Chef, Jenkins, Tomcat, Apache, Python, Maven, Nexus, Linux, Docker, Vagrant, Kubernetes, AWS EC2, AWS SQS, AWS S3, AWS RDS, AWS Cloud Watch, SonarQube
DevOps Engineer/AWS Cloud Engineer
Confidential - Mount Laurel, NJ
Responsibilities:
- Involved in designing and deploying multitude applications utilizing almost all the AWS stack (Including EC2, Route53, S3, RDS, Dynamo DB, SNS, SQS, IAM) focusing on high-availability, fault tolerance, and Auto-Scaling in AWS Cloud Formation.
- Designed high availability environment for Application servers and database servers on EC2 by using ELB and Auto-scaling.
- Designed and developed the REST based Microservices using the Spring Boot
- Involved in Building RESTful API's to communicate over internet via JSON to get the required information based on the requirement with help of Spring Core container to implement IOC concept to avoid tight coupling.
- Developed java modules implementing business rules and workflows using Spring Boot
- Analyze defects in production environment and provide necessary fixes
- Implemented SOA architecture with Web Services using SOAP, WSDL and XML to integrate other legacy systems.
- Involves in Sprint planning for the estimation of efforts for user stories and bugs
- Experience in CI (Continuous Integration) and CD (Continuous Deployment) methodologies.
- Wrote puppet manifests for automated uDeploy agent installs/updates, uDeploy agent relays install/update and configuring the same with the uDeploy server.
- Moved 72 web services and related application to uDeploy and maintained them across 5 environments Develop, QA, UAT, Pre-Prod and Prod.
- Developed strategies, and contracts for validation of deployments and automated rollbacks in uDeploy. managed and administered our SVN repositories and Confluence installations.
- Implemented Subversion (SVN) branching and merging operations for Java Source Code.
- Provide support to developers in using SVN code management.
- Used monitoring tools like Splunk and Nagios to keep track of complete AWS and on-premise servers.
- Configures S3 versioning and lifecycle policies to backup files and archive files in Glacier.
- Created and monitored alarms and notifications for EC2 hosts using Cloud Watch.
- Worked on AWS for deploying EC2 instances of various flavors RHEL, CentOS, Ubuntu in both Linux and Windows.
- Used MySQL, Dynamo DB and Elastic cache to perform basic database administration.
- Used AWS Lambda to run servers without managing them and to trigger to run code by S3 and SNS.
- Working with Puppet as Configuration management tool, to automate repetitive tasks, quickly deploys critical applications, and proactively manage changes.
- Deployed Puppet, Puppet dashboard for configuration management to existing infrastructure.
- Developed puppet manifests for different application and web servers like Apache, Tomcat, WebSphere and WebLogic applications.
- Used Puppet to manage Web Applications, Config Files, Data Base, Commands, Users Mount Points, and Packages.
- Applied OS patching, fixing bugs, by writing shell scripts, create puppet manifest and apply it.
- Responsible for automating and improving infrastructure, using Puppet for configuration.
- Used Docker for building JAVA Applications.
- Implemented a production ready, load balanced, highly available, fault tolerant Kubernetes infrastructure.
- Scheduled, deployed and managed container replicas onto a node cluster using Kubernetes .
- Managed local deployments in Kubernetes, creating local cluster and deploying application containers.
- Container management using Docker by writing Docker files and set up the automated build on Docker HUB and installed and configured Kubernetes.
- Utilize Jira for issue reporting, status, and activity planning.
Environment: AWS stack (Including EC2, Route53, S3, RDS, Dynamo DB, SNS, SQS, IAM), Puppet, RHEL, Linux, Python, Splunk, Nagios, SVN, uDeploy, Docker, Maven, Shell Scripts, Jira
DevOps/ Build & Release Engineer
Confidential - Fairfax, VA
Responsibilities:
- Supported engineering plans and schedules by providing CM/Release Engineering services to build, deploy, develop scripts, oversee branch and merge strategies, and build automated tools as necessary to offer services to team.
- Developed and implemented Software Release Management strategies for various applications as per the Agile process.
- Developed REST based Microservices using Spring Boot
- Developed RESTful web services by identifying and leveraging existing SOAP Web services using Spring Boot
- Connected continuous integration system with GIT version control repository and continually build as the check-in's come from the developer.
- Maintained and administered Git source code tool and created Branches, Labels and performed Merges in Git.
- Maintenance of source code in TFS 2013 and GIT; Branching, Creating LABELS, merging of codes on TFS 2013 and GIT for QA testing and release.
- Installed and configured Jenkins for Automating Deployments and wrote Python and Shell scripting for automating tasks.
- Integrated Git into Jenkins to automate the code check-out process.
- Developed build and deployment scripts using Ant and Maven as build tools in Jenkins to move from one environment to other environments.
- Created Maven POMs to automate the build process for the new projects and integrated them with third party tools like Sonar, Nexus.
- Integrated Eclipse with Selenium Server for doing the automated Smoke testing of the application standalone URL's related to deployed package after the build and deployment process.
- Helping developers and Business analysts to create migration docs and tickets in Remedy6 and Remedy7 .
- Once ticket is created in Remedy and comes in QA/UAT/Production phase, migrate the code in respective environments.
- Communicating with Dev/BA and troubleshoot it in case any issue occurs.
- Working on Live production releases. Modules that I worked on mainly involve communicating with different teams including- Project managers, developers, DBAs, QA team, system administrators.
- Code deployment via Admin Console (Web sphere/Web logic).
- Wrote Ansible Playbooks with Python SSH as the Wrapper to Manage Configurations of AWS Nodes and Test Playbooks on AWS instances using Python.
- Proficient in installing, upgrading, patches, migration and configuring Red Hat Linux 3.x,4.x,5.x and 6.x by using kick start servers and interactive installation.
- Deployed microservices to Ansible Playbook in Docker containers, managed by Mesos/Marathon.
- Wrote the Ansible playbooks which is the entry point for Ansible provisioning, where the automation is defined through tasks using YAML format.
- Managed Ansible Playbooks with Ansible roles. Used file module in Ansible playbook to copy and remove files on remote systems.
Environment: Jenkins, JIRA, Maven, GIT, ANT, Python, AWS, Eclipse, Smoke testing, Selenium, Ansible, Shell Scripting, Subversion, Remedy6 and Remedy7.
Build & Release Engineer
Confidential - Madison, WI
Responsibilities:
- As member of Release Engineering group, redefined processes and implemented tools for software builds, patch creation, source control, and release tracking and reporting on Linux platform.
- Working with the business analysts to review the requirements and preparing technical specifications document.
- Developed web based user interface using Struts, JSP, JavaScript, AJAX technologies
- Developed forms validation using JavaScript and used Struts validator mechanism for server-side validations.
- Designed and implemented Subversion and GIT metadata including elements, labels, attributes, triggers and hyperlinks
- Led Jenkins continuous integration server installation and configuration for all GIT Repositories.
- Responsible for versioning the source code, releasing binary files, release files, creating and applying labels on source files.
- Created analytical matrices reports, dashboards for release services based on JIRA tickets.
- Developed Perl and shell scripts for automation of the build and release process.
- Implemented Gerrit Code review tool and integrated it with Hudson to trigger builds once the commit is being uploaded to Gerrit dashboard.
- Defined instances in code, next to relevant configuration on what running and then created the instances via Puppet .
- Configured multiple Windows and Linux Slaves for Jenkins Master to distribute the load across all the machines.
- Configured Jenkins to implement nightly builds on daily basis and generated change log that includes changes happened from last 24 hours.
- Good experience writing Manifests, Modules using Industry Best Practices for both Deployment Automation and Infra Configuration Management.
- Maintained Nexus for storing artifacts and for searching the dependencies of a project based on GAV coordinates.
- Configured Nexus repository manager for managing the MAVEN artifacts and Implemented JIRA tool for project tracking and work flow control.
- Peer Reviewing Puppet Code and providing advice.
- Testing modules with respect-puppet before uploading to puppet server.
- Practical/hand-on knowledge on using Mcollective, Hiera in conjunction with puppet modules.
- Practical understanding and experience in scaling puppet with 100’s of agents and few puppet servers.
- Used Gradle and MAVEN as build tools on Java projects for the development of build artifacts on the source code.
- Introduced, Installed and Configured Team City for Continuous Integration.
- Worked on sprint backlog and product backlog to implement system setup, user logging activity, database design and implementation, GUI development.
- Updating the SVN log properties for revisions. Setting up the SVN synchronizes servers, changed rev properties for SVN sync.
- Used JQuery to display slide show of available items, display data table with column sorting.
- Configured application server to create the data source for database connection pool.
- Designed and developed XML presentation using CSS & XSLT.
- Created Web Service implementation class and deployed to web application server.
Environment: GIT, Maven, Puppet, Tomcat, JIRA, Nexus, Python, Shell Scripting, MySQL, Jenkins & Hudson, Java 5.0, Git, Servlets 2.4, JSP 1.2, JSF, Gradle, SVN, Hibernate 3.0, XML, JSON .
Linux Administrator
Confidential
Responsibilities:
- As a member of Linux Admin group responsible for Installation, maintenance, Administration and troubleshooting of Red Hat Enterprise Linux 4/5 systems.
- Installed VMware hypervisor on top of the Windows operating system and created several virtual machines.
- Managed VMware Infrastructure/vSphere5 clusters on Test/Development environments.
- Provided 24x7 System Administration support for RedHat Linux 3.x, 4.x servers and resolved trouble tickets on shift rotation basis.
- Provided the support of building the server, patching, user administration tasks, deployment, software installation, performance tuning and troubleshooting.
- Performed OS upgrades and Patch loading as and when required and Backed up and restoring files across the network.
- Wrote Technical documentation for various projects and Monitored overall system performance, performed user management, system updates and disk & storage management.
- Disk Management like adding, deleting, and replacing of hot swappable drives on existing servers, partitioning per requirement, creating new file systems.
- Established and maintained user accounts, assigned file permissions and established password and account policies.
- Managed systems routine backup, scheduling jobs, enabling cron jobs, enabling system logging and network logging of servers for maintenance.
- Setup a couple of hundred VM's running CentOS to be used for web, database, application, mail, ftp, monitoring and GIT repositories.
- Provided 24/7 technical support to Production and development environments.
- Created and maintained user's accounts, profiles, security, rights disk space and process monitoring.
- Provided technical support by troubleshooting Day-to-Day issues with various Servers on different platforms.
- Utilizing SAR, Netstat, Iostat (input/output statistics) and Vmstat for performance analysis, tuning and capacity planning, problem prevention, detection, and resolution.
- Administers VMware Infrastructure Client 3.5 and vSphere 5.5 .
Environment: Linux, Iostat, Vmstat, JDK 1.5,1.6, VMware Virtual Client 3.5, VMware Infrastructure, Red Hat Linux and Solaris, SAR, Netstat, CentOS .
Linux Administrator
Confidential
Responsibilities:
- Assisted senior-level administrator in various aspects of Linux (RedHat) server administration including installing and maintaining the operating system software, performance monitoring, problem analysis and resolution and production support.
- Performed RPM and YUM package installations, patch and server management.
- User/ File management; Adding, removing and giving access rights to users on a server.
- Changing permissions, ownership of files and directories, and assigning special privileges to selected users and scheduling system related cron jobs.
- Installed and configured Red Hat Linux Kickstart and Solaris jumpstart Servers .
- Installed and configured Logical Volume Manager - LVM and RAID .
- Installation of SSH and configuring of keys base authentication.
- Installation and configuration of MySQL and Apache.
- Software and hardware upgrades and routine systems maintenance by installing current Patches and Packages.
- Performed backup/restore operations using tar, and Gzip.
- Configured and administrated DNS, NFS, FTP, remote access, and security management.
- Documented all setup procedures and System Related Policies (SOP's).
- Develop and Maintain documents, library and procedural documents of the system.
- Management of user accounts, files and directory permissions, and securing UNIX systems to match industry best practices.
- Provides system administrative support for servers and workstations.
Environment: Linux, DNS, NFS, FTP, MYSQL, Apache, Netstat, LVM, RAID, Red Hat Linux, Solaris.