Hacker News new | ask | show | jobs
Ask HN: Requesting HN'ers to give me Career advice
15 points by Absolute0 5833 days ago
To start with I have started to doubt if at all it is possible to have a career of a software developer/C.S. researcher without any glass ceiling.

Here is my case: 1: I am 22 years and 3 weeks old

2: I am doing Masters at top 7 school in C.S. (and by the time I graduate I would still be 22 years and 11 months old)

3: Even though I am interested in C.S. research, I am scared of doing Ph.D., if I dont get into top few universities.

4: I did my undergraduation in a hard engineering subject in a foreign country. (i.e. I am Fresh of the Boat Alien)

5: I am really good at C.S.,I have authored few papers in a reputed international journal (About application on machine learning in my undergrad field) + presented a poster in well attended C.S. conference, while getting an NSF fellowship for the same. Plus currently I have a cool internship at a billion $ market-cap Company, where I get to work on Hadoop and stuff.

Now here is my problem: I love solving problems, unlike people who got interested in programming by making websites, I got amazed by its ability to solve problems by computation. Hence I dont want a job which involves significant amount of (for lack of appropriate term) enterprise fizz-buzz programming. I would love to become an Analyst in company like McKinsey or Bains or BCG etc. Though such jobs are extremely hard to get My beloved other option is to join any of Google, Facebook, Twitter, LinkedIn, Microsoft. These again hard if not harder than above ones.

This leaves me with three fail-safe options: 1: Join a startup (I dont mind low salary, since my major objective is to pay back my loan + I am low maintainance person), however startup rarely take student on F1 [yet I can work in US for 29 moth post graduation without H1B]

2: Join a PhD Course after a year of job or right after the degree.

3: Work on Application development job for three years and then try applying for an MBA.

My Final Aim is to get an MBA from a really good university. This is in turn because over course of a year I have realized that except for the top 10 tech companies it is very hard to grow as an engineer/developer. I totally resent the comparison with the whole IT guy, which I routinely get in my current workplace, where I am doing far important and useful things.

Lastly I would love to get a Quant Job, however entry level jobs in Algorithmic Trading, even for developers seems to be missing. And all I can find are jobs that require an experience of 5 years in Java.

Please help me... Thanks

8 comments

OK, let me try to answer/comment on what you said. Excuse me if some of these sound blunt.

1. Your age is irrelevant.

2. Working at a management consulting company as an analyst is almost the definition of enterprise fizz-buzz programming. I haven't met any real hacker who works at those companies, and on the contrary I know quite a few who resent their IT jobs at such companies.

3. Quant jobs are also mostly dull, although if you get in a good place at a higher level, you might work on interesting stuff. If you're on the systems side of things, then high-frequency trading places have interesting work on optimizing execution times. However, the high pay at quant jobs is like cocaine -- you'll find it very hard to quit, even if you see more interesting jobs.

4. If you actually want to be a technical person solving problems for more than just the next couple of years, there's no need for an MBA these days unless you're NOT at a top-tier technical place. The better places like Google, Facebook, etc. will let you get very high up the corporate ladder without an MBA, and not having one somewhat innoculates against being pushed into more management-y roles.

5. It's hard to judge what your abilities actually are. You didn't mention anything about programming projects you've done (COMPLETED), which is one of the biggest pieces of evidence that you are good and capable at hacking. On the other hand you do mention accepted research papers at a good venue -- if the journal is actually good, then this will be an ENORMOUS help in your getting into a PhD program. A quick recap, in case you're unfamiliar about what matters for PhD admissions:

* Evidence of research ability. This is basically the only thing the top schools care about. The way they judge this is:

    * Previous papers published, and the level of the conference/journal they
      were published in. You (perhaps) have this. You are automatically above
      90% of applicants.

    * Recommendations from good researchers. You're at a top 7 school, and you
      did research. Hopefully it was with someone who (a) got to know you well
      and (b) was impressed with your work and (c) are themselves known as good
      researchers to others in their field. If so, you're basically in at just
      about any place you want, as long as you don't fuck up in some other
      category.

    * Grades matter somewhat if you're at a known good school where the
      academic standard is tough. It's far less important than the previous
      two, though.

    * As long as you don't say something completely idiotic in your essays,
      they don't matter.

    * General GRE scores don't matter at all, as long as you're above some
      fairly low threshold. Subject scores don't matter at all, even if you're
      only at the 50th percentile.

