Ekansh Preet Singh

Ekanshpreet Singh – The first NSITian to make it to the prestigious Facebook Inc. through on campus placement, needs no other introduction. A pass out of the IT batch, ’12, Ekansh is idolized and respected by his juniors and batch-mates like nobody amongst his peers. Presently working at the Facebook Engineering - Menlo Park, he talks about his experience at NSIT in an interview with NSITonline reporter Krishan Singh.

1. What initiated the passion for coding in you? 

I was always into computers since my school days. But I first started with coding when I took up C++ as a subject in 11th grade. I enjoyed it quite a bit and I ended up doing my entire syllabus of 11th during the summer break itself. Even coming into college was an easy choice for me; I never had any of that college vs. stream dilemmas. I knew I will be taking up computer science or IT at the college level. Fortunately for me, I was the last guy to get into IT at NSIT.

2. How did you prepare for your placements? What advice would you give to your juniors regarding the placement season? What areas would you suggest a beginner to start with for getting acquainted with programming?

I went about my placement studies in a very methodical way. Before the summer break began, I knew what all books I had to do and how much time I should spend on each of them. Placements at NSIT are almost totally about your knowledge of the C language. Knowing other languages helps but it is by no means a prerequisite. I focused solely on C/C++ for my placement preparation. To divide the subjects on the basis of their importance - C, data structures and algorithms form the crux of the matter. The more time one spends on them the better. The second category would include Operating Systems and Databases. They are not even half as important as the other three, but important none the less. And lastly, if there's time, one should revise networking as well.

For basics of the C language, one should start with Let Us C by Yashwant Kanetkar and then move on to the book by Kerningham and Ritchie. For Data structures, one could first start with the book by Yashwant Kanetkar and then follow it up by Tanenbaum. Cormen is the bible for algorithms. In addition to these, for the written objective questions of most companies Exploring C and Test your C skills are important books as well. All of these help you get strong with the basics of the language. These must be followed by books like Crack the Interview and sites like GeeksforGeeks, these contain standard interview questions and there's a good chance that a lot of your interview questions would come out of them.  

3. Please share your placement experience - both Amazon and Facebook. Did you ever feel nervous during the season?

I definitely was very nervous coming into the placement season and I can easily say that it is by far the most harrowing time, mentally and emotionally, of one's college life. I had always dreamed of getting into a software giant and to not get into one of those top 4-5 companies would have been really disappointing. Plus our class hadn't performed well at all during the internship interviews in 3rd year and that had led to all the more anxiety. Thankfully for me, it got over within the first week.

Amazon was the third company to visit the campus. We first had an online written round which consisted of 18 objective questions and 2 subjective questions. 20 students were selected after the written round to appear for interviews. I had 3 interviews with Amazon, all of them technical. The first interview lasted a little more than an hour and consisted of puzzles, some standard questions on graphs, assembly language a few other things. This was followed by another interview which again consisted of standard questions, mainly on trees, strings and hashing. In both of these interviews, I was expected to write running code optimized for best performance. The third round was the director round, or the bar raiser interview as they call it. This interview lasted an hour and a half and was mainly comprised on devising algorithms for a situation I was provided, a real life situation which could occur at Amazon and it was all about judging how I would go about solving it.

Facebook had never come to our campus before so it was exciting to hear that they were visiting our campus. Facebook came sometime in November, a long way into the placement season. Their first round was an online coding round, similar to the ones you find at CodeChef, Spoj, InterviewStreet etc., which was by far their toughest round. The interviews happened sometime in December, and we had combined interviews with DCE and BITS, Pilani. 5 students were selected after the first round from each of these colleges. We had another written round which consisted of solving 4 questions by writing running code for them, followed by 3 interviews. 2 of my interviews happened there but the last one was a phone interview which took place a couple of days later. The interviews consisted of standard questions on data structures and algorithms. The last interview consisted of questions on Machine learning in addition to standard questions. After the interviews I was required to provide some references and only after a month or so did I come to know the final result. It was a really long process but the end result was worth it.


4. What's the role of academics in getting a good placement?

