Devops Engineer Resume
Seattle, WA
SUMMARY:
- 8 plus years of experience in Information Technology industry in various roles with excellent experience in Build & Release Management, Configuration Management and Quality Assurance on UNIX, Linux and Windows environment.
- Experience in creating SCM Process, policies, procedures and Release Notes to follow Development and allow QA teams to Release and/or deploy the highest quality product for the enterprise.
- Expertise in Software Development Life Cycle (SDLC), Project Management, Project Release and Configuration Management Plans.
- Good understanding of the principles and best practices of Software Configuration Management (SCM) in Agile, Scrum, and Waterfall methodologies.
- Experience on Version control systems such as Subversion, GIT, CVS, Clear Case, Perforce, TFS and Bitbucket.
- Knowledge on Jenkins, Hudson, Team - city and AnthillPro for continuous integration and for End-to-End automation for all build and deployments.
- Hands on experience using MAVEN, ANT and Gradle as build tools for the building of deployable artifacts (jar &war) from the source and static code analysis using SonarQube.
- Experience in administering and configuring Nexus Repository for Maven builds.
- Expertise in working with different Bug Tracking Tools like JIRA , Clear Quest and Quality center .
- Knowledge on Behavior driven development using Cucumber.
- Experience using DevOps tools like Chef, Puppet and Ansible in provisioning AWS machines.
- Implemented a CD pipeline involving Jenkins, Chef to complete the Automation from commit to Deployment.
- Experience in auto provisioning, deployment to VCloud, VApp VMs for achieving CI/CD via Jenkins, Chef & Bash.
- Experience in monitoring SQL Server for Performance including monitoring memory use and monitoring Physical Disk.
- Experience in setting up Baselines, Branching, Patches, Merging and Automation Processes using Shell/bash Scripts.
- Expertise in JavaScript, UNIX/Linux shell scripting, Windows PowerShell Scripts, Python and Ruby.
- Worked on various Linux environments like Centos, Ubuntu, Red Hat and Solaris.
- Experience in Linux Administration (Installation, Configuration, Tuning and Upgrades of Linux (Red Hat and Oracle).
- Expertise on various components of Chef including chef server, workstations, Nodes, Configuration of chef-client and writing cookbooks and recipes for Chef and assigning roles to nodes.
- Managed Linux and Windows virtual servers on AWS EC2 using Chef Server. Configured and monitored distributed and multi-platform servers using Chef.
- Experience in Implementing AWS solutions using E2C, S3, RDS, EBS, Elastic Load Balancer, Auto scaling groups.
- Experience with container based deployments using Docker, worked with Docker images, Docker Hub and Docker registries.
- Knowledge on many open-source applications and technologies including: OpenStack, MySQL, NGINX, Apache.
- System monitoring with Nagios, Graphite, Zabbix, Cacti etc.
- Knowledge on No SQL Database like Mongo DB, Cassandra.
- Experience in using Tomcat, JBOSS, WebLogic and WebSphere Application servers for deployments.
- Experienced in setup and maintained Load Balancers like F5. TCP/IP fundamentals DNS, FTP, LDAP, Remote Access, Security Management, System Troubleshooting skills, and good knowledge in networking concept including Firewalls.
- Automated Linux production server’s setup using Puppet scripts. Used these scripts to replicate production build environments on a local dev boxes using Vagrant and Virtual Box.
- Excellent analytical, problem solving, and communication skills with the ability to work independently, with little or no supervision, and as a member of a team.
TECHNICAL SKILLS:
Operating Systems: Redhat Linux, Unix, Ubuntu, Centos, Windows, MAC OS and Solaris
Programming Languages: C, JAVA, SQL, HTML, PHP, XML, Bash, Perl and Shell Programming, JSP, Python and Ruby
Version Control System: GIT, SVN, CVS, RTC, source tree, TFS and Perforce
Build Tools: ANT, MAVEN, GRADLE, MS BUILD, Sonarqube
Bug Tracking Tools: JIRA, Clear Quest, Remedy, Quality center and Bugzilla
CI Tools: Jenkins, Hudson, Bamboo, AnthillPro, Cruise Control
Configuration Management Tools: Chef, Ansible, Puppet
Virtualization: Oracle VM, Virtual Box, Vagrant
Web/ Application Server: Tomcat, WebSphere, Apache
Network Protocols: DHCP, DIG, DNS, SNMP, SMTP, Ethernet, IOS, netstat, NFS, NIS, nslookup, RIP, OSPF, BGP, TCP/IP, tcpdump, FTP, TFTP.
Databases: MS-SQL Server, DB2, MongoDB, Cassandra, SQL, PL/SQL RDBMS and MS Access, SSMS
AWS Cloud Services: AWS- Ec2, s3, cloud Front, Dynamo DB, VPC, CloudWatch, IAM, OpsWorks, SNS, SQS, SES, Workspace
Monitoring Tools: Splunk, Nagios, Confluence, AppDynamics, New Relic
PROFESSIONAL EXPERIENCE:
Confidential, Seattle, WA
DevOps Engineer
Responsibilities:
- Designed and deployed AWS Solutions using EC2, S3, EBS, Elastic Load balancer (ELB), auto scaling groups, Cloud Formation, IAM, R53 and Ops Works.
- Leveraged AWS cloud services such as EC2, Auto-scaling and VPC to build secure, highly scalable and flexible systems that handled expected and unexpected load bursts.
- Working on Multiple AWS instances, set the security groups, Elastic Load Balancer and AMIs, auto scaling to design cost effective, fault tolerant and highly available systems.
- Design AWS Cloud Formation templates to create custom sized VPC, subnets, NAT to ensure successful deployment of Web applications and database templates.
- Written Cloud formation templates and deployed AWS resources using it.
- Created alarms and notifications for EC2 instances using CloudWatch.
- Set up and administer DNS system in AWS using Route53.
- Defined branching, labeling and merge strategies for all applications in GIT.
- Integration of Maven/Nexus, Jenkins, Urban Code Deploy with Patterns/Release, Git, Confluence, JIRA and Cloud Foundry.
- Create Jenkins job to build the artifacts using maven, deploy the Terraform templates to create the stack.
- Installed and configured Data Dog, AppDynamics, Nagios, New Relic, Zabbix monitoring tools, while using it for monitoring network services and host resources.
- Worked with development team to migrate Ant scripts to Maven.
- Responsible for automated Scheduled Builds/Emergency Builds and Release using ANT scripts for Enterprise application (J2EE).
- Interacted and coordinated On Shore and Off-Shore teams.
- Used Shell scripts to automate the deployment process.
- Development of Chef recipes using Ruby script through Knife command-line tool to create Chef cookbooks to manage systems configuration.
- Test Chef Cookbook modifications on cloud instances in AWS and using Test Kitchen and Chef Spec.
- Create documentation for Chef best practices to be used by developers as a guide to Chef Automation.
- Build servers in cloud based and physical infrastructure.
- Automated regression testing via selenium and TestNg, for broadening QA coverage.
- Worked on integrating GIT into the continuous Integration (CI) environment along with Jenkins and Subversion.
- Create Roles for deployment of Infrastructure using Opscode Chef.
- Develop Java applications to control Infrastructure and build environments in the cloud autonomously.
- Created Docker images for SOA projects that are developed as microservices.
- Built Spring based Java microservices to support enterprise web application
- Worked closely with development team and SQA team for product releases.
- Installed, Configured, Modified, Tested and deployed applications on Apache Tomcat.
Environment: Java, AWS, EC2, S3, R53, Jira, GIT, SVN, Maven, Jenkins, Chef, IaaS, SaaS, Apache Tomcat, Nginx, Perl, Ruby and PHP.
Confidential, San Francisco, CA
DevOps Engineer
Responsibilities:
- Continuously look to improve the scalability of the build, release, and deployment processes and operation.
- Investigation of issues found in the production environment. Apache Tomcat configuration and support for other teams within IT.
- Integrated Amazon Cloud Watch with Amazon EC2 instances for monitoring the log files, store them and track metrics.
- Created AWS S3 buckets, performed folder management in each bucket, Managed cloud trail logs and objects within each bucket.
- Written Chef cookbooks and recipes to Provision Several pre-prod environments consisting of Deployment automation, AWS EC2 instance mirroring, WebLogic domain creations and several proprietary middleware installations.
- Responsible for completing stories in 2 week sprints. Stories include developing and modifying new and existing environments to support newer versions of Infrastructure stack, and build/deployment management using tools like Chef, Jenkins, Rundeck in windows and Linux platforms.
- Configured the setup of every release biweekly and monthly on the regular basis for product teams to perform integration testing.
- Maintained over 30+ jobs in Jenkins from 6 different Application teams for over 2 releases in parallel.
- Managed daily and nightly Integration test builds for Dev Teams sizing upto 15 and ensured the build stabilization for nightly deploys.
- Generated and Published build and deploy reports in Jenkins for management review.
- Managed and Utilized ALM stack consisting of Jira, Confluence, and Bitbucket across several agile development teams.
- Implementing Jenkins Pipeline as a code, Creating Jenkinsfile using Groovy Script and Pushed to the Bitbucket.
- Created Multibranch pipeline in Jenkins using Jenkinsfile which makes easy way to execute builds after single commit to Bitbucket for specific branch by Developers
- Used Nexus tool to manage the repository in Maven and used the same to share the snapshots and releases of internal projects.
- Worked closely with the development and operations organizations to implement the necessary tools and process to support the automation of builds, deployments, testing and infrastructure (infrastructure as code) using Chef.
- Developed Chef Recipes to configure, deploy and maintain software components of the existing infrastructure.
- Experience with setting up Chef Infra, Bootstrapping nodes, creating and uploading recipes, node convergence in Chef SCM.
- Implemented Chef best practices and introduced Berkshelf and Test Kitchen to facilitate a more natural cookbook development work flow.
- Test, Review and merge Pull Requests in GitHub created by other Chef engineers.
- Managed users, organizations and repositories in GitHub.
- Worked with Build and Release teams to enhance the current process to implement a better software packaging and delivery by automation using Jenkins & chef.
- Good experience with Container Technology Docker and Docker images.
- Performed automation tasks on various Docker components like Docker Hub, Docker Engine, Docker Machine and Docker Registry.
- Creation of container from Docker file, Clustering of Docker.
- Built Docker Container Scaling functionality utilizing custom scripts to analyze metrics and trigger scaling operations.
- Deployed restful web services and micro-services to Dockers.
- Worked on Docker container, Docker compose, Docker Swarm, Kubernetes.
- Created instances(VMs) in AWS with required stack of infrastructure for application teams.
- Provisioned multiple VMs using Chef to install and configure Web and load balancing applications.
- Used Jenkins to run chef on VMs created in AWS cloud.
- Maintain a Live Like environment to test any production issues on the setup and push it into production.
- Used Jenkins, Bamboo to implement Continuous Integration and deployment into Tomcat/WebLogic Application Server.
- Administered 7 Bamboo servers and Jenkins which includes install, upgrade, backup, adding users, creating plans, installing local/remote agent, adding capabilities, performance tuning, troubleshooting issues and maintenance.
- Managed Nodes, Runlists, Roles, Environments, Databags, Cookbooks, Recipes in Chef.
Environment: Apache Ant, Maven, GIT, AWS, Chef, Jenkins, Ruby, Apache JMeter, JBOSS, SonarQube, Bugzilla, Shell and Perl Scripts.
Confidential, Phoenix, AZ
Build & Release Engineer
Responsibilities:
- Release Engineer for a team that involved different development teams & multiple simultaneous software releases.
- Developed and implemented software release management strategies for various applications as per the agile process.
- Build scripts using ANT and MAVEN build tools in Jenkins to move from one environment to other environments.
- Deployed java applications to application servers in agile continuous integration environment and automated the whole process.
- Designed and Developed Jenkins build deployments.
- Managed Sonatype Nexus repositories to download the artifacts (jar, war & ear) during the build.
- Used Shell scripts to automate the deployment process.
- Involved in editing the existing ANT/MAVEN files in case of errors or changes in the project environments.
- Installed and configured GIT.
- Implemented and maintained the branching and build/release strategies utilizing GIT.
- Implemented pre-and post hooks in GIT.
- Used JIRA for change control and ticketing.
- Designed and developed the tools to allow efficient configuration management, build and release of software developed in J2EE, XML and DB2 databases.
- Deployed the build artifacts into environments like QA, UAT and production as per the build life cycle.
- Using Azure Cloud services, performed various web operations in Azure App Service.
- Worked on backup functionality and design using Azure and have knowledge in azure based disaster recovery.
- Automated the build and release management process including monitoring changes between releases.
- Documented the entire build and release process and provided support.
- Developed, maintained and distributed release notes for each scheduled release.
- Provided periodic feedback of status and scheduling issues to the management.
- Kept track of all releases and request of the developers through infrastructure management tool.
- Created Ansible playbooks using YAML scripts for daily JAVA builds and Weblogic domain creation.
Environment: Subversion, GIT, PowerShell, AngularJS, Kubernetes, Shell scripts, Perl scripts, Python, ANT, Agile, MAVEN, .Net, Jenkins, Chef, JIRA, Saltstack, Ruby, Nexus Maven, LINUX, UNIX, Windows XP, Java, AWS, J2EE.
Confidential, Virginia Beach, VA
LINUX/UNIX System Administrator
Responsibilities:
- System administrator responsible for maintaining UNIX/Linux operating systems such as RHEL and Solaris servers.
- Providing production support for multiples applications residing on Linux and UNIX environments. Making sure Zero-Down time for enterprise critical applications by raising outages, escalations whenever necessary.
- Add, remove and resizing Logical volumes using LVM in RHEL and implementing software RAID at installation time.
- Regular disk management, partitioning as per the requirements, creating new file systems or increasing existing ones, managing file systems and adding virtual swap space.
- Performed and reported daily health checks for multiple application servers.
- Experience in installation, configuration and administration of RHEL 6 and Suse10/11 on both private and public clouds.
- Maintenance level upgrades and software administration using RPM installation on Linux.
- Acquiring & Initializing LUNs in clustered environments on Unix Servers.
- Performing O/S and kernel upgrades on Linux servers.
- Raised, handled and closed multiple Change Management and Trouble Management tickets accordingly with Standards.
- Conducted Annual Disaster Recovery exercises for applications on different platforms.
- Define/setup network protocols, Network File Services (NFS), and Network Information Services (NIS) in Linux Environments.
- Creating VM instances using VMware/ESX on Linux and Sun Servers and migrating applications from others servers.
- Configure and Implementation of Samba v3.0 to help printing and file sharing in the mixed environment.
- Monitored several Linux services, processes, web applications and application log monitoring using Nagios.
- Scripting and task automation by Crontab using Bash, and Korn shell scripting.
- Created Bash Shell scripts to monitor system resources and system maintenance and Performed administrative tasks such as System start-up/shutdown, and Backup strategy and scheduled cron jobs for job automation.
- Installed and configured an automated tool puppet that included the installation and configuration of the Puppet master, agent nodes and an admin control workstation.
- Deployed Puppet, Puppet Dashboard, and PuppetDB for configuration management to existing infrastructure.
- Wrote Modules and Manifests manually and used Puppet Forge to download Modules as well.
- Proven ability to automate routine tasks using tools such as Puppet.
- Utilized Puppet to automate single-command provisioning for development and production environments for an operations tools startup (Nodeables).
- Experience with configuring firewalls using Linux. Familiar with configuring advanced features such as NAT, Port Redirection, and Logging.
- Performed host based SAN migration on Standalone and Cluster Linux servers.
- Troubleshoot backup issues, perform manual backups & restore using VERITAS Net Backup.
Environment: RHEL 4.x/5.x/6.x, Solaris 11, HP ProLiant DL-380, DL-580 G6/G7, DL-680 G7/G8, VM-WARE ESX 5.x, VMWARE VCenter, VSphere OVF, Change Management, Nagios, NFS, NTP, Apache Tomcat, puppet, Shell, bash, BMC Remedy 8.1, 8.1.0x, Networking- (LAN, Ethernet, VLAN), SAN / EMC.
Confidential
Software Engineer
Responsibilities:
- Installed and Configured High Availability, Disaster Recovery systems using VERITAS Cluster Server on a two-node cluster for Network file system and MQSeries.
- Installation of patches and package management using RPM and YUM in Red hat Linux.
- Created and modified application related objects, created users, roles and maintained system security.
- Develop framework for System Automation, Design and Automate LDAP security groups and permissions.
- Responsible for setting up cron jobs scripts on production servers.
- Maintained source code repository in subversion.
- Managed builds and wrote Build scripts for Java application.
- Experience with Apache tomcat web servers for application deployment.
- Automated deployment of builds to different environments using Hudson.
- Monitored System Activities like CPU, Memory, Disk and Swap space usage to avoid any performance issues.
- Preparing the Design document by reviewing the Solution Requirement Specifications.
- Working on the Change requests and involved in Construction phase.
- Experience in developing dynamic web based user interfaces using HTML and Java Script.
Environment: Linux, Subversion, Hudson, Ant, Maven, Apache tomcat, MySQL, XML, bash, Shell scripting, Java/J2EE.
Confidential
LINUX/UNIX Administrator
Responsibilities:
- Worked on multiple Linux/UNIX distributions including Ubuntu, CentOS and RHEL.
- Installed, configured and maintained various Linux/UNIX software and applications using the package management systems apt, dpkg, yum, rpm.
- Implemented user management by creating users and groups and assigning permissions to them.
- Controlled the permissions and access to files and directories.
- Performed everyday system monitoring and verified the availability of hardware and server resources for the system.
- Created and maintained documentation for system changes such as new installations and updates.
- Verified the activity logs to ensure the completion of scheduled jobs such as backups.
- Provided 24/7 support through phone, email and remote access control.
Environment: Linux, Unix, Ubuntu 5.10, CentOs5, RHEL servers, MYSQL.