Mumbai Trip and First Time Flying Experience

As I said in my previous post, I was asked to visit Rediff Office in Mumbai. I thought Wednesday (25th) would be a great idea. Informed the same to HR. I got the return ticket to Mumbai on Tuesday. This was the first time I was going to Mumbai and also the first time I was boarding a flight. Both flights were Indian Airlines.

To Mumbai

Took Aero-Express from Hitech City to Airport. I was at airport (Shamshabad) at 6:15AM. Flight was a 7:50AM. So there was a lot of time that I could waste on the airport. With no idea how to proceed, I kept following a co-passenger (from the bus) and ended up in a queue for international flights 😛 Security redirected me to entrance for domestic flights. I proceeded to check in counters following a very simple approach. Look for counters with hot girls 😛 Among those, look for a counter with smallest number of people in the queue 😀 And it worked out of the box. Got the tickets. Moved in for security check. It was hassle free as I didn’t have any luggage. It was still an hour for the flight to take off. Used the free internet for few minutes. I was a bit nervous 🙂 About half an hour later, we were asked to proceed for boarding.

Ten minutes later, I was in plane. It was Airbus A320. Luckily I got the window seat. I was surprised as there was no in-flight entertainment system and the airbus looked technologically challenged 🙂 Few minutes later, the plane started crawling. It kept crawling at the same speed (20-30 km/hr) for so long that I got extremely frustrated. I was thinking, “Abe Mumbai paidal lekar jayega kya??” (Are we going to Mumbai by foot). I breathe a sigh of relief when it started accelerating. It was a thrilling experience after that long boredom. Things I imagined while playing NFS and other car games suddenly became live. We were on the ground at almost 300km/hr. The feeling while the plane takes off is damn nice. You feel something in the chest for sometime. After the plane is completely in air, things again become boring as the plane looks static with respect to ground. I was feeling like, “Why the hell its not moving??”. As the charm of flying for the first time was over, I picked up the newspaper. It was business line. Couldn’t really figure out a story to read. Then I picked the Air India magazine. While I was turning the pages, saw Katrina on sidebar of a page. Continued reading the story and figured out that both Airbus A319 and Airbus A321 have in flight entertainment systems. It was a real bad feeling to get stuck into A320 when both A319 and A321 were awesome 😐 The food served in breakfast was pretty good. Few minutes later, it was announced that we were in Mumbai. Landing in Mumbai was awesome. Actually, the planes first goes into the sea and then take a U turn. The landing experience was also awesome. It feels great when the plane decelerates.

To Rediff Office (Mahim)

I was warned by Sachin about the taxi drivers charging huge fare for no reasons. So I was a bit careful. But still ended up paying twice the actual charge. I left the airport at around 9:40AM. It was damn hot there at that time. My destination was Rediff office which is located somewhere in Mahim(West). Airport to Bandra (Western Express Highway) was totally jam packed. Taxi wallah turned out to be a bit smart and took the service root and managed to save a lot of time. Still it took almost an hour to reach the office.

In Rediff Office

I met Sumit in the office. He introduced me to a lot other people in NOC team. A small HR interview was conducted which was a surprising element for me as I never expected something like that. But it was fun talking to people from HR department. Then I met Sachin there. He introduced me to a lot other people related to domains I like. After that I had a small chit-chat session with managers from the NOC dept. After that Sachin introduced me to CTO, Rediff. We had a long chat session (almost half an hour). We talked about a lot of things in different domains (mainly open source). After that inspiring chat session, Sachin and me went out for lunch. I felt good to see good north Indian food nearby. We returned to office. Few minutes later, Sachin introduced me to CEO and CFO, Rediff. After that I had a long chat with Sachin about company environment and work culture.

Keeping in mind the traffic conditions, I left for the airport at 4:30PM. Unfortunately/fortunately I didn’t encounter any traffic and reached the airport at 5:00PM which was like 2 hours before the flight. To fight boredom, I headed over to Kingfisher check-in counters and found out a place to sit optimizing the view 😛

To Hyderabad

