Cloud Infrastructure Engineer Resume
Pleasanton, CA
SUMMARY:
- Automated deployment of public, private, and hybrid computing resources for products and services to development, test, staging and production.
- Advanced experience using Puppet to automate provisioning of server infrastructure and software environments.
- Developed Puppet Modules to provision application stacks composed of Ruby on Rails, NodeJS, Apache, Tomcat, Java, MongoDB, Redis, Elastic Search, Hadoop, Postgres and MySQL. Performed module testing with Puppet Rspec and ServerSpec.
- Intermediate experience using Ansible to automate provisioning of application infrastructure and environments.
- Collaborated with internal and external teams of 25+ engineers following Agile Model with emphasis on Test Driven Development. Enforced coding and testing standards to ensure code is compliant for build pipeline continuous integration.
- Worked closely with teams to enhance source control processes and manage build artifacts hosted in Gitlab, Github, Atlassian Stash, Artifactory and Sonatype Nexus. Resolved code merge issues using branching, merging, tagging, rebasing and cherry picked commits.
- Developed custom puppet modules to deploy Splunk Enterprise Master, Search and Indexer servers with LDAP integration. Designed custom Puppet modules to install and manage Nagiosxi and Rabbitmq services.
- Built end to end CI/CD Pipelines in Jenkins to retrieve code, compile applications, perform tests and push build artifacts to Artifactory and Nexus. Created job chains with Jenkins Job Builder, Parameterized Triggers, and target host deployments. Utilized many Jenkins plugins and Jenkins API.
- Implemented Jenkins Workflow and Plugins for repeatable deployments of multi - tier applications, artifacts and services to Docker, VSphere, Fusion,, Rackspace, IBM Softlayer, IBM Bluemix, Red Hat OpenShift, OpenStack, Confidential Azure, Google Cloud and AWS. Dockerized Jenkins Master + Worker nodes to scale build infrastructure on demand.
- Automated Rails and Node web application deployment with custom Capistrano scripts to install system libraries, gems, node packages, migrate database schemas, link resources and launch applications via pm2.
- Automated UI Testing, Unit, Functional and Integration Tests using RSpec, Selenium and Watir. Automated load testing with Siege and Apache A/B, and JMeter. Automated deployment of test results, release notes to JIRA and Confluence. Automated build notifications and build commands with Jabber based chat and Hubot scripts.
- Deployed Docker containers to CoreOS clusters (virtual and bare metal). Orchestrated running containers using Fleet control files and built custom service registry using Etcd for distributed applications. Experience deploying containers with Red Hat Atomic.
- Created custom Dockerfiles. Deployed Docker Registry and secured communication between containers. Built custom scripts in Ruby for service discovery, auto scaling, load balancing and monitoring with CAdvisor and Riemann. Deployed Docker clusters to Kubernetes and Mesos.
- Created self service end points for developers via Marathon, Consul, Etcd APIs and created Ansible playbooks for developers to build and deploy application containers. Utilized toolset including Registry, Compose, Swarm, Machine. Jenkins automation for daily container builds.
- Trained and embedded with developers to create and maintain local and shared development environments using Vagrant, VirtualBox and VMWare. Emphasis on Bash and Ruby scripting to automate and customize environment virtual hardware, networking and system libraries for applications and microservices. Customized puppet scripts to perform further provisioning for entire stack. Built latest virtual server images with Packer
- Utilized platform APIs to attach data services including MongoDB and Cloudant, Load Balancing, DevOps Pipeline, Monitoring and performed data migrations and backups including . Deployed Cloudfoundry PAAS to lab environments and customized build packs to meet application needs.Installed, configured and deployed VSphere ESX server on top of bare metal Cisco UCS servers. Allocated data store resources, configured networking and virtual switches. Utilized ESX CLI to customize machine images, patch ESX and provision virtual machines.
- Utilized IBM Softlayer API and CLI to deploy virtual infrastructure inside IBM Softlayer. Automated DNS Management, machine images, snapshots, monitoring and alerting. Created custom machine templates.
- Utilized Rackspace API to deploy and manage virtual machines and application stacks in the Rackspace IAAS cloud. Deployed applications to Red Hat Openshift 3 PAAS. Utilized API to customize full stack applications and related resources.
- Coded scripts in Ruby and Bash to build highly available platforms deploying core products and services.
- Used AWS SDK and AWS CLI to automate EC2 product deployments. Built custom scripts, workers and clients to manipulate Amazon EC2, S3, ELB, Route 53, VPC, SQS, SNS and Cloudwatch resources to create pods of redundant applications.
- Scripted Elastic IPs, VPC and Internet Gateways across networks of public and private subnets. Set ACLs on subnets to further secure access between applications and services.
- Automated IAM users, groups, roles and policies to manage authentication, authorization and privileges across AWS services.
- Built application deployment PAAS templates using Elastic Beanstalk.
- Manipulated datastores in RDS, Dynamo and Redshift and performed data migrations, replicas, automated backups and data restores.
- Utilized Cloudwatch + SNS + Automation to monitor application health and scale up / down based on real time streaming data, SLAs, and infrastructure node utilization. Migrated volumes and databases between availability zones and regions.
- Deployed redundant architecture with Autoscale, Elastic Load Balancer, and Route 53.
- Managed object storage in S3 with Access and Policies. Archived data to Glacier.
- Deployed and managed Docker environments in production. Coded monitoring and notification services using Riemann, CAdvisor, InfluxDB and Grafana. Monitoring As A Service with Datadog and NewRelic. Built Docker Container Scaling functionality utilizing custom scripts to analyze metrics and trigger scaling operations. Automate monitoring, change management and incident response. Monitor site stability and performance and troubleshoot site issues.
- Monitored, diagnosed and performed end to end debugging of complex applications, network protocols, server nodes and application stacks. Deployed and managed many monitoring tools including NagiosXI, Sensu, Zenoss, Zabbix, M/Monit, New Relic, and Datadog.
- Instrumentation of API performance (hits, response time, load balancing, caching). Syslogger to collect and aggregate log data across application pods and integrated with Splunk and Kibana for trending API performance over time.
- Expert NagiosXI experience. Built custom RPMs for installing NagiosXI resolving various o/s installation issues. Integrated monitoring with LDAP, HTTPS, and PagerDuty. Deployed SNMP, Nagios plugins and coded scripts to monitor F5 Load Balancers and other hardware Deployed Standby NagiosXI servers and scheduled backup / restores every 15 minutes..
- Coded Puppet modules to manage the installation and provisioning of NagiosXI and NRPE across application pods. Exported custom facts and resources from puppet managed nodes. Aggregated facts on NagiosXI Master to generate custom monitoring catalogs for different application, database and infrastructure services.
- Good experience with routing and switching, network protocols, and application security.
- Deployed and configured monitors, tools, alarms and notifications in support of global, 24 x 7 production environments. Automated JIRA to request, implement, verify and report changes. Tickets also provided historical detail for internal knowledgebase.
- Collated application, API, Load Balancer, System and Database logs into Splunk, LogStash and Graylog to troubleshoot application performance, identify bottlenecks and diagnose and optimize database performance issues. Created Custom enterprise dashboards with real-time and historical events monitoring and reporting in Grafana, Kibana and Dashing to identify trends.
- Designed and replayed high availability, proof of concept and stress tests. Diagnosed scaling and performance issues. Stress and Replay Testing with JMeter, Apache A/B, Siege to find issues in pre-production environments.
- Automated deployment and administration of Red Hat, Centos, Oracle Linux and CoreOS. Deployed Puppet, Ansible and Jenkins for configuration and change management, monitoring, and trending.
- Deployed, configured and administered 500+ Linux servers in physical, virtual and cloud production environments.
- Automated getting the operating system onto physical and virtual servers using PXE, TFTP and Cobbler. Automated repetitive admin tasks including logging, monitoring, log rotation, and backups. Built custom RPMs, mirrored YUM and application repos.
- Linux admin tasks creating users, setting up NFS Volumes, managing disk resources, setting up and expanding RAID volumes and managing permissions. Installed and managed SSH keys and sudo privileges. Hardened Linux Systems with SELinux, IPTables, XInetd, non-privileged accounts, immutable log files, and syslog monitoring.
- Proficient with network based services including DNS, DHCP, Syslog, NTP, SSH. Utilized Netstat, Dig, TraceRoute, Port Forwarding, Nmap, SSH Tunneling, iPerf, and Rsync. Managed SSL Certificates. Load Balancing with HAProxy for HTTP, FTP, url content inspection, and read vs write endpoints. Managed Squid proxy and caching server to speed up downloads and optimize internet bandwidth usage.
- Lengthy experience coding API applications using Ruby, Rails, and JSON to build backend modules including inventory, metrics, rules, events, profiles, and search. Emphasis on reuseable code and libraries (services, factories, models, delegates, and controllers). Expert experience architecting and coding REST APIs including endpoints, actions, services, error messages, and documentation for command and control tools.
- Consistent use of SCRUM methodology. Followed best practices and Test Driven Development with unit tests in RSpec and Minitest and UI tests in Selenium, Capybara and Watir. Profile, benchmark and tune application performance to ensure solution scales in diverse environments under load.
- Expertise with PostgreSQL and MySQL database applications optimizing queries and application logic using relational and JSON data structures. Pool database connections, monitor slow queries, recommend indexes, perform replication, and partition read/write queries. Solved performance issues created when determining relationships amongst large data sets.
- Coding experience with NoSQL databases including MongoDB, Elastic Search, Redis, Riak, CouchDB and Memached clusters.
- Working experience coding against RabbitMQ and ActiveMQ message queues to schedule, dequeue and process tasks and scale applications.
TECHNICAL SKILLS:
Devops (7 years): CI/CD, Puppet, Ansible, Jenkins + Plugins, Artifactory, Sonatype Nexus, Git, Stash, Github, Gitlab Maven, Ant, JIRA, Siege, Apache A/B, JMeter, Automated Integration Testing, Selenium, Watir, RSpec, Kibana, Grafana
AWS (5 years): EC2, S3, IAM, ELB, VPC, Cloudwatch, CloudFormation, Beanstalk, EMR, RDS, DynamoDB, Route 53, SQS, SES, SNS, Autoscale
Docker (2 years): Compose, Swarm, Machine, Registry, Kitematic, Tutum, CoreOS, Fleet, Etcd
Linux (7 years): RHEL, Centos, OEL, BASH, LDAP, DNS, DHCP, Squid, NFS, LVM, IMAP, SSL, SELinux, RAID, SNMP, Syslog
Monitoring (7 years): NagiosXI, Sysdig, Riemann, Zenoss, Zabbix, Sensu, Splunk, Logstash, Graylog, SignalFX, DataDog, New Relic, Sumologic
Networking (3 years): Cisco Routing + Switching, VLANs, NMap, Wireshark
IAAS (7 years): AWS, Confidential Azure, Google Cloud, Rightscale, Openstack, Rackspace, Softlayer, Digital Ocean, Media TemplePAAS (2 years): IBM Bluemix, Red Hat Openshift, Centurylink AppFog, HP Helion
Web / App Servers (10 years): Apache, Nginx, HAproxy, Tomcat
Security (7 years): IPTables, TCPWrappers, OpenVAS, OpenVPN, Snort, Nessus, Kali, Fail2Ban, BlackArch, SSL + Hardening
Virtualization (7 years): Vagrant, Packer, VMware ESX, Vmware VSphere, VMWare Fusion, Oracle Virtualbox
Developer (7 years): Ruby, Rails, Gems, Java, REST APIs, JSON, Scripting
Relational Databases (11 years): Postgres, Mysql, MariaDB
NoSQL Databases (4 years): MongoDB, ElasticSearch, Neo4J InfluxDB, Redis, CouchDB, Cloudant
PROFESSIONAL EXPERIENCE:
Confidential, Pleasanton, CA
Cloud Infrastructure Engineer
Responsibilities:
- Deployed Applications, Databases and CI/CD pipeline to IBM Bluemix PAAS and IBM Softlayer IAAS.
- Dockerized build pipeline of Jenkins Masters + Workers and Workflow for internal VSphere, Docker and Cloud IAAS + PAAS deployment.
Confidential, Boston, MA
Senior Puppet Engineer
Responsibilities:
- Senior Puppet engineer implementing puppetized NagiosXI and Splunk modules for Monitoring As A Service across application components including web application servers, Percona databases, SNMP monitored network equipment and other software platform components.
- Collaborated with Techops team to implement bare-metal and cloud virtualized server pod deployment, configuration and provisioning.
Confidential, Cupertino, CA
Senior DevOps Engineer
Responsibilities:
- DevOps lead for internal Ruby / Rails Apps, Node JS Apps, Postgres, Redis, Riak, MySQL Databases and Linux System infrastructure
- Built CI pipeline to automatically test all code commits and CD pipeline for developers to ship code to production. This significantly improved development velocity and reduced testing and project turn around time.
Confidential, San Francisco, CA
Senior Devops Engineer
Responsibilities:
- Coded, deployed and maintained Ruby REST APIs and secure Linux server Infrastructure for Enterprise IOS applications.
- Deployed and supported development, test, staging and production environments and repositories for local and remote IOS dev teams.
Confidential, Washington, DC
Senior iOS Developer
Responsibilities:
- Coded iOS application features for “Washington DC Going Out Guide” in Objective C.
Confidential, Palo Alto, CA
Senior Java Developer / Linux Administrator / MySQL DBA
Responsibilities:
- As lead developer coded hundreds of Java classes running in Tomcat and MySQL to implement web based iTunes analysis library.
- Optimized database and application code to solved performance issues created when determining relationships amongst large data sets.
Confidential, Mountain View, CA
Senior ASP.NET Web Developer / Confidential SQL Server DBA
Responsibilities:
- Developed web modules for highly customized marketing surveys, import/export of customer data and generation of reports.
- Technical lead responsible for deploying and maintaining application infrastructure, primary / replica databases and production data center servers.
Confidential, Redmond, WA
ASP Web Developer
Responsibilities:
- Designed and Implemented multiple features for global Confidential Press web platform to purchase and ship Confidential publications.
- Worked closely with Project Management and QA team through a tight schedule of feature development and rapid releases.