prat0318 @ gmail.com
http://prat0318.github.io

Prateek Agarwal



GitHub Projects

  • prat0318/json_resume » Details at http://jsonresu.me
    • Ruby library to generate resume from JSON to HTML, pdf, md, tex formats.
    • Around 1K stars on Github. Front page of Hacker News
    • Current resume has been generated using json_resume.
  • prat0318/2048-tetris » Live at 2048-tetris.com
    • Wrote a Tetris variant of 2048 game, 1M+ unique visits
    • Front page of Hacker News(~150 pts), mentioned in TechCrunch.
  • prat0318/gitator » Live at Gitator.com
    • Finds relevant repositories based on an user's GitHub profile.
    • Written in Ruby on Sinatra and uses Github's Octokit gem

Technical Skills

  • Programming Languages: Python Go Templates Java Bash C++
  • PaaS/CI/CD tools: Kubernetes Mesos Helm Charts Jenkins Ansible Zipkin
  • Monitoring/Logging Tools: Appdynamics Prometheus Grafana Splunk
  • PaaS Systems: AWS (Terraform, Kops) Bare-Metal (Nutanix, Kismatic)
  • Datastores/Queues: Cassandra Kafka ElasticSearch Zookeeper Redis Consul

Professional Experience

  • Staff Software Engineer, Appdynamics, Inc., Bangalore, IN. (Nov. 2017 – Current)
    • Part of the Common Platform Services team.
    • Architected the Kubernetes deployment framework to make it multi-tenanted.
    • Designed workflows to easily provision new Kubernetes clusters on both On-Premise and AWS.
    • Maintain and provide tooling around Kubernetes workflow - to optimize resource utilization.
    • Technologies got to work on: Kubernetes Kafka Helm Kops Python Jenkins Ansible
  • Senior Software Engineer, Appdynamics, Inc., San Francisco, USA (Apr, 2017 – Nov, 2017)
    • Built the Kubernetes deployment framework to break monolith Platform services into micro-services.
    • Built Monitoring/Alerting/Logging solutions to efficiently monitor deployments on Kubernetes.
  • Software Engineer, Yelp, Inc., San Francisco, USA (Jan. 2015 – Apr. 2017)
    • Part of the Distributed Systems Infrastructure team.
    • Provided tooling around NoSQL datastores - Cassandra, ElasticSearch.
    • Built Zipkin (Distributed tracing) infrastructure at Yelp to debug service latencies.
    • Wrote pyramid_zipkin, swagger_zipkin packages to easily integrate Zipkin with existing services.
    • Co-authored bravado package to integrate python services with Swagger v2.0 specifications.
    • Won hackathon award for building Yelp’s onboarding tracker tool.
    • Technologies got to work on: Python Cassandra Elasticsearch Redis Swagger2.0 Zipkin
  • Software Engineer Intern, Yelp, Inc., San Francisco (May, 2014 – Aug, 2014)
    • Wrote a Python package http://github.com/Yelp/swagger-py to build dynamic client library for a service. It is currently being used in Yelp's production environment.
    • It reads the swagger schema to get the service specifications.
    • Built Hackathon project to call Yelp's public APIs directly from browser (with OAuth support).
    • Technologies got to work on: Python Swagger v1.2 twisted
  • Graduate Research Assistant, CTR, UT Austin (Sept. 2013 – Jan. 2014)
    • Developed a common web interface http://unitydatabase.com to search through different datasets.
    • Technologies got to work on: Python Django South PostgreSQL
  • Software Development Engineer, Flipkart, India (Jun. 2011 – Jul. 2013)
    • Wrote a ruby gem Morsel to traverse through active record trees to purge old records. It helped in limiting the production database size and keeping the data clean.
    • Was part of the Supply chain team which remodelled and built a new one from scratch. It now scales to around 10X compared to the older system.
    • Technologies got to work on: Ruby Java Pig Active Records MySQL
  • Software Engineer, IBM Software Labs, India (Jul. 2009 – Jun. 2011)
    • Handled high priority issues for JDBC client driver for IBM Informix database.
    • Was awarded Smart CADian award for resolving an obscure deadlock situation, making Informix JDBC driver more robust.
    • Technologies got to work on: Java IBM Informix IBM DB2

Education

DegreeMajorInstitutionGraduation YearGPA
Master of ScienceComputer ScienceUniversity of Texas at Austin20153.70/4
Bachelor of Technology (Hons.)Computer ScienceIndian Insitute of Technology, Kharagpur (IN)20098.91/10
DegreeMajorInstitutionGraduation YearGPA
Master of ScienceComputer ScienceUniversity of Texas at Austin20153.70/4
Bachelor of Technology (Hons.)Computer ScienceIndian Insitute of Technology, Kharagpur (IN)20098.91/10

Graduate Courses Taken

Distributed Computing Advanced Operating Systems
Multicore Programming Advanced Programming Tools

Research Experience

  • Graduate Research Assistant, Texas Advanced Computing Center, UT Austin, USA. (Jan. 2015 – May 2015)
    • Added docker integration to web portal digitalrocksportal.org to streamline the deployment process.
    • Technologies got to work on: Python, Django, Docker, Docker-compose, Celery
  • Undergraduate project, Sanyog Lab, IIT Kharagpur (Jul. 2008 – May 2009)
    • Designing and Formal modelling of embedded systems for project Sanyog.
    • Skills Developed: Low level system design, theorem verification using Prolog and Coq
  • Summer Intern, Network Systems Lab, IIT Kharagpur (May 2008 – Jun. 2008)
    • Design and simulation of currently published Pull-based Freshness Schemes in C++.

Other Personal Projects

  • Designed product Omerta, a multi-user chat room application in j2me using Sun Wireless Toolkit platform.
    • Was awarded 1st position for the product in Envision, Product Innovation Contest, IIT KGP.
    • Was awarded 1st position for the product in Javawise, J2ME s/w Development Contest at IIT Kharagpur, 2008 and 2009 continuously.

Academic Achievements

  • Was among the top 5% in the institute merit list of the undergraduate batch at IIT Kharagpur.
  • Secured 383rd Rank in IIT-JEE 2005, an exam conducted by Indian Institute of Technology(s).

Extra Curricular Awards

  • Was awarded 2nd position in Bionetics, Coding Event, Genesis 09 at IIT Kharagpur.
  • Microsoft Student Partner of IIT Kharagpur from the period July 08 – June 09.

prat0318 @ gmail.com
http://prat0318.github.io