[Techie Tuesdays] How this Open Source enthusiast climbed up ‘Urban Ladder’Aditya Bhushan Dwivedi
Born and brought up in Bangalore, Rajat Upadhyaya got interested in computers when he encountered them at his cousin’s place. Since then it became a weekly ritual for him to travel to their place to learn programming and experiment. He was in class six back then. Rajat learnt basic programming during his school days. To keep his options open he decided to go for PCMB (Physics, Chemistry, Mathematics and Biology) in his PU. Rajat is the VP of Engineering at Urban Ladder.
The year was 2001 and most IT companies were just recovering from the software recession. The general mood around software industry wasn't good and this worked in Rajat's favour when he had to select a branch for his engineering at REC (now NIT) Surathkal. Though Computer Science engineering was the most preferred branch, people started going for Electronics after the recession and as a result Rajat got an easy seat in Computer Science.
Things were going great at college and Rajat wanted to make good use of the time he spent there. He started picking books on C and used up his time to learn as much as possible and participate in inter-college programming competitions. He finally bought his first desktop computer when he was in the second year. It was the same year when he did his first project as part of an internship (it wasn't part of the courseware) with Trigent Solutions. Rajat was required to make a data dictionary for lookups. It was a similar situation where you have a compiler which would break the input into tokens to figure out if the given input is a keyword or not. It was his first project and it was nothing like what he had studied in books.
Rajat says, "This was something very different from what I had learnt anyway. So I had to pick up that stuff, learn it and figure out its workings and come up with an implementation. I didn't know C++ at that point of time so I taught myself C++ and implemented with that and picked up the documentation, and learned to code. It was a very different experience. After seeing the result they offered me a job.”
Getting into Competitive Programming
In final year, his college decided to get into ACM ICPC for the first time. There were many enthusiasts but only one team could apply from the college. There were multiple teams which were planning to apply, so to pick one team they held a competition and Rajat's team came out a clear winner. They went on to compete at the national level and came seventh in the AC-ICPC nationals. After that he tried his hand at Topcoder a couple of times but couldn't develop a liking to it. Rajat says, "For me creating a bigger system from a product perspective was more exciting. I used to get a kick from making end to end systems. For me complexity was more exciting, if there is a complex system how do you make it simple from the user’s perspective."
Quizzing and Building Games
Rajat is also an avid quizzer and it was this hobby of his which led him to build a buzzer system and an image processing application which helped convert crosswords from the Hindu crossword puzzle which used to be in an image format to an online interactive puzzle which could be solved directly using the keyboard. As part of a competition he also wrote an interesting game in C++ which was a variation of (5X5 grid) chess.
Open Source and working for Yahoo
During his college, Rajat did an internship with Yahoo where he built a recruitment system which presents questions from a database based on an algorithm which works on varying levels of difficulty for different candidates. During his fourth year, Rajat started building a desktop search tool for Linux for a competition for RedHat scholarship. They didn't get the scholarship but this experience taught them a lot of things and this was the first time they worked on the complete Software Development Life Cycle on their own.
During placements Rajat sat for three-four interviews just to get a feel of it. His aim was to join a company where he could be involved with open source. Finally, he joined Novell as the company was migrating from Netware to Open Source Model. At Novell, Rajat started with working on FTP protocols on Netware and then shifted to Pure-FTPd. He developed Patches for Kerberos-based authentication and command & data channel protection using GSSAPI (RFC 2228). But they were not incorporated in the upstream release. Patches can be found on SourceForge. For the Pure-FTPd version 1.0.22 which was released on April 27, 2009. Rajat developed patches for TLS-based data channel encryption (RFC 4217). Rajat also worked on NFSv4 storage file system for Netware and Linux at Novell.
Starting up and Shutting down
After working at Novell for two years, Rajat decided to go for higher Studies at Ohio State University where he studied more about Data Visualisation and Image Processing. After coming back from the US, Rajat joined as a Co-founder and CTO at Taazza - the Hyperlocal app. Rajat says,
"This was also the time when twitter was getting popular. So we have something very similar to microblogging but from hyperlocal news level. We put up a website, every pincode in India had its own page. We realized that going on a mobile would be a better idea as it was catching up. Then we started off with Android, we started adding places, movie theaters, pubs and bars. We were also getting deals with Snapdeal, Kooves, Sosasta and other partners, including movie ticketing and theaters."
Climbing up the Urban Ladder
It was close to two-and-half years but they couldn't see it going anywhere. The location bubble had burst. Rajat decided to move on and wrap it up. He joined MobStac on a consulting role. Some of his friends were in Urban Ladder and they convinced him to join them. Joining an e-commerce company and especially one which dealt with furniture which is a big ticket item may seem like a challenge to people but this is what Rajat has to say, "The challenge seemed a fairly big one. I could envision complexities based on my chats with the founder and so on. But getting into a startup? If it was guaranteed that you'd win at the end of the day then everybody would want to be in a startup."
At Urban Ladder, Rajat has scaled the team from two-three people to 30 people and has helped the technology migration from Magento (PHP) to Ruby. Rajat heads Engineering department at Urban Ladder and oversees the technology there. Talking about his future plans, Rajat has nothing grand in store. He says, "I want to be able to touch many lives. And make software which people will remember for a long time."