In summary, you have a very good shot at getting into a good PhD program, if you're accurately self-assessing your publications/school reputation. Also, it's much easier to get into a PhD program straight from undergrad since your recommenders will remember you best, and often working for even a year really dulls your desire to go "back to school".

While theoretically PhDs are internships for becoming a professor, in practice less that 50% continue on to academia in CS, so you shouldn't view it as a negative even if you eventually want to go to industry. A PhD will open doors to top research labs like Microsoft/Adobe/Google/Mitsubishi Research, where you'd get to work on cool, tough problems. Getting a PhD at a top place also requires many of the same skills needed for startups -- self-motivation, getting stuff done, working your ass off, being able to present your work well and "sell it", being effective at choosing the right problems to solve, solving them, and being able to communicate your results, etc.

On the other hand, it is a large time-commitment -- at least 4 years and perhaps 5-6 -- and your experience is largely determined by the quality of your advisor -- both technically and at a personal level how well you get along with him/her.

6. Your visa issue shouldn't matter much for big companies, as they all routinely help their employees get better visas and some even start them on the green card process. However, for startups, this could be a problem, depending on how much risk you can handle. 29 months is not necessarily going to be enough, and I don't know how easy it is to get a visa upgrade while at one.

Reply to this comment if you need further clarification or have more questions.

HI, Thanks for your reply

1: Regarding PhD Programs, Getting in a good PhD Program wouldn't be that much difficult for me (I have a decent GRE score 1380) coupled with demonstrated research interest (via publication and paper).

However I have closely looked at life in the Academia (all my undergrad friends are doing PhD). And the Advisor problem is really terrible, since a lot is determined by your choice of advisor alone. Finally regarding working in a Lab of Google/MSFT/ or Academia is what I am trying to avoid.

I have this personal theory that I should couple my technical knowledge with Managerial one to obtain a position where I could solve practical problems. Research, Conference and Publications are fun, but over the years I have been amazed at large amount of publications that are hardly implemented in real life (if at all they are implementable). The other Post-PhD issue is that my stipend (with 50% saved) wont be enough to completely pay of my loans (my parents have enough money but I somehow dont wish to burden them), Also the current Visa rules do not allow me to start a Startup post PhD so The employment issue remains. At best I can hope is to get an Associate level jobs or Qunat ones at consulting firms Post-PhD.

Regarding your comment about Quant jobs being dry (conscientiously), sure they are but they are also exciting in a way You can literally see performance of your algorithms in term of monetary value.

Regarding my publication they were in a journal which is considered top in my field and published by an American non profit academic body, with its first issue being published around 100 years ago. About my programming skill, well I can tell you that I can understand and write code. Its hard to give out any information here without compromising my privacy.

Regarding 29 months figure, if i have a job for say 2 years I would be able to earn enough to pay most of the debt plus would gain enough experience required for a B-School. That how i did my mental calculation though it is likely wrong.

To summarize 6 years into the future I want to work at a position where I could be making significant decisions that would affect products / Services / lives of people. A perfect example would be Program/Project Mangers at Google or Facebook.

I see that you are looking for something quite different from what I expected -- you are thinking more along management lines than technical ones ("Program/Project Managers at Google/Facebook").

You're right that a PhD is probably not for you and MBA later on might in fact be what you want.

So I'd suggest you maximize your chances of getting into a good company right now that you could see yourself in for a few years, which would let you get into a good B-School.

Also, since you need the money to pay for loans etc., joining a startup is not for you either. Most startups will not pay a high salary for employees, and the visa issue will remain. Also, unless you start a company yourself, I'm not sure how much of a management role you'd get, since typically the founders will be the ones directing the major decisions.

I can't really say much else as this career path is quite different than the ones I know best, but I wish you all the best.

P.S. Regarding research being implementable -- it depends a lot on the field you're in within CS. A lot of graphics advancements do in fact get picked up by industry, and fairly fast as well (6 months to an year). However, in general the commercialization of research happens in one of three ways:

1. A researcher is at a research lab (MS/Goog/etc.) and passes it to a dev team at their company. Examples are PhotoSynth at Microsoft or Adobe's Seam-Carving paper.

2. An academic researcher starts a startup with their research to commercialize it. Example: google.

3. Some company seeks out and implements promising papers they see from academia. This is rarest, but for startups could provide a huge competitive advantage.

I think it's unrealistic to assume that other academics should implement and/or commercialize their research -- it's a very time-consuming process and that's generally not how they want to spend their time. Coming up with new ideas is their job, and naturally they will try to optimize for that.

Thanks a lot for the reply Yup I did not mean that Non - Commercialized research was unimportant. Trying to get a job in a good company seems to be the only option for me. Thanks again for the discussion
Sorry for second reply: When I say Analyst I do not mean I.T. Analyst or Technology Analyst. It is along the line of Management Consultant Analyst. Or Business Analyst.
My feelings... If you told us you were the author of some amazing open source project that solves some impressively difficult problem in your area of expertise, then I'd believe the BS about how smart you think you are. You don't get into companies like Google or Facebook right out of college just because you think you are smart or because you have an impressive education. You need to have the complete package, and that includes tangible experience- by that I mean experience you have something to show for- and great communication skills.

It sounds like you need to improve your immigration status to achieve your goals. Seems logical that you should focus on that. Are you working on open source projects that exploit your abilities? If you are so hungry to solve problems then do it for free for a while. You will get noticed by important people if your work is good. If you get a good opportunity, then take a job that will stand out on your resume. Do your interesting work on your own time.

I generally don't like to harp on the open source thing, but it is the perfect mechanism to vault you into the position you want. As far as your age is concerned... yes, age is most definitely a factor. The fact that you haven't even finished your education and already have a laundry list of jobs you have no interest in shows quite a bit of immaturity. Your post read like an episode of Property Virgins.

I remember following a guy named Jose Valim during google's summer of code a few years ago. The kid was completely unknown, but made a name for himself very quickly in the ruby world. He took on many open source ruby projects to help solve common problems for the rails community. The kid just finished his phd and is already on the rails core team. I'm amazed at how much he's accomplished in such a short period of time. That's the kind of guy I look at for inspiration. He doesn't waste a second, he just gets shit done and gets it done well. If you can focus on that then all the other details will sort themselves out. You need to create your own opportunities.

Good luck!

Thanks

