Saurabh Chaturvedi

Saurabh Chaturvedi

ABOUT ME
Python, Go, C++ Programmer | Database Geek
Python, Go, C++ Programmer | Database Geek

Software Engineer at Gojek

Python | Golang | Databases | C++ | Ruby | Data Engineering | Systems Programming | Regular Expressions | Bots | Web Scraping | Containerization

I'm a C++ and Python programmer with over 4 years of experience, specializing in backend development and data wrangling. My aim for software I build is to provide significant, real and tangible value to its users. Projects I've built include machine learning classifiers, heuristical SQL error detectors, event management systems, large scale Twitter and Slack bots, FTP, NNTP and email client apps - both CLI-based and GUIs. I've also built games in Pygame and Kivy.

The urge to write robust software compels me to learn about new data structures and algorithms - especially optimization ones. I love shaving even microseconds off of a program's runtime!

I've explored all programming arenas with Python, but I use C++ (and a bit of Rust) specifically for systems programming.

()
Joined January 2017
EXPERTISE
8 years experience | 8 endorsements
I've been building a variety of projects in Python since I was in high school. Have worked with popular web frameworks like Flask, Django...
I've been building a variety of projects in Python since I was in high school. Have worked with popular web frameworks like Flask, Django, Twisted; popular AI frameworks like Tensorflow, PyTorch and the standard PyData stack comprising Numpy, Pandas, Matplotlib and SciPy., I've especially done a significant amount of web scraping and building Twitter bots, data aggregators and Internet clients (like FTP and NNTP) in Python. I also have a decent knowledge of Python's standard library and have also built stand-alone systems with it. Apart from these, I have experience in building lightweight Python systems for IoT swarms.
5 years experience | 1 endorsement
I’ve used databases for a broad range of applications - from using MySQL to PostGreSQL for bots to MongoDB for scalable web scrapers, dat...
I’ve used databases for a broad range of applications - from using MySQL to PostGreSQL for bots to MongoDB for scalable web scrapers, data aggregators, and as such have experience in both SQL and NoSQL systems. I enjoy connecting data systems with application software for better architecture and efficiency. I also have some experience in database implementation. Normalizing data is also fun for me when it comes to relational databases.
4 years experience
I have been using version control systems like Git in my everyday projects and some other, larger open source projects. I am good with wo...
I have been using version control systems like Git in my everyday projects and some other, larger open source projects. I am good with working in teams and collaborating on websites like GitHub, GitLab and BitBucket.
5 years experience
I've contributed to large codebases written in C++ and have experience working with templates and class hierarchies. I was an open source...
I've contributed to large codebases written in C++ and have experience working with templates and class hierarchies. I was an open source contributor to CMU Database Group's Peloton, a smart database management system written in C++. These days I also contribute to Apple's FoundationDB project, also written in C++. Apart from this, I stood first in my city for National Cyber Olympiad 2014, which included programming problems in C++.
5 years experience
I've built Twitter bots to automate following, retweeting and liking interesting tweets and people. I used python-twitter library for bui...
I've built Twitter bots to automate following, retweeting and liking interesting tweets and people. I used python-twitter library for building these bots and I have a decent amount of experience in this arena. I also have experience building Discord, Slack and Reddit bots.
DiscordTwitter APISlackbot
View more
DiscordTwitter APISlackbotPython
View more
3 years experience
I have done a significant amount of web scraping for building spiders and for accumulating similar data from different websites (like new...
I have done a significant amount of web scraping for building spiders and for accumulating similar data from different websites (like news websites). Also, a lot of content-offering sites don't offer APIs to access their data in a programmatically convenient way; for such sites I have built scrapers that extract content from these sites and convert them in popular formats like JSON and CSV. I've used Python and it's tools like Scrapy for fetching such data.
1 year experience
I've used selenium for automated browser testing and scraping JavaScript heavy sites. Also, I've automated common actions like form-filli...
I've used selenium for automated browser testing and scraping JavaScript heavy sites. Also, I've automated common actions like form-filling and logging-in with the selenium library for Python.
EMPLOYMENTS
Product Engineering Intern
Gojek
2019-05-01-2019-07-01
Started my internship on a Golang project for automating the on-boarding process. Automated the internal process of invitation to team-sp...
Started my internship on a Golang project for automating the on-boarding process. Automated the internal process of invitation to team-specific Slack channels as well as providing access to projects' environments, following a sophisticated approval hierarchy. Later, my team (of 3 interns) worked from scratch on a triaging project built for recruiters to streamline and automate part of the code submission evaluations. We used Ruby for implementing the checks and Node+Express for submission portal. Language-specific custom Docker containers were built for ~10 languages that covered ~95% of the submissions Gojek gets.
Ruby
Node.js
Test driven development
View more
Ruby
Node.js
Test driven development
Bootstrap
Docker
Pair Programming
Golang
RESTful API
Software architecture
Express.js
View more
Google Summer of Code Student
FOSSASIA
2018-05-01-2018-08-01
I worked on making Open Event version 2 ready. In doing so, I used lots of Python (mostly Flask), JavaScript (mostly emberJS), API's for ...
I worked on making Open Event version 2 ready. In doing so, I used lots of Python (mostly Flask), JavaScript (mostly emberJS), API's for varied tasks, like Sendgrid , and worked in a test-driven development environment with many of Python's standard and non-standard library APIs.
Python
Flask
Celery
View more
Python
Flask
Celery
Ember.js
View more
Writer
DailyFintech
2018-01-01-2018-06-01
I write about blockchain and other cryptocurrency technologies and provide a developer view of them to the general public
I write about blockchain and other cryptocurrency technologies and provide a developer view of them to the general public
Bitcoin
Blockchain
Cryptocurrency
Bitcoin
Blockchain
Cryptocurrency
PROJECTS
spaced-repetitionView Project
2017
A tool for storing what you learn daily and then reminding you what and when to revise. Built with Python and PostgreSQL, it uses the spa...
A tool for storing what you learn daily and then reminding you what and when to revise. Built with Python and PostgreSQL, it uses the spaced-repetition algorithm to figure out the appropriate date for a topic to be revised, for better learning.
Python
PostgreSQL
View more
Python
PostgreSQL
View more
High Schools
2014
A school management system built entirely in Python with no third-party libraries, it allows for efficiently assigning classes ("proxies"...
A school management system built entirely in Python with no third-party libraries, it allows for efficiently assigning classes ("proxies") to substitution teachers, in case the original teacher(s) were absent. Several other features include attendance management, class- and employee-monitoring with a custom query language.
Python
View more
Python
View more