Hello, I am a first year student in a BS Comp Science course at a Tier 2 Indian University.
I am very frustrated and scared due to what I have read and observed in general about IT/CS jobs. I just need you guys to give me some guidance about what i should pursue.
The job scene in India is normal. Most jobs are with the Big outsourcing Consultancies like Wipro, Infosys et al. After talking to family and friends in the industry, these jobs seem like a scam, pretty much same tasks day in and out. I dont want to be a billable warm body.<p>I on the other hand, have studied computers and the science behind it since i was 12.I am good at development, and yes i have also read TAOCP thrice and i am well versed with algorithms and low level hardware and architecture, In short, i am not a code monkey. So now i am in a dilemma as to what i should go deep into? I love infrastructure stuff like Networking/Sysadmin/Build and release stuff. And since most programming jobs in India are mostly boring java/.net jobs, i want to avoid them.<p>Can you guys guide me as to what specialization i should go after. And since it is India, I will need certifications to prove my worth. I was thinking of Doing Red hat certifications and cisco and juniper certifications(just to get my foot in the door). If you guys have any suggestions, I would really be helpful if you guys could help me out.<p>My current skills:
Programming: Python(love it) , Java (safe backup for job), C/c++ (mostly QT), mostly all types of shell scripting.
Frameworks: app engine (both python and java), django, sql alchemy. and all other java frameworks starting with 'J' :)<p>What i am intrested in:
Networking Hardware/ Planning/ Design.
System Planning/ Design / Maintainence. (any platform)
mostly data center jobs.
'i have also read TAOCP thrice... i am well versed with algorithms and low level hardware and architecture... i am not a code monkey'<p>Keep telling yourself that, but if you are a developer, you will be a "code monkey" in one way or another until you've worked your way up a bit, no matter how good your background is.<p>I've worked with PhD's and Master's CS students from around the world that have written bad code. We all do, but the less supervision and review, and the less people care, the worse the code. At the same time, it took me several years to realize that what people build up to be the ideal can be just as much of a waste. (Your team spends all that time working with the perfect process, but you've added overhead that never needed to be there, because the customer doesn't care. Think about the early success of Windows. That was a product of the lower end of "good enough" coding/design.)<p>But despite aiming for "good enough", you need to go through the rest first. Good practices and techniques are learned from working with good people. You should be so blessed as to have a great mentor as a junior. And as a mid-senior-principal/architect, you should be so blessed as to have great people working alongside you at least at some point (not big names, but just people you respect quite a bit at least) and in good environments (places were you respect the process as one of the best in the industry as far as you are concerned doing something you love).<p>Anyway, again based on what you said, if you have the opportunity to go into firmware, device drivers, OS development, etc. you might look into that. You might need to go out of the country, though (take a chance!). <a href="http://www.indeed.com/" rel="nofollow">http://www.indeed.com/</a><p>You could also (assuming you have the money, which I'm pretty sure you do) continue education and go the engineering route if interested. Chip design, etc. can make a good amount of money, and your skills probably wouldn't go to waste necessarily.
There are two popular options for Indian CS students:<p>1) Write GRE, apply to some good American CS grad schools, finish the Masters degree and start working for your dream startup in Silicon Valley or any of the top software shops. This will also help you with getting a work visa (having American Masters is an advantage).<p>2) Alternatively if you would like to stay and work in India for a while, there are some great places to work within India. You can work for top-tier global companies like Intel, HP Labs, Google, Yahoo, Adobe, NetApp. I'm not too much into the Indian startup scene but there are some interesting early-stage internet startups like Flipkart. I used to work with the Hadoop team in Yahoo Bangalore (90% of the map-reduce team is in Bangalore). Usually these MNCs have the same kind of work culture (for the most part at least) in India as their American campuses. You don't have to engage in Visual Studio/Eclipse masturbation if you work in one of these places.<p>Re: certifications - if you want to work for the likes of Google, they don't care at all about certs. Since you're a first year student, I would instead recommend you try to get an internship at one of these places. Getting a job offer with the same company after an internship is pretty easy.
Hey DevCamp Pune is happening soon. Attend that. I'm sure you'll learn some cool stuff there or atleast meet interesting people.<p><a href="http://barcamp.org/DevCampPune" rel="nofollow">http://barcamp.org/DevCampPune</a><p>I'll be out of college soon. My tip would be to attend local developer events. I was surprised about how a lot of guys on HN and #startups are closely knit. Then figured out that they meet frequently at local developer events. So I started attending local events at Bangalore, and made a lot of friends here. Also I'm going to give my first talk at an event tomorrow (not actually a full talk, but I'll be pitching in for one topic in another guy's talk). Meeting guys face-to-face pays off. Trust me, it's cooler than meeting some guy with the x9dzc nick on IRC and saying Hi.<p>And for god's sake, you just got into college, so don't start choosing your tech stack right away. Try out as many things as possible. Lua, ChucK, Orc, whatever. You won't find these awesome 4yrs that easy anytime later in life.<p>There's nothing called "monkey jobs". You find out why when you go broke and need money :)
I faced the same issue a couple of years back. As I did my engineering from a not-so-reputed university, it was hard for me to even get a "monkey-coder job". I eventually joined Infosys, learnt some good stuff and now I'm an independent developer working on an idea of my own.<p>Two good things came out of my working at a big company were money and a better understanding of what I wanted to do. Also, the thing about service companies offering only boring coding jobs is not entirely true. Most of the work they do is boring, yes. But, they also work on some cool stuff. You might also get an opportunity to work on huge applications which can be a great experience.<p>Personally, I would be reluctant to spend more money on formal education in India. The top-tier universities are good, but the rest of them are not even close. As you are interested in hardware/networking design/maintenance, you should probably look for a job at indian managed hosting providers like netmagic.
If you are looking to stay on and work in India, it's probably a good idea to go out looking for people and companies doing interesting work. I'm sure there are some.<p>Where are you based?<p>I hear there is a good startup scene in Bangalore. I know at least one friend who's recently moved there to set up his startup. I can put you in touch with him.<p>I've even seen some incubator programs (being touted as "India's YCombinator"):<p><a href="http://www.iaccelerator.org" rel="nofollow">http://www.iaccelerator.org</a><p><a href="http://themorpheus.com/" rel="nofollow">http://themorpheus.com/</a><p><a href="http://www.paisa.com" rel="nofollow">http://www.paisa.com</a>, based in Pune, is an interesting company and I think they are working with some interesting technologies too. I exchanged email with one of their founders recently and they sound like fun people.<p>This old thread might be useful -
<a href="http://news.ycombinator.com/item?id=54085" rel="nofollow">http://news.ycombinator.com/item?id=54085</a><p>Feel free to drop me an email.
Dude, University doesn't matter.
Better you score in GRE, better university you get.<p>Regarding you question. If you are really passionate about working on product and not consulting, Learn more than what is taught in class, contribute to some open source projects. Apply some universities in US. I don't think startups really care which university you come from as far as you are a real hacker.<p>And if you want to stay in India (which is not at all a bad idea), you can join some product based company there too. Or may be start something of your own. Since you are still in school, it's worth trying out.<p>And just FYI education in India is not as bad as you think. (I did my Bachelors in India and Masters from one of the top ten universities in US).
You are not a code monkey. You have read TOACP thrice. You love programming in Python. You love networking/sysadmin/build and release stuff. If all the above is true, there is really no value in doing Red hat, cisco or juniper certification. If you love programming, contribute to open source. People will notice you when you work on open source projects. Then by the time you finish college, you might get some consulting work as a freelancer. Once you are get some money doing consulting, try to do some simple paid webapps. You would also be familiar with what people want by that time.
Get involved with open source projects. Get noticed in the community. When you're out of college, you could use the network you build in the communities to land you a job.<p>Red Hat does have an office in Pune, you know that -- right?
What you are looking for in India is product-focused company rather than a service focus company. A product focused company will try to turn your hacker skills into engineering skills. My company ReaMetrix is a biotech company but we make instruments as well. We do a lot of prototyping in python along with web, firmware and image analysis. You would be exactly the kind of candidate we would look for. Also knowing what Hacker News is a big plus.
We might have something interesting for you, product development role in Bangalore. Didn't see an email address on your profile. You can reach me at nc at appspark.us if you'd like to know more.
There are a lot of product companies in Bangalore, Hyderabad,Pune.
I suggest you join communities like Barcamp, DevCamp, etc. Sign up for BarCamp Bangaore and you should get all that info..
Apply for a job at Amazon Bangalore. They have a team that works on Amazon Web Services platform.<p>For hackers, there isn't a better job in India than to work on AWS cloud computing platform.
For datacenter jobs, look up E2E Networks. They are a cool bunch and hiring as well.<p><a href="http://e2enetworks.com/" rel="nofollow">http://e2enetworks.com/</a>
What do you mean by a 2 Tire university? Does it mean like a deemed university but takes admission from state level entrance tests? Then nice to meet you, I am also in such a situation (but doing ECE).<p>I was just wondering do we have only a CS hacker scene? I mean I am more into hardware, embedded systems and such, do we have communities for that? Also are there any such communities in or near Ahmedabad (or Gandhinagar).