Devops Engineer Resume
Greensboro, NC
PROFESSIONAL SUMMARY:
- With 9+ years’ experience as a Build/Release/DevOps engineer in coordinating and managing various product software configurations, implementing Continuous Integration and Continuous Delivery methodologies.
- Strong believer of DevOps Methodologies and working towards a core DevOps engineer position, who can bring an end to end work flow of ContinuousIntegration, ContinuousDelivery and ContinuousDeployment process for an organization.
- Experience with various AWS services like EC2, S3,Glacier, VPC, and Cloud Formation.
- Experience working with all AWSEC2 resources like Volumes, Keypairs, Placement Groups, ElasticIPs, Snapshots, Load balancers and Security Groups.
- Defining EC2 Instance Security Groups, configuring Inbound / Outbound rules and tagging AWSEC2 resources
- Creating AutoScaling groups in AWS from Instance templates and Auto Provisioning based on the Project / Testing team needs.
- Written Chefcookbooks and recipes to Provision Several pre - prod environments consisting of Cassandra DB installations, web logic domain creations and several proprietary middleware installations
- Experience with chef testkitchen, berkshelf and chef spec for unit test cases.
- Worked with chef ohaiplugin, chef handlers, Push jobs and exposure to chef supermarket to leverage the existing cookbooks for quick automation of general deployment and Infrastructure tasks.
- Implemented configuration management and version control on chef cookbooks implementing “Infrastructure as code” methodology to automate build and deployment operations tasks.
- Worked on Docker container snapshots, attaching to a running container, removing images, managing directory structures and managing containers.
- Experience working on several docker components like DockerEngine, Hub, Machine, Compose and DockerRegistry.
- Experience working on dockerhub, creating dockerimages and handling multiple images primarily for middleware installations and domain configurations.
- Administered and maintained Jenkins Master for over 50+ slaves serving more than 20 Project teams and 40+ developers.
- Jenkins Expert with hands on all areas of Jenkins administration, backups, plugins, security, performance and role based user access.
- Expertise in various GITbranching methodologies, merging and tagging to facilitate defect/change management in conjunction within projects across the organization.
- Implemented Gitpre and post commit hooks to perform automated tasks like gerritanalysis against the master and rebasing if necessary and build kick-off via Jenkins.
- Experience with GIT interactive rebasing, stashing and purging.
- Orchestrated release deployments into 40 integrated environments, including system ramp down, deployment, data loads, & ramp up in every system.
- Responsible for build process from creation of testing environments & conversion test migrations up to deployment into production, often tracking multiple releases simultaneously.
- Experience in migrating source code repositories from between various version control systems like SVN to Git, SVN to P4v .
- Managed daily and nightly Integration test builds for Dev Teams sizing up to 15 and ensured the build stabilization for nightly deploys.
TECHNICAL SKILLS:
Operating systems: Linux/unix,Windows,Ubuntu,MacOs
CI Tools: Jenkins, AntHillPro, Team city, Bamboo
Application Servers: Web logic, Apache Tomcat, Jboss
Web Servers: Apache, IIS
Logging: Log stash, Splunk
Infrastructure as Service: AWS, Open Stack
Virtualization Platforms: Vagrant, VirtualBox Configuration Management: Chef, Puppet, Knowledge on Salt Stack
Application Deployment: uDeploy, Rundeck
Build Systems: Maven, Ant, Make, Gradle, NANT
Databases: Oracle, MySQL
Version Control: Git, SVN, Perforce
Scripting Languages: Shell Scripting, Perl, RubyPython Containerization Tools: Docker
WORK EXPERIENCE:
Confidential, Greensboro, NC
DevOps Engineer
Responsibilities:
- Configured & Provisioned AWS EC2 Cloud instances using AMI's like (Linux/Ubuntu) andconfiguring the servers for specified applications using Jenkins.
- Worked with EBS, storage service S3 and performed tasks like buckets creation, folder navigation and property changes and data migration activities.
- Configured IAM services creating new IAM users & groups, defining roles and policies and Identity providers.
- Experience configuring AWS Cloud watch for monitoring of instances during performance testing and also to monitor application performance on QA environments.
- Configured trigger points and alarms in cloud watch based on pre-defined thresholds and log monitoring
- Experience creating Launch configurations and creating auto scaling groups based on launch configurations.
- Written several cookbooks with recipes to perform Automation of middleware Installation and configuration tasks
- Knowledge on chef from the point of bootstrapping nodes to executing run lists to mirror the new nodes to web or application servers and to run deployments against newly added nodes to the clusters.
- Worked with berkshelf dependency manager and test kitchen to validate my cookbooks.
- Maintained over 40+ jobs in Jenkins on 2 masters for a dozen Applications and supporting various Development teams working on 8-10 releases in parallel.
- Planned and Implemented Build Design and deployment Process for newer Applications.
- Orchestrated the CI/CD life cycles for several new & existing Applications.
- Managing Hudson for CI (Continuous Integration) setup.
- Experience building various third party open source tools for internal use .
- Monitor daily builds for any problems .
- Provide build/Make file support for 160+ developers
- Automating processes involved in development/test workflow .
- Writing GIT hook scripts to presenting and enforcing check in template (shell scripts)
- Automating part of the vendor code merge process to reduce the turnaround time (shell)
- Writing SVN hook scripts to enforce check in template (python, shell scripts)
- Automating bug system update with template information with every subversion check in
- Automating build audit and submission process and tracking of audit information and bug updates
- Setting up and maintaining Jenkins for continuous builds for sanity on multiple project trains
- Automating creation of release notes
- Automating source checkout to complete build for developers using scripts
- Setting up multiple automation servers for crash analysis, automated builds, remote team integration server
- Setting up cron/launched jobs for kicking automation scripts
- Architecting complex make system using GNU make and clear make systems with more than 5000 lines of rules & macros .
- Architecting and implementing parallel build system bringing down the build/install time to one third or original time on a single host
- Architecting and implementing multiple platform build and user environment
- Building open source software packages to be used within multiple platform environment
- Release Engineering & Configuration Management (clear case, subversion, GIT, GITlab, cvs)
- Working with various databases e.g. SQLite/javadb/hsqldb/MySQL/oracle databases
Confidential, Atlanta, GA
Infrastructure/Middleware Engineer
Responsibilities:
- Automated update of bug system by setting up Node.js/Express.js web services server to receive GIT post receive hooks.
- Automated baseband sanity test system to restore iOS devices with custom baseband GIT training to developers.
- Train and recommend GIT workflow to developers
- Automated baseband power analysis system saving days of developers time
- Automated baseband crash analysis system for baseband crashes to save hours of developers time
- Automated part of the vendor code merge process to reduce the turnaround time
- Wrote SVN hook scripts to enforce check in template (shell scripts)
- Automated bug system update with template information with every subversion check in
- Automated build audit and submission process and tracking of audit information and bug updates
- Support scon/make based vendor build environment
- Setup Jenkins for continuous builds for sanity on multiple project trains
- Automated creation of release notes
- Automated source checkout to complete build for developers using scripts (python)
- Setup multiple automation servers for audio crash analysis, automated builds, remote team integration server
- Sanity test baseband builds on various distributed development platforms
- Setup special machines in China office which can keep track of activity on those machines for auditing
- Setup cron/launched jobs for kicking automation scripts
- Create utility scripts to boost developer productivity
- Managed environment availability planning across the release schedule and individual project needs.
- Led deployment planning and pre-prod & prod deployments.
Confidential
Java Build Engineer
Responsibilities:
- Worked to custom web solutions for various groups (CGI/Perl).
- Worked on release engineering task.
- Collaborate and work with architect software configuration system (subversion) to be used by a 150+ software group
- Assisted Build team architect to implement a build system for a 150+ software group
- Helped architect solution for CRT(Change Request Template), build notes generation
- Provided creative solutions to multiple architecture support in build system
- Provided creative solutions to run Perl and other tools in multiple architecture environment
- Helped developers resolve gnu make related issues
- Worked on J2EE webapps based on JSFTemplating and Woodstock AJAX components
- Proposed branching strategies for using Version Control Systems like Subversion and P4
- Created branches, performed merges in version control systems SVN and Perforce.
- Managed user authentication and authorization for the users in both Subversion & Perforce
- Created and maintained Ant build.xmls and Maven Pom.xmls for performing the builds.
- Managed Nexus repository for the current project, created a new repository and provisioned it.
- Integrated Code Quality Tools like Cobertura, Find bugs, Check Style, and PMD in the build scripts
- Installed Sonar and managed it as a Code Quality Analysis tool to track the trending.
Confidential
Software Associate
Responsibilities:
- Created Hudson jobs for continuously building the projects. Scheduled Hudson jobs to build upon every checking into subversion. Setup shell script in Hudson jobs to do pre and post build operations.
- Setup automated email notifications on build status for every Hudson build. Installed Hudson agents on client machines and installed all the packages required for doing the builds, for e.g.: Java, Maven etc...
- Done patching to SIT, pre-production, production environments by doing delta (patch) updated builds and patching the package used in SIT, pre-production, production environments and re-starting the servers.
- Staged all the packages on shared server for SIT, pre-production and production environments.
- Configured and setup Maven profiles. Configured Maven user settings in ‘settings.xml’ file for users in their home directory.
- Created Maven POM files to build the Java projects based on their project structure.
- Setup pre-commit hooks to remove checking access to developers in 'tags' folder.
- Rolled back buggy code from production release.
- Updating the svn log properties for revisions. Setting up the svn sync servers, changing the 0th rev properties for svn sync.
- Promoting the changes from trunk revisions to release branch.
