
Ask HN - Need career advice - frog_leap
I am a java developer. For most part of my career I have worked in companies where I got to develop software which was mediocre. Not too good not too bad, just OK. This is not to say that I am a bad programmer or I lack the knowledge of good coding practices. I do have them and I try my best to stick to them. I also try to learn on my own in my free time. It is just that all the opportunities that I have got were quiet trivial - basic CRUD applications. Now I think its time to move on and do some work on serious and cool stuff - cause that is what I wanted to do. Stuff that really matters. Stuff that will be used by people. Perhaps a startup would be the right place or even may be a big company, bottomline is that the nature of work should be exciting.<p>However I have some trouble moving to other place. Wherever I go for an interview I get rejected. This is due to 2 reasons:
1. I don't have a formal education in computer science. So if they ask any questions regarding data structures, algorithms I get stuck. This sends a wrong impression.
2. Though I am a Java programmer and I think I am quite good at it, they ask questions about technologies I have not worked on. So they think I am just a dumb programmer. Should I have been familiar with all technologies related to Java? Should I have learnt a new language?<p>I am quiet desperate to move to a hard core techie place. But I am not sure how should I upgrade myself. I know I have to do some homework, but I am not sure what should I do which will get me to the place I would want to work. Should I start reading the computer science basics - what ever they teach at college? Even after that I am not sure if I will make through. Should I learn a new language or technology - even then there are lots of them and each company uses one or other - so it would be like shooting arrows in the dark.<p>Can some one provide advice on how I can revamp my career. I am ready to spend time to read stuff and upgrade myself even if it takes a long time for me.<p>There is also another issue. I am more looking towards startups as I think I would fit their culture well. However I don't know where can I find startup jobs. They are not available at monster or naukri. Even if they are they are sporadic. hasgeek.in and other sites don't have many jobs in java. Please advise on this as well.
======
rchiba
You say that you get suck on algorithms and data structures, and that you are
worried that your lack of a formal education may hinder your interview-
ability.

Well, fret not. Little of what is taught in college has any relation to the
types of questions asked in technical interviews. And although a lack of
degree may influence an interview in more subtle ways, most interviewers are
far more interested in your technical ability. So, scratch that nagging fear
off your list, and proceed with the following steps.

Step 1: Apply for lots of interviews. Yes, you will fail many of them, but it
will also up the stakes and encourage you to take steps to improve. It's easy
to want to learn. Having deadlines and commitments makes it harder to push
things off to another day.

Step 2: Keep track of every question that is asked in an interview. Make a
spreadsheet of places you've interviewed at, and the questions they've asked.
Begin to reflect on your interview, and jot down any terms you weren't
familiar with.

Step 3: Learn what those terms mean. Answer those questions you couldn't
answer before. And most importantly: Understand what the interviewer was
looking for in asking that question. Understanding of OO? Algorithms? Systems
design? An understanding of the technology stack? Categorizing the questions
in this way makes it far more manageable to digest. These are the categories
you want to study. Wikipedia, Stack Overflow, Books. Go.

Step 4: Repeat step 1. (You have now caught up to the average university
graduate)

------
bdickason
I can't help you with the programming advice, but I would start looking in
these three places: 1) Startuply.com - There are a decent number of jobs that
teeter on the edge of corporate/startup here and you can probably find a few
decent companies.

2) <http://jobs.github.com/> \- There is a small but nice selection of startup
dev jobs here. Most of them seem to be ruby-ish but you should be alright.

3) <http://careers.stackoverflow.com/> \- You should find alot more Java jobs
here. There are less startups but still a bunch of cool roles.

As for how to deal with companies asking you with other technologies, you have
a chance RIGHT NOW to apply the whole iterative process to your interviews.
Each time a company asks you about a tech in an interview, go google the crap
out of it, play around with it, and learn a bit! Even if you spend 48 hours
REALLY learning one tool, by the time you do 10 interviews you should be
relatively prepared for the future interviews. As someone who hires alot of
engineers, I would love to hear someone take this approach as it shows they
really do care about the language, the community, and will learn all the new
stuff we throw at them on the job.

------
sahil_lmn
> However I don't know where can I find startup jobs

Have you looked at the monthly "Who is Hiring?" thread here on HN?

<http://news.ycombinator.com/item?id=3181796>

This post might be useful on transitioning your career:

[http://vermasque.blogspot.com/2011/07/on-quitting-your-
progr...](http://vermasque.blogspot.com/2011/07/on-quitting-your-programming-
job-to.html)

What country are you in? It might be more difficult if not in the USA.

------
dholowiski
Why not find an open source project and start contributing to it? It would be
a great way to learn new stuff, and to get known in the 'community' (a great
way to get a startup job).

Or start your own project - build something purely for fun. Maybe even start
it in a different programming language (the one the interviewers keep asking
you about).

Do something fun - that's the best way to learn and the best way to get
inspired. The rest will come naturally.

------
fourmii
I can't help you with the programming advice, but depending on where you are,
there are tons of startup, entrepreneur blogs around that also have jobs
boards. Here in Boston, I follow: <http://venturefizz.com>
<http://greenhornconnect.com>

Not to mention HN has their job board.

Good luck!

------
petervandijck
It sounds from your post as if you don't know how to learn new stuff.

I'm sorry, but that makes you unhirable for the kind of exciting projects you
want.

What stops you from learning a technology this month? Say, MongoDB. Anything,
really.

