Bottom Line Up Front: Placement seasons are here in Indian colleges. This is going to be a long rant followed with some advice for those who are going through this.

Skip to what can be done? for advice if you don’t want to read through the rant.

Note this post is written by a Software Engineer, who has done only Software Engineering jobs and only applied for Software Engineering jobs so far. I went to BITS Pilani, so I may be speaking from a position of privilege. Comment, in case this echoes with you or if I am in the wrong. My point here is if the college placements in one of the leading engineering colleges in India is so badly done, I can only imagine what goes on in other places. This doesn’t account for the post pandemic job market.

Whats wrong with College placements in India?

Almost Everything.

Context

Lets rewind to July 2017. I had just finished an internship with Endurance International Group India(previously Directi Web Technologies) and I was supposed to head back to college for sitting for placements. I had a GPA of about 7.78 and was going to sit for first semester placements that means I was competing with those with mostly higher GPA than me. I had written the Google Code Jam APAC test and my rank was in the low hundreds, I believe 108 and was expecting an onsite round from Google. I had previously done a Google Summer of Code with Nmap and spent a summer doing web development for the Indian Redcross Society.

I had a thesis offer from Singapore University of Technology and Design. I was supposed to spend my last semester doing research in Singapore. I was a “practice school student” instead of a thesis student. So I had to get that changed.

Practice School: At BITS you do two internships, Practice School 1(PS1) and Practice School 2(PS2). PS1 is after the second year and covers two months of summer holidays. Its a paid internship, a student pays Pilani for the privilege and almost always makes no money. For the current academic year a student pays Rs 65k for PS1. PS2 is an internship that you do in one of your last two semesters in BITS Pilani. This is also a paid internship but for an entire semester and with good companies, a student pays for this as well but also makes money. Most Software Engineering PS2 students probably break even, or come out positive post Practice School. PS2 also leads to job offers, so its not all bad. They select based on GPA though.

Placements: For foreign readers. Placements are campus days in colleges, lots of companies visit colleges and people apply in bulk.

My Placement Story

how it feels like

So I got to college and soon received news of a pre placement offer form Endurance. I was happy, my experience at Endurance was nice. The people were great, the work was interesting. I was facing a dilemma, if I chose to accept the Endurance offer then I could only sit for placements with one company that paid more than 1.75 times of what I was set to earn at Endurance. Not knowing who was set to come to University, there was great information asymmetry. I chose to risk it and didn’t take the Endurance offer. That meant that I was eligible to sit for placements with all the companies that were set to visit BITS Pilani in the first half of 2017. I guess one can justify this by saying, that the placement process exists to ensure that most people are placed and if you already have a job you shouldn’t compete with others. While this might be true, I want to tell the reader that the job market is a buyers market(student looking for a job). Remember this, throughout the post and later.

Side note, you have to pay an extra fee to register for placements. One would think all of this would be included in the already high fees but it isn’t. I think I had to spend Rs 4000, in order to register for placements.

Placement in BITS Pilani starts with days. Day 0 would be companies offering significantly more money or possibly international offers. Day 1 would be big brands but hiring in India. Day 2 would be upcoming startups or smaller brands hiring in India.

As far as I remember there were three day 0 companies. I wasn’t eligible for one because of my GPA. One took applications but would get back later and was hiring for a position in Singapore. The last one, I think I got 27/30 test cases and didn’t make it to the interviews. Guess profile / GPA played a role there or others scored perfectly. I can’t be sure here.

I was fortunate to learn that Google had liked my APAC performance and wanted me to fly to Bangalore for an interview. I thought I could spend this month interviewing within BITS Pilani and then go for Google interviews in September. By going in September I would have more time to prepare, and also I wouldn’t have to trade companies coming to BITS Pilani for Google. The Google recruiting team in India and the BITS Pilani placement in charge convinced me that Google absolutely has to interview me in August. They convinced me(and two others) that I should skip Day 1 and head to Bangalore for interviews as this was my one shot to interview with Google. I am not even sure why Google contacted the University instead of me directly. So I went. I lost out on almost all of Day 1. Being at Bangalore I had the pressure of doing well in the Google interviews as I had already forgone 5 other Day 1 companies for this opportunity. This my friends is stupid. I was naive. You don’t have to be naive. Google is almost always hiring. You can and should be able to defer the interviews by a month easily. Be a bit more assertive, if you are in this situation in the future. I gave the interview, I didn’t do too well. Didn’t get a job, neither did the other two who went to Bangalore with me. So as of this point I had said no to a job offer from Endurance, missed almost all of Day 1 or been said no to because of my GPA and was waiting to hear back from that one Day 0 job.

The pressure was immense. Lot of people had already got jobs. I didn’t have a job. People were celebrating, throwing placement parties. I was eating food for free. That was nice I guess. I had a call with a senior from college, friend and quiz partner Sahil Gupta. He was really nice to talk to, he explained that I shouldn’t take the rejections/missed opportunities as self validation and I should go into the next round with confidence and that I skilled. Again, grateful for having a good senior reach out. I am also grateful for having supporting friends and family, no one ever said I was a in the wrong for not getting placed but people were supportive, most of the anxiety was self imposed.

