views:

180

answers:

2

Hi guys,

I got my masters degree in Algorithms and Logic (I also have a bachelors in Math) six months ago and since then I have been looking for a job. I am specialized in Graph Theory (thesis + 2 years of research) and I was mostly trained in algorithm design (via pseudocodes) and techniques, running times/space complexity classes / hierarchy, Mathematical Logic, Proof Theory ect. So besides my knowledge in Algorithm Theory and Graphs and my main skill in problem solving, I have NO hands on experience. So I am looking for an entry level job in the computer/internet industry thinking that I could start as a sw engineer/developer/programmer knowing C/C++, java (mostly from classes) and Python(myself) but mostly cause I know about algorithms and programming logic and I am really thirsty to learn! Yet, even though I get some interviwes, most of the times they end up asking me technical and practical stuff that you can clearly see from my resume that I wouldn't know of.

So I would really like to ask you. Dont they hire anymore entry level well educated people to invest on them by mentoring them and most of all by helping them gain the experience and work knolwedge they always ask for? Or, how come they expect from someone just out of school and theory to know how to answer to technical industry-realated-questions? At the end of the day I should have know before not to study and instead start learning and working on languages and technologies since I was 18 so I would save money and time.

On the other hand, I would really want to know whether my thought of starting as an entry level programmer/sw engineer/developer, so I could find my way through within by gaining experiencem is a good idea or maybe there are other positions (such as analytics, research engineer, data mining eng, or whatever else in this industry) you'd think my background could be a fit to.

I would really appreciate your opinions and advice, specially from experienced professionals, in regards to my concerns about my career options, direction/expectations and development.

Ps. I live in California

+2  A: 

Studying strictly math and algorithms puts you more in a position to do research than industry. I am in no way saying you couldn't go out into industry, but those fields certainly set you up for a more theoretical line of work than a practical one.

Formal methods require a great deal of logic and a good handle of mathematics. If you can find a company that makes safety critical software, that may be a good fit for you. Proving that the software will not violate any safety conditions and that the software will work as intended using a language like Z (pronounced Zed) could be your strong point in the industry as it is heavily math related and requires a great deal of logic and a good understanding of algorithms.

AlbertoPL
+5  A: 

Many large companies have graduate programs for this kind of thing. Generally recruitment is done well before you graduate however (up to a year or more before you start). Depending on the company, some will accept graduate program applications as many as 2-3 years after you graduate. You'll need to check each company.

The economy may make that a tough route these days.

I must say you've done yourself a real disservice by not doing any internships to date. Internships give you practical experience in the real world and often lead to job offers after you graduate. The fact that you've done no internships (in programming at least), the lack of practical programming skills and your apparent lack of direction are all things you're going to need to explain to a potential employer.

I say lack of direction because your question almost reads "OK, now I have this degree, what do I do with it?", which is backward. What do you want to do? Do you want to be a programmer? Or a research? Or something else? What area would you like to work in? I don't really get any of that from your question.

Let me ask you another question: you say you've been looking for a job for the last 6 months. What you have been doing with your time? Not only am I interested (because that's a lot of time that could've been spent programming) but you're crazy if you think an employer won't ask you that so you'd better have an answer for it.

The other thing I pick up from your post is you want someone to invest in you. But what have you done to warrant that investment? How have you demonstrated an eagerness to learn, the motivation to succeed and some direction?

Potential employers will be interested in your technical skills because the best programmers started programming long before they ever went to college and do it because they enjoy it in their own time. It makes you stand out (but not in a good way) if your CV clearly tells a different story.

Perhaps you should pick up a Web development language/platform/framework (assuming you either want to go that way or at least aren't against it). There are lots of ways of picking up small Web projects in say PHP and even volunteering at charities and schools and so forth (everybody needs a Website).

Basically you need to be a bit more proactive and have some idea of what you want to achieve.

As for your education, if the maths you did was in statistics and probability, that's useful. Statistical analysis and data mining are growing and in-demand fields. Applied maths (which typically means using differential euqations to model fluid dynamics and similar problems) is also useful. So is linear algebra (think 3D modellin, rendering and animation). Pure maths (manifolds and the like) less so.

cletus
Manifolds? That's applied if you ask me. My best subjects in my Masters year were set theory and model theory (which really should be called theory theory). I was rubbish at algebraic topology: all those homotopy groups verge on zoology ;-)
Steve Jessop