|
|
|
|
I'm Prasanna, and I currently work for Hawthorne Labs. A few months ago, I was working for Microsoft Bing.
I worked for the Search Platforms team, for about a year . I goto office infrequently , but I work. :)
Sometimes it's been two weeks straight. That's one advantage of being a remote employee.
After passing out of my college in June '08, I was offerred a position at Google HQ MTV and Microsoft HQ Redmond. I had some visa issues moving to the US, and shifted to the Vancouver office.
- Built (with a team of four), a distibuted and reliable key-value store, that can store arbit data on the machines that serve the search index. Since it's very expensive (one of the largest clusters ever made, right? :)), every percent improvement in performance, translate into revenues that are several orders of magnitude higher than my salary :) We serve data on a combination of RAM and disk. Atleast, disk is a relatively inexpensive resource compared to CPU and RAM. Ok, I'll shut up due to confidentiality.
- Studied and was playing around with the index file format, to see if I can save a bit of performance. Tried out alternate designs of the index structure. Experiments dint complete.
- Modified the crawler's internal structures to speed it up. Performance results under review. A sample set was showing 3.2X on the whole process with 92X on the calls that I touched.
- Learnt good amount of fooseball. I havent been playing for a while off late, and my friends have improved considerably. Need to catch up :)
- Wrote a simple crawl bed health monitoring system.
- Wrote a prototype super-fresh result classifier. It was eventually replaced by better ones by others.
Before that I worked at Google news, for launching news in my local language - Tamil.
During my second year vacations I worked with the Google Desktop Search team .
I worked with them for 2.5 months; I reported to Satish.
- I wrote Google's world cup soccer gadget.
So I spent a lot of time watching soccer :) And seeing if my news stream source is good, and live etc. :P
- I also wrote their calculator gadget.
I actually don't know who got more downloads :) There's an ultra useful easter-egg inside, to make it work like a scripting area. example, you just say: A = Sin(30); B = 2*A^2; and you can get the results. If you want to know the pass-code, catch me alone ;)
- I was looking into grabbing some active context from your windows and displays relevant search results in the side bar. Din't get production quality.
- I was also wrote for this feature called Microsummary of bookmarks, for the side bar. For this I ported a Google AJAX XSLT project to get it run XSLT and XPATH under our scripting system. With this, if you mark a page, it's microsummary generators can parse and show relevant stuff for you. Like with BBC's microsummary, you get just the latest headlines with the pictures, on your side bar. I also had to write a heuristic based DOM tree fixer for HTML. Almost all sites have broken HTML and they have to be fixed into valid XML for XPATH and XSLT to run.
During my third year vacations I worked with the Google News Team.
I worked with them for 2.5 months; I reported to Vinodh.
I studied Computer Science at NIT Trichy. I take part in a lot of programming contests , and have also written some.
I was the judge of the ACM ICPC South Asia regionals '07 held at amritapuri. Wrote four problems and tested all problems.
I'm a problem setter at the world's top three contest sites. SPOJ, USACO and TopCoder.
I was the problem setter of our college tech-fest’s programming contest: ByteCode 2006 and ByteCode 2007. I wrote the online judge, the problem set and the solutions. 500 teams across 35 countries took part in 2006 making our tech-fest go international for the first time. It turned out to be one of the biggest contests in India, interms of participation.
More here and here.
- I was ranked #1 in India at Topcoder during college (Jan '08);
- Twice Google Code Jam world finalist (MTV and NYC);
- Twice ACM ICPC world finalist (Tokyo, JP '07 and Alberta, CA '08); I was the coach of the team 'TheKingGambit' who made it to the world finals at '09.
- Winner of the Fair-Issac programming challenge and 100,000 INR.
- Twice the winner of south asia regionals at IIT Kanpur ('07 and '08); In 2008, for the first time in the history of the region, all problems were solved. We solved it in half the contest time.
- You can check out this old resume of mine, it has the list of major contests I've won.
I've cracked some binaries.
Wrote some small tools that replace instructions in executables. My first one was probably a music software whose activation notice I removed. It used to take like weeks of careful, patient effort. I still remember, once having spoilt a software installed by my dad trying to crack it for multiple distributions. It used some kind of a floppy-disk lock, and there were some sectors that needed a non-file system level protocol. I was assuming all the while that a sector level backup would represent the state of the disk. Unfortunately, I ruined the $10 software, which my dad used for all his work. At college, we had a sms service for a club and used the same for votings and all that; I had to break it to modify the footer it was appending to every message.
I'm good at profiling and removing performance bottlenecks.
At 12th, I was amazed at how complicated the Intel Pentium 4 is, and used to read it's manuals. I've read on instruction sequencing and super scalar architectured instructions (Like MMX and SIMD), and can beat compiler's output with good margins. I'm also good at Algorithms - They give the largest factors on CPU gain.
I like something bothering me, when I take a shower or just before sleep, and it's so great, if it's anything people will eventually care about.
Do get in touch. You get replies in no time, I promise :)
|