So Day 2 came and I finally got placed in a startup in Mumbai. There was a party and I felt that I finally had a job. I wasn’t supposed to seek validation but I felt validated.

In parallel the Day 0 company had sent out a coding challenge. One that didn’t have to be done instantly, with a room of 100s of students. You could spend your own time implementing it. I did well in this, and I was invited for an onsite interview. Sometime passed and in September I went to interview with them in person. A few days later I was happy to learn that I had a job offer from them. A job offer with a day 0 company, abroad(Singapore) and probably for the highest salary(well things cost more in Singapore) in college for that year. I still hadn’t received a proper contract though.

In the background the, the placement cell said no to the startup in Mumbai on my behalf. I wasn’t even asked. As I had a job offer with a Day 0 company that paid higher and made the numbers look better, I was automatically assigned to it. Maybe I wanted to work for a growing startup, maybe I wanted to stay in India but my opinions weren’t accounted for and they made the decision for me.

Its worth mentioning that since entering college in late July, I had been visiting the “Practice School Division” almost every week begging them to change my situation so that I could be a thesis student instead of a practice school(corporate internship) student. Due to some weird arcane law apparently I had to tell the Practice School division an year ago that I would want to do a thesis instead of practice school. An year ago would have been the second half of my second year in University. How is a student supposed to decide what they’ll be doing an year in the future when they have only spent two years in University? I didn’t even know about this law. To me it felt like hitchhikers guide in the galaxy,

As you are probably aware, plans for the development of the outlying regions of the galaxy invoke the building of a hyperspace express route through your star system. And your planet is one of those scheduled for demolition.

(Shouts of terror emit around the globe.)

There’s no point acting all surprised about it; the plans and demolition orders have been on display at your local planning department in Alpha Centauri for fifty of your earth years. If you can’t be bothered to take an interest in local affairs, that’s your own lookout.

On the 24th of October after lobbying for months along with other students who were in a similar position they finally accepted our plea. I am guessing someones parents got involved, I don’t know how they changed their minds. I was hiking in Nepal, came back for the college fest and I received the good news. My professor in Singapore was grateful enough to be patient for months for me to accept the job offer. The admin at Singapore was quick and they processed a visa rather quickly. I was set to fly to Singapore on the first of June and begin my thesis in Singapore University of Technology and Design. Thanks, Siddhant Shrivastava for the referral and Professor Aditya Mathur for the opportunity. The only reason Sid knew of me was because I took part in Hackathons and would post stuff on Github and my blog, having a small online presence helps. Keep note of this readers.

So I am in Singapore, still haven’t received a contract or a start date from the day 0 international company. Its March already and I am anxious. The placement unit is not helpful at all. They say that they understand the concern. I don’t think they care, they have already released metrics for that Semester.

I am doing research, living the life and attending meetups in Singapore. A friend convinces me to do a talk in the Python Singapore meetup and then eventually convinces me to apply for a job as the company looked great. I have also applied to a few companies. I had also applied to Bloomberg in December as the company felt interesting and a friend from college told me they respond to resumes from India for jobs in London.

I get flown to London for the Bloomberg interview. I also visit Hungary interviewing with another company. All paid for. These companies and the Singaporean company are great at interviewing. They understand schedules can be complex and they allow me to interview when I want to, with some caveat that if I just keep dragging the positions might get filled. But they sort out visas, and do the interviews when its convenient to the both of us and not just them. Any who I have wonderful experiences interviewing with the above companies and end up with two offers one in London and one in Singapore. I pick Bloomberg in London.

Props were its due. My interview experience with Prezi, the Hungarian company was the best so far. It was with the application security team. They asked me to work on an assignment, we did a video call. Then I was invited to Budapest. I worked on a small project on the side for three days in the office. Visited the company socials, and had meals with the team. I didn’t get the job but the interviewers were kind enough to dial in and give feedback. They told me what to read and do more of to be better in the future. With a full time job I am not sure whether I’d do a three day job workweek interview, its five days with flying that you take off from your job. This was possible as Prof Mathur was understanding of my job search.

Its June and I still haven’t heard from the Day 0 company. I haven’t heard from the placement unit either. They are aware of our situation but aren’t doing anything about it. In August we get told that there will be a call in a few days where the company will tell us about the current situation. I am not stressed, I am happy going to London. There are others though who have been waiting for this job and have been counting on it for employment. We eventually learn that the company isn’t going to take us to Singapore. We also learn that they’ll be doing some training in India followed by tests, where some of the lucky ones(about 20%) would be eligible to continue working and would be moved to Singapore. I understand that the financial situation might not have been great, they are kind enough to tell us that if we withdraw our job offer then we’ll receive some amount of money. Already having a job in London, I say no to them immediately.

