A highly skilled Software Engineer with a demonstrated history of designing and operating highly available, scalable, secure and fault tolerant systems using Amazon Web Services. Proficient in Python and good knowledge in C, C++, Java with hands on experience in developing applications in Python and deploying them onto cloud (AWS) infrastructure. A quick learner with strong interpersonal and technical skills with the ability to blend into different roles with ease.
-
Experience
Developing serverless applications using AWS lambda and Python and making performance improvements of existing api’s and internal modules. Developing python flask-based web api’s.
Reduced elastic beanstalk applications response time by 50% by developing a token authorizer module (which was currently deployed as a lambda service) which can be used by existing elastic beanstalk applications. Implemented class level token caching mechanism for the module to improve performance.
Achieved average response times of 100 ms by implementing public key caching mechanism for the token authorizer module and lambda.
Achieved maximum throughput and scalability by implementing a light weighted frontend flask application which converts incoming http traffic to ws (webserver protocol) and routes to python web socket application listening on multiple ports.
Migrated non secrets from secrets manager to S3 for easy and efficient management of application specific properties which can later be retrieved by lambda/EBS services. Created a python S3 module for storing and retrieving non secrets.
Secured Elastic Beanstalk applications by routing traffic through internal load balancer via api gateway vpc links. Automated elastic beanstalk deployments through cloud formation.
Developed CICD pipelines from scratch using Concourse CI for internal modules and api’s that are in separate GitHub organizations. Created concourse jobs and wrote bash scripts for corresponding tasks.
Eliminated manual deployments by writing bash scripts for automating deployment process in Concourse for different environments. Migrated two entire github organizations from Jenkins to concourse.
Stored deployment artifacts on S3 for immediate rollbacks of production deployments. Automated production deployment releases in github for disaster management and recovery.
Created custom slack notifications for Concourse deployments. Created cloud watch alarms for production api’s and integrated with SNS and lambda for sending alerts to slack and Microsoft teams.
Developed a python slack bot and deployed using AWS lambda for querying production api’s and running parity checks through slack.
Wrote test suite for production api’s and scheduled cron jobs in Concourse that runs every 30 minutes.
-
Projects
Community Question Answering:
• Developed a project using python and NLTK that ranks the relevant comments for a given question in Community Question Answer forums.
• Word2Vec model is used for creating word vectors. SVM and Naïve Bayes classifiers are used for training the model.
Email Spam Filtering Using Naïve Bayesian Classification:
• Developed a project using python and NLTK which classifies a given e-mail as spam or genuine.
• Recorded an accuracy of 98% on Enron dataset and also compared with other classifiers like SVM and Logistic regression classifier.
MOODLE based content distribution and evaluation system:
• Designed a GUI which acts as a content management system for centralized control over course content and a system of record and analyze student assessment results.
• The application was deployed using Amazon EC2
Optimal feature selection for diagnosing hepatitis using optimization techniques:
• Used ABC (artificial Bee Colony) and PSO (Particle Swarm Optimization) techniques to identify the optimal features over a given set of features for diagnosing Hepatitis.
• Implemented using Java, Oracle and Weka Tool.