Hi! I'm Satnam

A machine learning engineer in San Francisco.

Projects


Catch Up

  • Social networking application, inspired by Facebook.
  • Single-page Backbone.js application consuming RESTful JSON Rails API.
  • Houses an entity-ranking search feature powered by Redis as a cache store.
  • Delivers ranked search results for 10,000 users in an average time of < 50ms.
  • Extends the Backbone View class with a custom CompositeView class to optimize browser speed and keep the code DRY

Asteroids

  • Classic single user online game inspired by Atari‚Äôs Asteroids built using Javascript and jQuery.
  • Uses vector algebra and trigonometry to enable dynamic object movement and collisions.
  • Smooth rendering of graphics at 60 FPS using HTML5 Canvas API.

Chess

  • Beginner friendly CLI game implemented with Ruby, focused towards OOP concepts.
  • Houses a Articially Intelligent CPU player powered by Minimax algorithm and alpha-beta prunning.
  • Used IO/Console and Colorize gems to implement a convenient interface for user input.
  • Multi-level class inheritance structure to DRY up code.

Q. So why did you want to become a software developer?

I love solving problems. If I had all the time, money and relationships I wanted in life and nothing to chase after, I'll probably start finding problems to solve because that's fun. Writing software is just my current favorite way to do that because writing code forces me to think thoroughly and be more deliberate about the problems I solve, and become better at the art of designing solutions in the process.

It started during high school when me and my friends started playing Counter Strike. On the very first night, my team lost (and badly, lol)and being a terrible loser, I just couldn't accept it.

My team needed to get better practice against harder opponents. We couldn't play online because none of us had better network speed than 56kbps.

After some research, I found that bots could be programmed to play smarter and the teams could be programmed to play more like how professional teams play. Working on the scripts to achieve that was a life-shaping experience. I would indulge in them all day and couldn't stop thinking about them during my sleep.

Choosing CS as a career choice was an easy decision after that.

Q. What do you like to do when not coding?

I love working out! Especially running, yoga and weight-training. It's more than just liking being in good shape and feeling good in my body. There is an element of deliberate practice and commitment to doing something everyday and improving upon it.

I love to read, both fiction and non-fiction. The Alchemist and other works from Paulo Coelho are some of my top fiction reads. Thinking, Fast and Slow and some books from Robert Greene when it comes to non-fiction.

Other than that I'm a Gooner - a supporter of Arsenal FC, a football (soccer) club based in London. Also I'm new to the United States and appreciate the diversity of people in San Francisco, I enjoy meeting new people, getting to know them, their values and sharing experiences. You know, discussing the universe and humans over a glass of wine kind of a thing :)