(If you wish, you can also share your academic experience and its importance.)

Academics is definitely a very important factor in placements, but it’s not the only important factor or the most important one. The most important thing for placements is your knowledge but academics decide whether you sit for a company or not and if you do, they often form the first impression of you to the interviewer. Although not necessarily, but a below par academic record can go against you. I was told initially that try to keep your score above 70% and that’s what I aimed for (I ended with something like 72%). Above 70%, you're eligible for all the companies and it’s considered to be a good score as well. 65-70% is okay, but you might not be eligible for one-fourth of the companies and for the ones that you do interview for, there's a good chance you'll be asked for a reason as to why is your score low. Below 65% is definitely an issue and you must try to improve while you still have time.

5. You were a part of NSITonline and CSI web team? What all projects did you worked on with these clubs? Do you feel that joining these socs made some impact over your overall personality and skill set?

I joined NSITonline and CSI at the start of my 2nd semester in college working on a variety of things throughout my college life, from redesigning the NSITonline and CSI websites to organizing events on various topics etc. Some of the very first projects that I did were for NSITonline. Joining them not only helped me learn new things but through these societies I came into contact with like minded seniors and that really set the tone for me for the rest of my college life. I could turn to them for any sort of guidance that I needed. Eventually the very workshops that I was attending when I came into college turned into workshops that I was presenting to my juniors. So all in all, joining these societies definitely made an impact over me, my personality and my confidence.

6. What all internships and projects you did in your 4 years at NSIT? Also as you participated in the Google Summer of Code project thrice, please share some more info about your projects and application process. It'll be a great help to those NSITians who are actually preparing for GSoC.

I was generally involved in some work or the other throughout my time at NSIT. I was lucky to get an early start as one of my seniors helped me get an internship right after my first year. I was involved with SEETA over the summer after my first year and continued to work on their projects throughout my second year (and here and there in next couple of years as well). I had to learn a lot of new things to work on those projects, new languages, new libraries etc. and this helped widen the horizons of my knowledge. I went on to publish more than a couple of research papers on some of the work I did at that startup. And all the work and the confidence and the encouragement of the previous year was pretty much the perfect stepping stone for when I applied to Google Summer of Code after my second year. 

GSoC happening for me the first time around, after my 2nd year, was something that I totally did not expect. On the contrary, I was sure it can't happen, so much so that I was betting my friends a treat at ANY restaurant if it did (which of course eventually did not happen :P). But it made me realize, GSoC is not about how much you already know, its more about how enthusiastic and passionate and how willing to learn are you. A lot of stuff I was supposed to work on, I didn't have too much of a clue, and of the other things I only knew the basics.