I was in plane at around 6:50PM. A321 looked really advanced as compared to A320. We were on the runway at scheduled time. But on the way it halted and waited there for another 20 minutes. By the time the plane took off, it was 25-30 minutes late. This time also I got the window seat. BTW plane was almost empty (only 40% of the seats were occupied). We were above sea in a few minutes. The view of the city in night from the sea was beyond my imagination. Every single light adding to the beauty of it. The view was best when the plane took a U turn. The entire Mumbai was visible and lights increased the beauty exponentially. The highways looked like long chains of light sources intersecting each other. It was a really wonderful experience. As we left Mumbai, the in-flight entertainment system was activated. I was browsing the channels and found one of them playing “Sorry Bhai”, one of my favorite pass-time bollywood flick. We reached Hyderabad at around 8:40PM. Took Aero-Express back to Gachibowli.

All in all it was an awesome trip to Rediff Office and also a wonderful first time flying experience 🙂

 

Rediff Interview

A few days back I got a call from an alumnus about a job opening at Rediff in my domain (server side craziness :P). Initially I was a bit surprised because I was not expecting something like that at all. After discussing a bit more about it, I returned to my room and forwarded the resume. Two days later while I was in RnD Showcase, I got a call from Rediff regarding the interview timings. It was scheduled on Saturday 21st at 1PM.

Saturday 21st

In the morning at around 9:40AM, I got a call from Sumit Rajwade (VP, Tech, Rediff) asking if interview can be conducted at 10:30AM. I replied positively. I got a bit nervous as I had to quickly arrange a place where we can meet. Arranged a conference room. At around 10:15AM, I got another call from Sumit saying that he was at coffee shop. I was deeply shocked. Coffee Shop :O I couldn’t really figure out what was going on. In my point of view, coffee shop is THE best place in IIIT Hyderabad. For me its a holy place 😛 When I reached coffee shop, I saw two guyz enjoying cold milk. Sumit said, “Whenever I come to IIIT, I always visit coffee shop. I can’t miss this cold milk”. I was still dumbstruck.

After brief introductions, interview started. He asked some NATing questions seeking answers at TCP level. I was able to answer those. Then we moved on to open source domain. Talked about Apache compression and keepalive for sometime. Then we moved on to squid and caching. I feel so good when somebody asks me something about caching/squid. Have been experimenting with caching/squid since last 1 year. Then we exchanged a few thoughts about our interests. Luckily there were no questions about printf statements. Then I briefed him about things I have been doing since last four years. After that he introduced me to the kind of work they are expecting from me. It looked pretty awesome and inspiring at the same time. Few more thoughts exchanged and it was all done. I was asked to take some time out to visit Rediff Head Office in Mumbai.

All in all, it was fun talking to Sumit. He has been hacking (here hacking means hacking and not cracking) open source softwares since years. Inspiring personality.

The most shocking thing to me was the coffee shop part of it. I never imagined that I’ll be interviewed at Coffee Shop.

 

Air Nirvana ( Got the job :P )

After countless written tests and two interviews I finally got the job offer from Airvana ( A mobile broadband company). This was the second written test which I cleared. The interview was very simple and straight forward. You can obviously outperform when somebody asks you something from your areas of interest. Main focus during interview was IntelligentMirror and VideoCache, you can guess the rest 😀

Before The Interview

**FUNNY PART**

Checklist before going for interview

  1. Company’s website’s page rank
    • Airvana.com (6 years) has a page rank (Google) of 5. Well thats good. Equals to my website Fedora.co.in (less than 1 year).
  2. Company’s website’s Alexa rank
  3. Domain Availability
    • Checked for Airvana keyword and airvana.in and airvana.co.in was available. Mouth watering. Isn’t it 😀 But somehow convinced myself not to spend another couple of dollars.

**STRANGE PART**

Both Saini(s) of my batch ( Me and Pankaj Saini) are placed together 😀 WTF!!!

Well, finally I am not a jobless anymore!!!

PS : Congratulations to Pankaj and Yogesh 🙂

 

My first interview for a job!

After failing few (will be disclosed later) written tests in a row, I got a call for an interview. I was pretty surprised as I never expected it to happen. Initially I was nervous because I don’t know c/c++/data structures/algorithms. All I know is Python, Computer Networks, a few Open Source technologies and how to use them to generate cash. Well, after waiting for four hours, I got a chance to meet the interviewers (two). I was nervous as it was my first interview. They asked me for the resume. Below is the conversation.

  1. Interview #1
  2. Interview #2

Note : Almost everything below is true and few sentences have been added to make it humorous.

  1. A : Interviewer 1
  2. B : Interviewer 2
  3. K : Me.

