rajatbiswas

Rajat Dipta Biswas

I am an avid learner. I love coding in Python and learning every nook and cranny of the language. Really don't know why, but it is the way it is. You really can't choose what you love to be honest. Have also been trying to learn a bit of Haskell for the new functional programming taste.

I am also interested in web development. I believe that web is the way to go. Any other app that is developed for a particular platform require a lot of maintenance and time to make sure they are working in tip top shape. However writing a web app is like writing a single app to rule them all. You can just send a link to someone and it just works and on all platforms.

I've been recently trying my hand in some data science as well. Analyzing big chunks of data and making computers learn to predict things also makes me giddy. I know I still have a lot to learn but I'm trying. Finished a complete course on Probability and Stats from MIT just for Data Science and it has definitely sparked my interest. Studying probability and statistics has also helped to look at and think about the world in a different way altogether. Currently studying a course on linear algebra so that I can grasp machine learning algorithms from the root.

One thing I believe is that if I'm doing something, I should do it properly and perfectly (even if it takes a painfully long time).

The thing that drives me most often is the vision of the beautiful and perfect end result. The fact that I'll be learning something new along the way, is also a big drive for me.

I have worked on a few interesting projects as of yet. I built an augmented reality geography guessing game in IIIT Allahabad's Hack In The North hackathon. It was my first hackathon and I was pleasantly surprised by what my team and I built in just 48 hrs and whole lot of coffee.

Also did a project on figuring out if a face photo belongs to a person from North India or South India. Used several different convolutional neural network models to check accuracies and draw conclusions based on the results.

A group Android app that we made in the second year, helped me learn how to work as a group. Working on one aspect, while the other team members work on something else and then just stitching things up which gives out an amazing end result is very promising, but that is not how it actually works in real life. Most of the time, one team member won't like how another person is doing their job (be it simple things like how they are indenting their code or how they are designing the UX) and would prefer doing it all by themself. To overcome that and accepting others' working styles is a challenge that comes from working in groups.

Another side project that I did was this calculator on the web. The goal was to make a universal simple calculator that I'd try to make a beautiful as possible. I tried to make the design from scratch and make it just the way I envision it. It turned out very well and I'm proud of it (even though it was just a simple side project).

I learned quite a lot from that. Learned some major quirks of HTML - like how the subtract sign that we use on the keyboard, is actually a hyphen and how HTML sees it as a line break. Literally spent almost a day to figure out why the numbers I was entering "magically" disappeared only when using subtract. In the end, had to find the Unicode value for the actual subtract sign and convert it back to hyphen when using the eval() function in Javascript. That was just one thing. Learned some CSS and JS quirks too but I realize I've already written a bit too much.

Another major thing I learned is that, almost everything one can want to do has already been implemented or asked by another person on the internet. The biggest weapon one can acquire is writing efficient Google queries. If one masters that, the rest is much much easier. And even if that particular problem isn't available on the internet, asking a community of like-minded individuals helps to learn a lot.

Finally, the problem I would say that I have is that I doubt my abilities. The other being is that I waste too much time trying to perfect whatever I'm doing. Things that would otherwise be done much faster if my obsession with perfection wasn't bugging me from inside.

All in all, I would like to be a part of this hackathon to build something that I can be proud of and test my abilities. Whatever I learn there would just be the icing on this already amazing cake.

Projects

GeoARgraphy

An augmented reality geography guessing game made in Unity.Sketch, Android, Unity, Augmented Reality, Vuforia

PathMarkAR

? An augmented reality indoor navigation app made in Unity and ARCoreARCore, ARKit, Unity, Unity3d, C#

Skills

Python
Java
C
Git
Adobe Illustrator

Experience

  • American Express - Technology Intern
    May 2019 - July 2019

    Worked on CMPI (Customer Marketing Performance Insights) in Enterprise Marketing Technology and Insights team.
    ● Converted Hive code to PySpark. Increased code efficiency from 7-8
    hours to 30-40 minutes i.e. around 92%
    ● Created shell scripts to
    ○ Invoke Hive scripts stored in a folder and log their execution time.
    ○ Perform quality check on the output tables once execution is complete.
    ○ Automate the execution Python scripts and automatically restart execution if they fail. Log time taken and notify team members via email if the script fails after a set number of trials
    ● Performed feasibility analysis on the Fingerprint Net Benefit Simulator project. Provided insights on whether the Python code provided by the business team can be converted to a Java application for clients.