Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm doing my 3rd year CSE Engineering. I guess this is the right time to ask this question!

As in the next year, I'm going to do projects, "get my hands dirty". And there is only few days left out, as I know many people in Stack Overflow are working in Software field, I thought to ask these question.

  1. Does the project that I'm doing in my final year need to be excellent? If so, what kind of project to do? And how do you say that the project is excellent or not?
  2. Writing the code is very fun and serious at times. But the code should have a good algorithm?
  3. And mostly in any software companies interview, what kind of question they ask?
  4. Not but not the least, mastering in any particular language speaks in interviews?
share|improve this question

migrated from stackoverflow.com Mar 4 '11 at 10:30

This question came from our site for professional and enthusiast programmers.

closed as off-topic by MichaelT, jwenting, GlenH7, Bart van Ingen Schenau, david.pfx Jun 16 at 14:35

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, jwenting, GlenH7, Bart van Ingen Schenau, david.pfx
If this question can be reworded to fit the rules in the help center, please edit the question.

    
Actually being able to program in, you know, an actual programming language. That's generally a requirement. –  joshin4colours Jan 11 '12 at 15:29
    
oh!!! my old question.. getting upvote now ;) –  Ant's Jan 11 '12 at 15:32

4 Answers 4

  • Does the project that I'm doing in my final year need to be excellent? If so, what kind of project to do? And how do you say that the project is excellent or not?

The most important thing is the overall mark you get on your degree but within that the project is probably the most significant piece of work. This is because it's usually the largest individual thing you'll do at university and because it usually comes at the end of the course so should represent everything you've learned during your time at university.

In terms of what sort of thing you should do, think about the following things:

(1) What sort of project are you going to get the best grade for? It's harsh but that's probably the main thing.
(2) What's most relevant to the sort of job you want to get? If you want to be a web programmer there's no point in doing an embedded systems project. If you want to work on enterprise systems in your job, pick something that uses relevant technologies.
(3) Pick something you're interested in. It's going to be a lot of work so you might need that interest to keep you going.

  • Writing the code is very fun and serious at times. But the code should have a good algorithm?

As an interviewer conversations often don't go to a detailed algorithmic level. What I want is that you have a really clear understanding of what you've done and why you did it that way and, most importantly, that you actually delivered something at the end.

Software in a commercial environment is about solving problems and delivering solutions - that's what you need to be able to demonstrate.

  • And mostly in any software companies interview, what kind of question they ask?

At a graduate level it will vary massively based on what you've studied. My basic rule is if you claim to have studied it, you'd better be able to answer questions on it and display some knowledge of it. Claim to have taken a Java course? Great but don't then claim that you didn't really do much Java when you start getting asked how you'd do something in Java

What I'm looking for overall is intelligence, that you had some genuine interest in your courses and learned something from them, and that you've got some level of self awareness (if you claim to know everything I immediately turn off, it's a sign that you really don't know what you're talking about because as a graduate you know very little).

  • Not but not the least, mastering in any particular language speaks in interviews?

Do you mean programming languages or spoken languages?

In terms of programming languages, obviously that will depend on the job. Generally I'd say have a solid understanding of either Java or C# is probably a good start but if you want to be an embedded programmer that will obviously be less relevant. As I said above, for me the main thing is if you claim you've studied it or know it, then you need to be able to demonstrate that and not start making excuses that it was just one short course and so on when you're asked about it.

In terms of spoken languages - you need to be fluent in the language that company uses. Programmers must be able to communicate, it's perhaps the most important skill. Give me an average programmer with good communication skills over a great programmer with poor communication skills every time.

If that language isn't English then knowing English as well as that language is never going to hurt.

share|improve this answer
    
Really great answer! i want to give +10 for this answer, but i can't. Since i dont have enough reputation:) Thanks a lot:):) –  Ant's Mar 4 '11 at 11:14
    
I actually asked for programming languages, but you had said for both:) really good:) –  Ant's Mar 4 '11 at 11:17
1  
You've covered it really well! I wanted to say that some companies will want you to be able to demonstrate the fundamentals of a via code samples, white boarding, or pair programming during your interview. It's nothing to stress out about, just make sure you know the language that you say you know. –  Brian Dishaw Jan 11 '12 at 13:19
    
+1 for focussing on the project which'll get you the grade, rather than the sexy one. –  JBRWilkinson Jan 11 '12 at 16:44

Does the project that I'm doing in my final year need to be excellent? If so, what kind of project to do? And how do you say that the project is excellent or not?

A program is a program if it is programmed to do what it is supposed to do. Not being too aphoristic, if you can always establish a correct relationship between your code and the resultant program, even if the relationship tends to be wrong, it is a good program (Actually, there are only bad programs since good programs are correct programs). So if you can explain your logic in the creation of your program and can extend the logic till its execution, your program is excellent irrespective of whether it is big or small and you can always build upon it. So choose a problem, think of a few solutions and program it. Don't think of programming straight away. Remember the basic scientific research rule

Cause and effect must always be proved

Writing the code is very fun and serious at times. But the code should have a good algorithm?

An algorithm is good when it is understood by the computer. Its great when it could be understood by humans. (That's why you search Google not wolfram alpha even for math solutions) So to create great algorithms, understand the problem and try to explain it in logic or mathematical terms. A rule from Pragmatic Programmer

Rule 51# Don't gather requirements - dig for them

And mostly in any software companies interview, what kind of question they ask?

The difficult part of your question since this is hugely subjective. Most questions to a newcomer are technically oriented. Just visit some interview questions site

Not but not the least, mastering in any particular language speaks in interviews?

Definitely yes. But mastering design and patterns is the best bet in the long run since understanding the requirements is the single biggest task in software engineering (in fact, in any domain). An another rule from Pragmatic Programmer

Rule 53# Abstractions Live Longer than Details

share|improve this answer

whatever you do, you're not going to get a job because of it (unless you get a project as an intern somewhere and make a good enough impression to be asked to stay on, it does happen, sometimes).

If you don't deliver, you will fail, which means you won't (or shouldn't) graduate.

Forget about "mastering" anything, you're way too green to have mastered anything (or done more than scratch the surface even) if you're fresh out of school. Claiming you've mastered anything at all (or even have significant experience in anything) will get you laughed out of interviews, if your resume doesn't get thrown out on general principle because of such ludicrous claims.

share|improve this answer
    
Oh fine, thanks for your reply –  Ant's Mar 4 '11 at 10:47

You should do your final year project sincerely. That is if asked in intereview you should be able to answer each and everything that is related to your project. Your project need not be excellent, but your efforts to make it excellent are important.
As per the selection process goes if your basics (Data structure, algorithm, database) etc. are good and your programming skills are good, people will not worry much about your excellence in any language. As per the question and programs asked in interviews, scan through the stackoverflow.com for interview-question tags.

share|improve this answer
    
Thanks for your reply ;):) –  Ant's Mar 4 '11 at 11:18

Not the answer you're looking for? Browse other questions tagged or ask your own question.