Welcome! I'm Pramod, a web developer and instructor. Here's my work history and details about some of my projects.

MountBlue

-
  • mentoring
  • python
  • django
  • javascript
  • react

I worked as a mentor at MountBlue , a coding bootcamp where entry-level developers are trained for 3 months on popular web and mobile technologies with the goal of finding them rewarding software development careers in startups.

I mentored primarily in the Python / Django stack and also mentored a cohort in the JavaScript / React stack.

This was also the first time I led a group of people and was responsible for developers' success, both during the bootcamp and their initial deployment at our customers' companies. So I improved my project management and people skills in the process by receiving valuable inputs and feedback from founders, mentors and everyone at the company.

During 2020, as the company had to go remote due to Covid-19, I automated many of our manual processes, recruited 100s of candidates and also helped run a problem-solving and computational thinking course for students new to programming who were unable to qualify our interviews. Many of these students who took the prep course were eventually able to pass our interviews.

Jed-i

-
  • javascript
  • react
  • python
  • flask
  • jupyter

A video speaks a thousand words!

You just watched a Thodio(portmanteau of Thoughts and Video) embedded in a Jupyter notebook. I built the entire app as a consultant for Jed-i's Machine Learning course.

The software has three components:

Thodio Creator

This component is an HTML5 Canvas interface used by instructors to create content using a drawing pad.

Thodio Player

This component plays Thodios created by instructors. Like any media player, it supports operations such as play speed, fast forward and rewind. It also has a special feature where students can seek to the section of the thodio where an element is active, by clicking on it. I used a static KD-Tree, a spacial data-structure, to implement this feature and it was quite fun!

Jupyter Extension

The ML course is delivered as a bunch of Jupyter Notebooks. So I built a Jupyter front-end extension to embed Thodio Players inside the notebook by executing an IPython magic command. I also extended the Markdown syntax to support features such as highlighting and underlining.

You can also see the software used in a classroom setting here.

Vivaldi

-
  • elixir
  • javascript
  • side-project

During 2016-2017, I watched a "Papers we Love" talk by Armon Dadgar of Hashicorp on YouTube. In parallel, I was learning Elixir from the Programming Elixir book by Dave Thomas . So I thought, why not combine the both and built a small side project to illustrate how "Vivaldi", a distributed algorithm used by Hashicorp's Consul works behind the scenes. You can find out more about how it works in this web page and also find the repo on GitHub .

Intense - Programming Bootcamp

-
  • mentoring
  • python
  • javascript

While contributing to education as a software engineer was great, I missed coaching and interacting with students. So I wrote a bunch of popular answers online which led to a bootcamp to help junior web developers take their skills to the next level.

Based on students' interests, I created customized learning paths, reviewed students' code, helped them land freelancing contracts and full-time software development jobs.

Concept Coaster

-
  • adaptive-learning
  • python
  • django
  • javascript
  • react
  • digital-ocean

A minimalistic web app to build adaptive-learning courses

Imagine you have a problem at work which requires knowledge of Principal Components Analysis(PCA). Your friend recommends the popular "Introduction to Linear Algebra" book by Gilbert Strang. You find that it is explained on Page 457. But your Linear Algebra is a bit rusty and you'd prefer to reach PCA as fast as possible.

What if there was a way to only learn concepts which are required to understand PCA instead of studying each concept from page 1 to page 457 in detail?

Concept Coaster is a simple proof of concept to illustrate the power of knowledge graphs in learning.

Instructor: Concept Coaster helps the instructor to split a large topic into small, atomic concepts and specify dependencies between them. The instructor can also create text and embed multimedia content, quizzes and coding exercises on each concept in the topic.

Student: When a student visits the site for the first time, Concept Coaster guides the student through an adaptive pre-test to identify the student's current knowledge level so they can start learning at the edge of their knowledge instead of wasting time reviewing known concepts. Also, the entire concept graph is visualized on the main page so that the student can choose a learning path optimized for reaching their target concept as quickly as possible.

Unfortunately, over the years, I didn't have the time to maintain the app due to dependencies on external services like HackerRank and Algolia whose APIs changed. So the application is currently not up. But you can find the repo on GitHub

Kaleido

-
  • javascript
  • backbone
  • spa
  • java
  • dropwizard
  • phantomjs
  • aws

I worked at New Rubric Solutions as a software developer. Here are some of my accomplishments during my time with the company.

  • Led the design and development of the company's flagship single-page web application along with senior engineers
  • Contributed to architecture/design and lead the development of a reporting application used by parents to keep track of their child's progress at school
  • Developed core abstractions used by product engineers to build maintainable applications
  • Helped interns and teammates with front-end development