Regarding laundry list of jobs: I dont think there is anything wrong in determining what I feel is the best suited job for me (based on my current self (mis-)appreciation. Plus never have I stated in my post that I am Good enough to become a Google Engineer or FB Engineer. [I just mention it is really hard]

Finally Open Source is a good alternative to display your capabilities. But the fields in which I currently work [Machine Learning/Data Mining], writing a correct code is just a primary and non-significant step. While coming up with a novel algorithms is considered as a significant contribution.

I recently tried implementing an algorithm which I felt was interesting in my favorite language and distributed on git-hub. however I still felt [note I might be incorrect] that this sort of work was not valuable enough in my area of interest [again not expertise to be humble]. I can try to show my programming skill via my grades. But Open Source isn't that much important in my case.

Thanks again for your views

These days, if all you have to show is good grades, I don't think you're going to achieve the immediate success you are seeking.

You see, as the parent post stated, there are young kids who are knocking balls out of the park, so to speak, in the actual real world of open source. These are the people you are competing against. If it is your perfect marks in school vs someone that is pumping out good code on a real-world open source project, and (perhaps in an interview) you give me any sort of a feeling that you don't respect his work, or consider it not particularly relevant, I would send you packing in a heartbeat.

I think you are missing the most important point, massively.

Again you miss my point. Consider Machine Learning. There is an amazing open source software called as WEKA. however contributing to WEKA isn't as much significant as say presenting a significant work in ICML or NIPS or writing a paper in JMLR.

Open Source is amazing for programmers, but for someone who wants to develop say a novel recommendation system or special Computer Vision algorithm. Open Source participation is secondary. Also in many case ML algorithms tend to be trivial in their implementation.

Also my time is limited, I could try getting involved in Weka and implement recently discovered algorithms in it Or I can read papers, explore different datasets and try to come up with new ideas. Second case makes more sense to me.

All I am saying is that it makes more sense for me to display my capabilities in developing better algorithms rather than ironing out their implementations.

Well, if his dream really is to work for McKinsey, he's right... they care more about grades then they do about open source contributions. However, given his preferred career path I don't know why he's studying computer science at all. He should be studying economics and finance.
Thats exactly my problem, I cant start studying economics and finance right away due to financial/immigration reasons. Additionally I do believe I have acquired some skills over last few years in specific areas within cs. I am trying to explore option which would allow me apply those skills for next few years after which I can join a good business school. Certain jobs [Including startup] tend to be favorable if one is planning for business school later in life. I am trying to find those options.
McKinsey/BCG/etc don't just hire "economics and finance" students (neither do the banks), that's just an urban myth. CS is fine for both, you do need relevant work experience + a good uni though.
Right, but why bother with CS if you don't need it and don't want to do it anyway?
I fully appreciate you have a language barrier, and have considered that when reading your post; maybe I'm wrong but my first impression is that you are yet another young uni student with a big ego, no notable accomplishments, and absolute certainty of greatness and success.

> Here is my case: 1: I am 22 years and 3 weeks old

> by the time I graduate I would still be 22 years and 11 months old

Why are you so concerned with your age such that you think it is somehow important to be precise to the level of months and weeks?

> I am really good at C.S.

yet...

>I am scared of doing Ph.D., if I dont get into top few universities.

Why would this scare you? If you are as good as you seem to think you are, your degree will be a footnote on your resume within years.

> I love solving problems, unlike people who got interested in programming by making websites

It seems to me that is an insulting statement..are you not (loosely) implying most(?) people in CS programs are there because they want to "build websites", or in other words, aren't nearly enlightened as you.

> Hence I dont want a job which involves significant amount of (for lack of appropriate term) enterprise fizz-buzz programming.

Yes, this is a totally valid point, no complaints here.

> I would love to become an Analyst in company like McKinsey or Bains or BCG etc. Though such jobs are extremely hard to get My beloved other option is to join any of Google, Facebook, Twitter, LinkedIn, Microsoft. These again hard if not harder than above ones.

My honest interpretation of this is, you want to get wealthy, ie: you're not in this field for your love and passion of it, but because of greed. That's the feeling I get from what you say, reality may be different.

> My Final Aim is to get an MBA from a really good university.

My personal opinion, but this is not a particularly honorable goal in life, at least a first goal....especially considering some of the stellar ideas MBA's have burdened the world with in the last 5 years.

> Lastly I would love to get a Quant Job

Again, just my opinion, especially at your age, and especially if you are as smart as you think you are, can't you aspire to something more than this?

Maybe I have the totally wrong interpretation of you, and I honestly don't mean to be rude, but from what you've said, you seem to me to be the type of person that has specific career goals and I would be afraid that you would walk over top of anyone that stood in your way to achieve these goals...like someone that wants to climb the ladder to the top and anyone that gets in your way better watch out.

Maybe I read it wrong.

I agree I sound like someone big ego. However all I state in this post are my expectation, probably I will fail or die tomorrow while crossing the road. yet till now setting highest expectations has worked for me.

Scared of Doing PhD: The scare is due to the bureaucracy involved + unbreakable commitment for four years. One of My best friend got 3rd [last] option as his advisor, which means he will have to work for four years with him. Also being an alien student complicates the matter, you just cant say bye after an M.S. degree. That is my source of fear and not the research it self.

Regarding Solving problem: Sorry but In fact I was talking about people who are naturally drawn to programming the true and best top coders who love to code. [I am not that kind] When I said I wanted to solve problems, I meant that I started with Matlab to perform computation, When I realized its shortcoming, then I moved on to Python and onwards. Thus my drive for coding is generated by problem at hand. The Way i look at it Programming is a tool but not a pastime, As far as websites. I created a small webapp which was part of my project on Google App Engine few months after it was introduce. Thus i mean no slight to the coders.

Regarding the Greed Part, to be honest yes; I do feel a need for Monetary success. But I have met few Analyst and People who work in strategy or product development. And looking at their work I feel that they are much better suited at making significant decisions. A Startup provides similar opportunity, but again being an Alien student it is difficult to participate in the experience.

Regarding the MBA: An Intern from a One of the best business schools works along me at my current internship. When I look at the job she has been assigned. I realize that MBA is essential for getting those kinds of responsibilities. E.g. My current work might increase profits by [Best case - Impossible] few percents but her work could open a completely new segment. Now this is possible by gaining experience in a field yet it takes several years and significant office politics is involved.

Regarding the Quant job, it is a last as well as completely unrealistic option.

Thanks again for your comments.

I've got to say, you are truly a unique guy, I really hope you stick around here and give us updates on your progress.
Here is a recent post by someone else on HN http://news.ycombinator.com/item?id=1467116

To quote that guy """

Thanks for the advice. I'll definitely listen to the Merlin Mann/John Gruber talk. I agree that money doesn't come without producing value first. I guess I was just a confused engineer frustrated at the slow growth rate rather than thinking about the value I can produce. """

And he works in an Top SF company probably Google/FB etc! I am realizing the same thing before and trying to design an appropriate career path.

My recommendation is to go the start-up route for the following reasons:

1) You will be able to solve interesting problems more so than a large company which at least early on will have you doing small iterations on what they already have