Interview #1

A : Tell us about yourself.

K : (I never expected this as its the most difficult question of all.) I am a simple guy interested in open source (Throwing random sentences). I believe in on the spot implementing/coding my ideas. Whenever I get a new idea I just code it without spending too much time on thinking about it.

A : What if you face some problem with your idea later?

K : (Suddenly Shiben’s this post popped up in my mind.) I try to fix it and if it doesn’t work in few tries, I just throw the code and recode it (Thanks Shiben for writing that wonderful post).

A : So you don’t do any research before implementing the idea. Do you like research?

K : Not really. A bit. (Lying) I don’t like research. It means a lot of time.

A : So, you participated in Google Summer of Code. What is this?

K : Its a Google funded project in which Google invites applications from several open source organizations and select almost 120+ organizations. Then candidates from all over the world proposes their ideas or picks up projects from organizations’ ideas.

B : You proposed your own idea?

K : Yes.

A : What was it?

K : IntelligentMirror. An intelligent caching system which caches RPM/DEB packages from several mirrors on the basis of package name and not the domain name or protocol. Its a squid plugin.

A : Tell us about this Intranet Chat Service (another project).

K : (Told everything I knew about it).

B : Tell us something about squid.

K : Squid is an open source proxy server used to hide thousands of machines behind a single public IP or to control what users browse in a shared network environment.

A : What is public IP?

K : (Answered)

B : What is difference between public and private IP?

K : (WTF?? I am not a kid. Answered.)

A : How do you hide a thousands of machine behind a single public IP?

K : NATing.

B : (Thinking that I just know fancy terms) What is NATing?

K : (Requesting a paper) Explained every single packet level details of NATing by drawing nice diagrams. (Interviewer tried to confuse at several stages but in vain).

A : (Feeling helpless, whispers to B) Lets ask standard questions 😉

K : (WTF??? Feeling doomed 😛 )

B : What is polymorphism?

K : (Abusing the interviewer at heart) It is some fu**ed up idea using which we can do few things which often confuse me and sometimes confuse the even compiler.

A : (Passing a sheet of paper to me) Write an example of polymorphism?

K : Wrote a function
int function(float a);
int function(char a);

B : Can I change return type of second declaration?

K : (Feeling awesomely confident 😀 ) No.

A : If I change char to double in second function will there be a compiler error?

K : Sorry sir. I am confused.

B : Define a class String and few functions on array of characters?

K : Wrote a class somehow with a few functions.

A : Write the copy constructor?

K : (You are torturing me. Don’t push it too much) Somehow managed to write a fu**ed up copy constructor
String(String & str) {
string = str;
}
(I know its wrong. Don’t point out.)

B : Why did you write this (the C++ this)?

K : To reference the member variable of current instance of the class.

A : You never declared it. How can you use it?

K : Its provided by C++. You know I used char, int also. (Dumb ass!!)

A : Ok. (Looking at my resume) You have interest in blogging.

K : (Feeling a bit relaxed) YES!!! I have three blogs. One technical, one about life and I bought a digikam a few months back and started a photoblog as well.

B : (Laughing) Interesting!!!

A : Why do you have some many blogs?

K : Because I love buying domains. Then I need to put up something on those domains. So, I write blogs 🙂

B : How many domains do you have?

K : Around 15.

A : Where do you host these??

K : I have my own VPS hosted in US.

B : How much does it cost?

K : $50/month.

A & B : (Looking at me as if I kicked them in balls) WTF!!!! Where do you get all this money???????????

K : [snip] secret 😀

A : Thank you. I think we have asked enough questions.

K : Thank you!

I left the room. After that I returned to OBH (Hostel). I was not hoping that they’ll call me again for another interview. But I did wait for the call till 9:30PM. After that I went to bed. I was about to fell asleep that Kapil Bajaj called and asked me to report in Main Building. I was sure that this will be either a light round in case they are sure to count me in or it’ll be a revenge round in which they’ll ask questions about things I don’t know.

Interview #2

I entered the room and the interviewers were different this time. A bit more nervous then the last time.

  1. C : Interviewer 3
  2. D : Interviewer 4

I grabbed the chair. C picked up a sheet of paper and started writing on it as if he is a BIG BOSS.

C : (Writing an expression on the paper) Remove the extra brackets from the expression.

