- 5 + years of experience working on web applications and web infrastructure with a bit of a diverse job history in frontend/backend development, system administration and Devops. I can help everywhere in the stack and I love wearing multiple hats to an extent. Although, I do think my strongest skills and interests are in Backend Development and DevOps/Site Reliability Engineering.
- In my next role, I would like to continue building on my experience, productionize backend systems, and streamline the experience of web deployment.
- Holistic understanding and demonstrated experience to develop, operate, secure and defend web applications hosted in the cloud.
- Responsible for maintaining and establishing Service Level Indicators (SLI) & Service Level Objectives (SLO) and Error Budgets for running systems and making sure they are met.
- Successfully collected SLIs across load balancer, application servers, database servers and other utilities.
- Eliminated toil using Terraform, Ansible and Bash tools on demand or whenever possible, significantly reduced time to software delivery cycle.
- Gained visibility into application performance and uptime through monitoring & alerting on leading indicators using tools such Prometheus, Grafana, and Nagios.
- Increased collaboration across cross - functional teams.
- Familiar with production postmortems/Incident Response and documenting Root Cause Analysis (RCA) of the incident.
- Used Error budgets to take calculated risks on change management in conjunction with SLIs & SLOs.
- Experience working with a broad range of AWS cloud services like Autoscaling, EC2, ELB, EBS, VPC, Cloud formation, Security Groups, Network Access Control Lists (NACL), Route53, RDS, S3, IAM, and Cloud Watch.
- Experience in setting up Kubernetes(k8s) cluster for supporting microservice workloads using kops and kubeadm.
- Made deployments easier by building software delivery pipelines using Jenkins and GitHub Actions, mixed with Ansible playbooks, Docker, Git, and Bash.
- Support rolling upgrades to applications in productions as part of team effort using Blue/Green and Canary deployment strategies offered through Spinnaker.
Build/Automation tools: Git, Jenkins, Travis CI
Cloud Platforms: AWS, Digital Ocean
Container/Orchestration: Docker, Docker Swarm, Kubernetes, Helm charts, Istio, Envoy, Spinnaker
CM tools: Terraform, CloudFormation, Ansible
Artifactory & Repository tools: JFrog, GitHub, Bitbucket
Monitoring tools: Prometheus, Nagios, Grafana, CloudWatch, CloudTrail
Databases/Caching: MySQL, Postgres, MongoDB, DynamoDB, Memcached
Middleware: RabbitMQ, Kafka
Web/App Servers: Apache Tomcat, Jetty, Nginx, HAproxy, Apache httpd, Squid, Varnish
Languages: Bash, Python, YAML, Node.js, SQL, Java 8
Web Frameworks: Spring Boot MVC, Express.js, Flask
Test Frameworks: SonarQube, Maven, NPM, Make, Junit, Mochai, Chai, Selenium, Postman
Libraries: JPA, Hibernate, Sequelize, Mongoose, SQLAlchemy
Project Management: JIRA, Trello
IDE’s: IntelliJ Idea, Vim editor
Confidential, Hillsboro, OR
- Involved in design, implementation of asynchronous/serverless digital services using AWS API Gateway, AWS SQS, AWS Lambda functions and EC2 Auto Scaling Group (ASG).
- Applied trunk-based development as git branching strategy for repository management.
- Achieved cost reduction and higher efficiency of operation compared to previous design using services such as CloudWatch events and combination of EC2 spot and on-demand instances.
- Complied with security principles of least privilege by enabling CloudTrail and thereby crafted custom IAM user policies and service roles.
- Enhanced underlying WordPress architecture from a single node EC2 to using Auto Scaling Group (ASG), EFS, ALB, and Route 53.
- Used Launch templates to configure ASG with ansible playbooks injected through cloud in it scripts.
- Leveraged terraform plan to provision infrastructure for staging and production environments reducing manual efforts by 90%.
- Configured multi AZ active-passive AWS RDS instance in the database tier to be used with WordPress ASG.
- Enabled RDS automatic backups for point in time recovery on passive node and thereafter manual snapshots to S3 triggered by custom script.
- Formulated plan to use blue green deployment to achieve zero downtime and perform smooth upgrades.
- Integrated jetpack and google analytics to measure effectiveness of the website.
- Ingested WordPress logs into CloudWatch logs, setup billing alarms integrated with SNS for notification.
- Setup and configure SSL/TLS connection to ALB using AWS certificate manager.
- Helped augment and answer technical questions related to designing cost-effective, fault tolerant and highly available architectures for diverse range of problems in AWS.
Environment: Linux, Git, AWS S3, AWS Lambda, IAM, AWS EC2, API Gateway, Python, Terraform, Ansible, Make
Confidential, Charlotte, NC
Backend Engineer/Devops Engineer
- Build Docker images from individual producer/consumer scripts, minimized image size upto 60% using alpine and multi-stage builds.
- Used Kafka as a write ahead append log to coordinate events across a chain of components, formulated implementations in Java, Python, and Node.js.
- Rate limiting/Scheduler to politely scrape web pages without exhausting data endpoints.
- Uses Shingling algorithms such as Minhash & Simhashes to track near-duplicate web pages, proposes Locality Sensitive Hashing (LSH) to improve runtime complexity of comparisons.
- Explored the use of a consistent hashing algorithm to distribute crawling activity to multiple machines and how to overcome skewed workloads and hotspots. Also discussed how to carry out rebalancing of nodes using zookeeper.
- Deployed within AWS VPC, multi AZ environment using AWS CloudFormation, authored custom AWS IAM policies, user and service roles.
- Improved on existing AWS architecture focusing on cost, resiliency and high availability. Rewrote the infrastructure code using Terraform plan.
- Post-boot scripts initialize postgres db., trigger database migrations, and pull docker containers, configured libraries and system utilities using Ansible playbooks.
- Deployed 3 node Kubernetes(k8s) cluster using Kops installer on AWS to manage multiple docker containers running as a microservice.
- Experimented with Spinnaker on k8s to rollout updates to the already running microservices using Canary deployment strategy.
Environment: AWS, Kafka, CloudFormation, Docker, Microservices, Java, Node.js, Log4j, Ansible, Terraform, AWS IAM, CloudWatch, CloudTrail, Elastic ache, AWS RDS, Mongo.
- Took initiative to speed up application development lifecycle by building successful CI/CD workflow - comprising GitHub, peer code reviews, automated tests, QA and deployment on VM using Jenkins pipeline and Ansible.
- Configured HA architecture comprising Spring Boot/Tomcat servers behind AWS ALB within AWS VPC.
- Deployed two node MongoDB cluster using replica set as a primary, standby EC2 Reserved instances on AWS with Disaster Recovery (DR).
- Built an offline time series data archiving program operating on multiple MongoDB collections and exposed stateless pagination API using Node.js.
- Instrumented internal reconciliation system on payments data, developed features for on-chain/off-chain transactions by integrating 3rd payment gateways using Node.js.
- Used S3 bucket policies to provide restricted access to upload/download reports and media files.
- Configured Prometheus & Grafana to monitor and alert on running infrastructure and services across AWS and Digital Ocean.
- Configured Nginx as a reverse proxy to 4 backend Node.js/Express.js application servers.
- Used LVM to extend and shrink logical volume groups dynamically comprising of AWS EBS.
- Minimized friction during API integration with mobile/web clients by a factor of 2, transforming existing REST APIs to level 3 with spring boot project in use...
- Lead efforts to in corporate git flow model as a branching strategy, improving developer productivity and ease of code deployment by 25%.
- Implemented password salt & hashing and Multifactor Authentication(2FA) with backup and recovery options to secure user accounts.
- Added functionality to perform HMAC signing and Nonce between internal non-SSL REST APIs.
- Developed unit/integration tests suite with Junit, API test automation using Postman giving 65% code coverage.
Environment: AWS, Tomcat, MongoDB, MySQL, Java, Spring Boot, Node.js, Express.js, RESTful APIs, Junit, Maven, Memcached, Postman, S3, Git, Linux.