In GSoC 2010, I worked on ThinkUp, a crowd sourcing platform by Expert labs, and developed a plugin for them which visualized the tweets and its replies and retweets on a map (http://expertlabs.org/2010/08/thinkup-contributor-spotlight-ekansh-preet.html). Not only the fact that the project itself was really exciting to me, I have always considered myself to be technically creative and this was just the type of thing I was interested to work on, ThinkUp is the official crowd sourcing platform of the White House and this was also a really motivating factor. The entire summer was amazing. I was mentored by people who had made a mark for themselves in the industry, they were well renowned and respected names and they had a really in depth knowledge of this domain. The knowledge and the professionalism of all the people involved was inspiring to say the least. This ended up as the project that I always talked about whenever I was asked about my favorite project in an interview.

In 2011, I worked for StatusNet developing a social analytics plugin for them, which visualized your social activity on StatusNet. It included visualizations for how often do you post, at what time do you post, how fast your followers are increasing, what platforms do you use to post etc. The fact that my mentor here was already fond of my work I did for ThinkUp (the project description mentioned ThinkUp and its visualizations including the map plugin) I guess helped me quite a bit to get the project. And since this was second GSoC, I was a lot more confident. It turned to be a relatively easy project, which was important for me as this was the summer break before placements and I couldn't give all my time to it.

In 2012, I worked for BerkmanCenter for Internet and Society, HarvardUniversity developing an entire data portraits (again visualizations!) web app. This was the toughest of the three projects I worked on. It involved analyzing one's social data, from twitter, to develop an understanding of the person - what they talk about, what they like, who influences them, who they influence, their mood etc.

For anyone preparing for GSoC, just remember a few things. Don't think that you don't know enough and there’s no point applying to GSoC, you'll never get selected etc. I felt pretty much the same way when I first applied. GSoC is more about how passionate you are about a project and how willing you are to learn, three months is more than enough time for you to learn a new language or a library or both and still be able to complete the project. If you've done any sort of open source work before, it helps, if it’s with the same organization you're applying for, it maybe helps a little more but even if you haven't, that is no reason for you to not apply. The worst that can happen is you might not get through, but even then you will end up learning a lot. So it’s a win-win situation. Secondly, be wise in selecting a project. Shortlist 4-5 projects that you really like, talk to their mentors on discussion forums and IRCs, see if the project is really what you thought it was and also make sure its important to the organization. And finally end up making proposals for only 1-2 projects (I personally sent only one proposal each time). Spend a good 4 to 5 days on a proposal and try to be as detailed as possible, include mocks, timeline and anything you think is important.

7.  Are you planning to do higher studies in near future?

I am not totally sure about higher studies but there's a good chance that I might. It all depends on where I can get to with only a bachelors and what is the best thing to do then. Right now I'm concentrating on my work.

8. Your class - IT 08 managed some of the finest placements and CAT results in the Class of 2012. How did the class environment helped in shaping what you are today?

NSIT is what it is because of its students. The students here are amongst the best in the country. Our batch, just like any other batch, had some of the brightest and the most ambitious people. There were the toppers, the hard workers, the quick learners but each and every one of my batch mates had something unique about them. All this intelligence and all this ambition lead to a never ending competition, sometimes healthy sometimes not so. College is very different from school, just as professional life is very different from college. But there's one thing that college introduces you too which is true for the rest of your life. It’s a competitive world out there, you must always keep moving forward. If your development stagnates for a little while, you'll have a hard time catching up.

9. What has been your most fun-filled moment in the past 4 years? 

Well there have been so many fun-filled moments for me in the past 4 years, it’s hard to pick one amongst them. But things like when we were left in the middle of the sea for 15-20 minutes by the 'banana-ride' guy because we pissed him off, or when we took the next bus out of Delhi as we had reached bus terminal and it was late at night and we just had to go on a trip somewhere have to be there at the very top.

10. Where are you based currently? How would you describe your current experience at Facebook?

I'm currently working as a Software Engineer in Facebook at their headquarters in Menlo Park, California. I have only been here for a very short time but it’s been amazing. Simply the feeling that what you're working on will impact a billion people is a great and really motivating feeling. The people you work with here, the ones you meet everyday, be it during lunch or in the corridors or wherever, are amongst the best there are in the industry. There is so much you learn everyday at this company. Also the fact that it’s so fast paced and open definitely makes it one of the best places to work.

11. Any piece of advice to your juniors? 

Code ! Don't just read a programming book. Code the examples, the questions and anything else you are not sure about. There's no better way to learn programming than to code things yourself.

Secondly, try to have at least one or two good projects. These can be projects with teachers or with organizations, any open source work or anything that you wanted to work on. Just make sure you learn something from them. It is not the ‘certificate’ of internship that is important, it is the knowledge gained and the learning experience. You should have worked passionately on the project, taken it to completion and learnt a lot during the process. You should be able to present it to the person sitting in front of you. I’m not saying that it is compulsory, but it is certainly a big help.

Lastly, never sit for a company thinking that you can't clear it. Always go with a positive frame of mind. There's no hard and fast rule that somebody you consider better than you must get placed before you or someone you consider yourself better than will only get placed once you're placed. So always go forward with a positive attitude, you never know, it might just be your day.


Netaji Subhas Institute of Technology

Azad Hind Fauz Marg, Sector-3, Dwarka, New Delhi - 110078
(An Autonomous Institution of Govt.of NCT of Delhi)

You are here: Home Training & Placement Student Experiences Placement Ekansh Preet Singh
RizVN Login