I have other interview experiences from after having a job. I had interviewed with Google again in 2018 for a position in London, that experience was okay. The recruiter was understanding, there was no false urgency. Google isn’t to blame, the Indian University Placement System is.

To be fair, BITS Placements end up placing a lot of people.

Getting back to topic

What was wrong with the above experience?

  1. College placements invert the job market. They create false scarcity. They rig it in favor of the companies instead of the students.
  2. The placement unit doesn’t care as long as their numbers look good.
  3. Some companies end up interviewing at strange hours in the night, say around 2 a.m. This is absurd, when you know the student has a class the next day. I am not sure how this is tolerated.
  4. The placement unit picks jobs for you, you don’t have a choice. What is this about?
  5. As the job market is rigged against, its a rat race. You are interviewing along with your classmates, in bulk.
  6. You are made to believe that this is the only set of jobs you can apply for.
  7. You can’t negotiate, the numbers are decided for you.
  8. This is a side. Companies in India ask for previous payslips and sometimes pay you based on your previous job. This is absurd. Its illegal in California but still all companies including big names do this in India.

What can be done?

As a student you should apply outside of college placements in addition to the college placements if you really want to participate in that rat race. Apply to interesting companies in India, apply to interesting opportunities abroad if you are open to the idea. Reach out to seniors on LinkedIn and otherwise, talk to them about their job experience. Ask them for referrals.

If you don’t like algorithmic interviews, you are not alone.Hiring without white boards is a Github list of companies that don’t ask white board questions. Its an ever growing list of companies. Definitely check this out.

If you want to interview with companies doing algorithmic questions, definitely leetcode before hand. Spend sometime solving problems.

Regardless of interview type, know a bit about the company you are applying to. Maybe practice soft skills questions with friends.

If you have a job offer, negotiate. Read this by Haseeb Qureshi and this Patrick Mckenzie to learn how to negotiate. Don’t wait for the job offer to read these, some of these things like “job offer stacking” require you to know about them before you start interviewing.

Don’t miss a day of placements in University for a golden opportunity. Be assertive, they’ll move the interviews if you are assertive enough.

Know that the job market is a buyers market. Its about you the engineer more than it is about the company. Know your options, apply when comfortable and negotiate.

In addition to the above I think asking for previous salary should be outlawed in India. You should pay on caliber and not based on what someone earned in the past otherwise if someone has a slow start they’ll take forever to catch up.

Make a good resume while applying for jobs abroad. The standard BITS Pilani resume has your picture, most jobs abroad don’t want your picture as pictures can lead to discrimination. Word your resume properly. If you don’t have a high GPA don’t mention it. Most places don’t care but someone might see a not high GPA and judge your resume.

Having some on line presence and being useful to the Internet helps. I am not twitter famous but if I was, I could simply get a bunch of referrals based on a tweet.

Enjoying programming and having side projects helps as well. Even if the company doesn’t explicitly care, you have something to talk about during the interviews and it reflects well. I only got my thesis offer in Singapore because of side projects. I only got the job in Singapore(with the startup not the Day 0 BITS Pilani job) because I gave a talk at a meetup.

Network and network some more. The only reason I became aware about applying to Bloomberg in London because a classmate wanted some help planning his trip to London for the interview. He knew that I traveled a lot and that I was approachable.

Don’t seek validation from job interviews. Prepare and hope for the best. A lot of it is luck.

External recruiters are good people! I am not sure how well this applies to University placements but I found my current job via an external recruiter. I knew about Palantir as a company but I didn’t think they’d accept my resume. My recruiter referred me and made the process a lot smoother. My recruiter contacted me as some friend told him that I might be looking for a job, again luck. They can introduce you to good opportunities that you didn’t know existed or could refer you to jobs that you know exist but you aren’t sure of applying directly to.

The last paragraph brings me to another point. Apply everywhere. A lot of people try to tick a lot of boxes in job descriptions before applying. The truth is you don’t have to. Don’t apply for a Director of Engineering when only a new graduate but feel free applying to most junior/new graduate job posts. Job descriptions can be arbitrary, they might add words to create buzz. They might add words just to make their job post long enough. Now companies are realizing this problem of checking all boxes and mentioning this on their job post more and more, so I guess things are going in the right direction.

You don’t need a degree to find a Software Engineering job. It helps but is not compulsory. Though for jobs in different countries where you need a visa having a degree or valid work experience in the field helps the company convince the immigration agencies that you are qualified for the job and should be chosen instead of others in the country.

Tangential advice. Don’t work for free. Not even an internship. Startups run by immediate seniors offering opportunities aren’t really offering anything. If they can’t pay you in cash, try asking for equity. You could do what they are making you do as a side project or do something more interesting. You could start your own startup even. Almost always ask for money for a job. Getting paid, at the least makes financial sense and sometime it implies that your work is valued.

In hindsight, Palantir worked out and so did Bloomberg and a few other job offers. College placements don’t matter.