Personal details

Himanshu M. - Remote back-end developer

Himanshu M.

Timezone: Kolkata (UTC+5.5)

Summary

Software engineer having 4+ years of experience in the industry, writing efficient and scalable code to solve critical business problems. I love mentoring people since college, having mentored a lot of students, interns and colleagues on how to learn and use different technologies to solve challenging problems.

Skills (Expert to Basic):

  1. Python and related frameworks (Django, Flask, DRF for REST, Pandas, Numpy, Matplotlib, BeautifulSoup etc.)
  2. SQL databases (MySQL, PostgreSQL, OracleDB, MSSQL)
  3. Competitive programming involving challenging algorithms and data structures.
  4. Git and other version control systems
  5. Java and related frameworks (Dropwizard, Google Guice, Junit etc.)
  6. Mapreduce (Hadoop, Cascading framework)
  7. Data Science and Machine Learning to solve mathematical problems
  8. Frontend engineering (HTML, CSS, JQuery, Bootstrap, AJAX etc.)
  9. C/C++
  10. LaTeX and PDF generation

Profiles:
HackerRank (https://www.hackerrank.com/psycane?hr_r=1)
Codechef (https://www.codechef.com/users/himanshu_m)
Linkedin (https://www.linkedin.com/in/psycane/)

Work Experience

Senior Software Engineer
Flipkart | Apr 2019 - Present
Python
Java
MySQL
Git
MapReduce
Python 3
Dropwizard
Currently working in the Search (spellcheck) team to improve the efficiency of the spellcheck algorithm so as to improve the search results at scale. Projects: Sonic (Phonetics service) - Designed and developed a service that understands and corrects the phonetic errors in the query. People from tier 2 and tier 3 cities in India tend to make a lot of phonetic mistakes while looking for products. For example, they search for "sutkes" when looking for a "suitcase" or "geer saickle" when looking for a "gear cycle". The sonic service provides correct suggestions for incorrect words having phonetic error in them. Best Query Selector Service – Designed and developed a query selector service that supports language model and error model signals for selecting the best query from the generated set of candidates. Used Python to develop the RESTful API and integrated the API with the Dropwizard application. Error Model Data Generation – Designed and developed a map-reduce job in Cascading framework to generate the data to train the error model in the best query selector service. Used Java to code the entire project. Debug API – Wrote an API in Java (Dropwizard) that provides the collective output of all the internal components to easily debug any spell correction issue. Have a habit of supporting each and every piece of code with tests having good coverage which results in a clean and bug–free code. A go-to person for any spell correction issue or improvement.
Software Engineer
HackerEarth | Jun 2017 - Apr 2019
Python
Django
MySQL
Git
Flask
Python 3
Postman
RESTful API
Candidate Reports – Designed and developed the entire backend of the candidate reports from scratch using various design patterns. Used Django Rest Framework to develop the RESTful APIs. HE–SQL – Worked on improving a library that evaluates SQL questions. HE–Appsfarm – A problem evaluation service that works for Python and Java-based projects. WYSIWYG editor integration – Replaced all the markdown editors with CKEditor and changed around 2.5 lakhs questions to make them compatible with the new editor. Startup Connect – Developed an application that helps startups collaborate with multinational organizations to co-innovate, sustain, grow and flourish.

Personal Projects

Run It
2015
HTML/CSS
Python
jQuery
MySQL
Flask
AJAX
JavaScript
* Developed a competitive programming platform in a team of four. * Default platform for all the programming based events on campus.
Sudoku SolverIconOpenNewWindows
2014
HTML/CSS
Python
jQuery
OpenCV
Image Processing
Backtracking
* Built a graphical Sudoku solver in C++, Turbo C compiler using the backtracking algorithm. *Delivers an output of any hard level Sudoku in under 0.001s. * Enhanced this project to extract and solve Sudoku from an image using OpenCV, Python.