K : (Understanding that its a revenge. You employ people for software development or removing the brackets from an expression????) Having no clue of the solution to the problem tried writing something on the paper. (An image of “Ajay Somani” teaching removing redundant braces from an expression flashes in my mind. And I was like WOW!!). I gave the solution (I know there are two terms infix and postfix, but don’t have a clue about which one is infix :P) that we’ll start putting things in a stack and will throw away the opening and closing braces which doesn’t have a symbol or character in between them. And will pop them out to get an expression without extra braces. (What a guess?? 😀 and it worked).

D : Can you optimize it?

K : (baah!! I somehow managed to do it. Now what???) Having no clue about optimizing the above, I started throwing some random ideas. Devised one idea and showed to C but he caught it and proved me wrong. Took some more time and devised one more funny idea.
Expression : (((P+Q))*R)
Solution : We have two variable i and j with I pointing to first element and j pointing to last element. We enter a loop and start decreasing j and increasing i. When we see opening braces at expr[i] and expr[j], we throw them. And when there is no braces at either expr[i] or expr[j] or both we continue and jump over symbol and characters. While I explained the idea, it somehow worked for the expression. I badly confused the interviewer with my invention 😛 He was like WTF!!! How can this piece of crap work?? I was about to laugh. I enjoyed the moment. It was one of the best moments of the day. He spent almost 2-3 minutes figuring out my newly invented algorithm and finally managed to prove it wrong.

D : See, this doesn’t work.

K : (Thinking, “Why are you telling me?? I know it doesn’t work 😛 “) I am sorry sir 🙂 (Controlling my laughter).

C : (Writing two numbers on the paper) This number ( character array 4568123) is rotated around some number and the original number is (character array 1234568). How would you get the original number from the rotated one?

K : (Having no clue about the domain of the problem) Thinking of swapping numbers here and there. Tried every possible combination but nothing seemed to work. What happened to my pool of ideas 😛 (An image of “Kapil Bajaj” teaching inorder, preorder, postorder traversal flashes in my mind. Kewl!! I don’t have a clue about trees and whatsoever things related to those creatures). Now the big task is to make a tree out of the character array. (While I was telling these to Sachin Goyal. He suggested that plant the first character and water it until it becomes a tree 😀 ) I drew the array in some random orders on the paper and made a tree of some sort with 4 as root and 568 on the left subtree and 123 on the right subtree. (Now, all those organic structures like methane, ethane started crawling in my mind. I somehow remembered the rotation thingy). I rotated the fu**ing thing around 4 and it worked. I felt like the luckiest guy in the world. What a confidence I had at that time. I described the process to the interviewer as if solving tree problems is the easiest of all the problems.

C : What is order of problem?

K : (No clue about the problem itself. How do I know its order? ) Kept quite for sometime and kept myself busy with the problem itself ( I was so happy that I couldn’t get my eyes off the tree structure).

C : (Asking again) What is order of the problem?

K : (Thought about it for sometime) log(n). As the integers are in sorted order. Interviewer looked a bit convinced.

C : (Traping me) How will you make a tree out of that character array?

K : (OMG!! Not again! Tried to explain the impossible.) We’ll take the first character as root. Now we’ll build left subtree. We’ll go on putting the integers in the left subtree as long as they are in same order. In that way the order will break at 8 and after that we’ll start building right subtree (This somehow seemed to work).

C : (Totally frustrated by my guesses which were eventually working) Is this a BST?

K : (The only thing I know about a BST is that it is Binary Search Tree) Yes. (Confident as if I am the one who invented BST 😛 )

C : (Trying to trap me further) Wrote two string “ABCDE” and “CDEAB” and asked to write a function to detect if they are rotated version of each other or not?

K : (Thinking that these are not integers and my awesome ideas are not going to work here 😀 ) We’ll somehow make a tree of a string, then traverse it (Leaving the traversal type for interviewer. I said only traverse it, because I don’t have any idea about how do we traverse a tree in inorder, preorder or postorder. So didn’t want to invite more problems). And then we’ll compare the result.

C : Ok. Thank you. Lets go.

And that was it. My adventurous innovations about trees stopped there 😀

All in all it was total fun being interviewed. I enjoyed every single moment of both the interviews.

PS : I am not correcting any grammatical, spelling mistakes.