2) You will be exposed to the opportunity to get business experience of a type much more valuable than what you can get out of an MBA. Get an MBA for the network, not for the academics, and not if you want to solve interesting problems in the CS space

3) you will develop the type of valuable experience that all those job applications you are looking at want. Even if a start-up fails, you will be able to point to an interesting thing that you helped develop that will help with the job search in the future

Take this advice with a big grain of salt. Do what YOU want to do, like solve interesting problems that you have passion for without worrying about where it will lead you. If the problems are interesting, and the solutions are awesome, you will end up in a great place. If you go build something cool that you can show to start-ups, they will be much more interested in talking to you than if you are just a cover letter + resume combination.

Where are you located? If you are in the SF Bay Area I'd be willing to talk to you about opportunities around here.

no I am in Greater New York City area.

Yeah Startup is interesting prospects. Also my poster was mentioned by a VC in UK in one of his blog posts (After I pointed him out that i had similar published ideas with working code)

However startup as alien student is really difficult, I had talked with professor who teaches entrepreneurship at my school.

It may be difficult, but there are always exceptions. Shoot me your resume vladik at rikhter dot org. I know of a few startups around here that may be up your alley, if you're interested I can pass your resume along.
Ha! I wonder if you're at my college -- I'm a PhD student at Columbia.
I am actually staying in a Columbia Dorm as part of my internship. Though I am not from Columbia. I am staying in Carlton.
Are you doing your masters at georgia tech, doing your internship at Yahoo! and an indian from IIT?
No. I am from India, though not from IIT. Yet my undergrad school was very specialized and as good as IIT [in that subject alone though].
I don't understand the secrecy. What stops you from telling us you undergrad school?
In fact, I'm more curious is I'm correct about gtech and yahoo.
no dude. If you are so interested post your email id. I will send you a mail from my account.
click on the website listed in my profile, and then on my name on the site.
Reading your responses below it sounds like you want to work on interesting problems that have a quick turnaround in terms of real-life implementation.

I'm in a similar situation and I'm looking into doing a graduate degree in Operations Research (OR) or Industrial Engineering, which is usually offered either in Business schools or Engineering schools. You essentially do research on solving real-world problems with quantitative methods.

Many of the OR graduates (even those with PhD's) end up not in academia but in business. If you have more questions feel free to email me.

An interesting option is MBA-PhD in OR from Stern NYU. Which is something i am seriously considering. I have looked at a profile of a guy there who did MS CS. Worked for topcoder or did research about it. And now studies in Stern. This could be the golden mean which i seem to be looking for.
The only advice I can really give you is to give working in the real world a shot before going to more school. You're probably already familiar with what it's like to be in school. Unless you get really lucky, finding out where you belong is more of a process of elimination than anything else.

So my advice is to try all three of the options that you ask about. Once you've given those fields a try, you'll know if that's the place for you or not.

Regarding algo trading, here's an interesting thread on it at Reddit:

http://www.reddit.com/r/IAmA/comments/9s9d7/iama_100_automat...

The OP is pretty cool to PM about it too.

Thanks for the link