views:

296

answers:

8

I have just recently graduated college with a Bachelors of Science in Computer Science and have joined the other millions in search for a job.

I have took up, Assembly, Java and Scheme in college and have taught myself, PHP, HTML, CSS, Android and JavaScript on the side. My part-time job right now, I serve as a part-time web designer and use tools such as Dreamweaver, Fireworks and code in ASP.

Does anyone know whats a language/web-development tool that I can learn to be a better candidate in job searching as a programmer or a web designer? I am thinking a C-based language, maybe C++, or I was told Ruby on Rails? Any ideas or thoughts?

+1  A: 

Haskell... Have a look at http://www.haskell.org/haskellwiki/Why%5FHaskell%5Fmatters

Xinus
If you are looking for employable languages, it's not Haskell. Haskell is a wonderful language, but almost exclusively used in academia.
Zack
+3  A: 

Coming fresh out of college, you should simply have all the tools you need to continue learning.

When a company is looking for an entry-level programmer, they aren't expecting someone with 5 years in the language they use. What they want is someone who has the tools necessary to learn new concepts quickly, and the attitude to do so without complaint.

Zack
+1  A: 

Go for Ruby on Rails, python if you want to do web development. C++ requires a steep learning curve. If you want to pursue that, work with legacy code, do server programming, and make a lot of money, then sure go for C++. That's what I am doing!

vehomzzz
+2  A: 

This has been asked in similar ways before, so you may want to search SO for more ideas.

But, you should look at what job skills are in demand in your area, or in an area you want to move to.

There is no one answer that will be correct everywhere, for example, in Knoxville, TN, there are only a few companies that use Java, but PHP and .NET are needed here.

In some areas you will find more demand for functional programming, but that is still a niche market, but with F# part of .NET4 it may be useful to learn.

If you know Java, get very good at Java, at least javaSE and perhaps add webservices and xml processing (jax-ws and jaxb) to your repertoire.

James Black
I was recently job hunting in San Diego, CA and most jobs were for PHP, C#, and Java too.
Michael Valenty
It seems to vary so much. In Atlanta GA and Nashville, TN, Java is hot, but I have only seen one job (for a start-up, 50 hr contract) for RoR.
James Black
+4  A: 

Language/Platform/IDE etc are secondary, most important thing is to understand interfacing/interacting different packages or different components of same or different parts of frameworks to make a complete project.

I see programmers today lack Data Stuctures, typically everyone do only things they have been spoon feeded and by the time programmer learns key concepts of programming, they become too old.

Those are old days where only c/c++ or one language skill was sufficient. In modern applications, enterprise level architecture you deal with probably 4-5 different language, different platform and different systems too.

Ideally programming has gone much more advanced, usage of source control, team management, different visual/ui , different data designing.

Today a language expert is of least important guy then a guy who knows which language/which component to use at what time and in which application.

Knowing your background, I know you will get misleaded by lot of pointers, you will try different languages and in a year you will get confused, but truth is language is only a means of communication, similarly programming language, platform etc are just means of communication where else there is more scope in how to apply them.

Just like english is best language for business communication, knowing only english will not make you grow in any area like engineering, medical, aviation anywhere, but as what you need is expertise in field with better way to communicate in english.

Similarly you should focus in business domain and how to apply IT, that is what is needed today.

Akash Kava
+1 - Good point about knowing the basics.
James Black
Why people hide their faces after giving -1, when they can write their comment as whats really wrong with this answer.
Akash Kava
+1  A: 

If you have free time, do projects in a language you find interesting. Ruby on Rails is definitely a good candidate, but in the end the language doesn't really matter, the project is what's important.

C# is actually pretty useful too for Web development along with ASP.NET.

GoodEnough
+3  A: 

Have genuine passion for your artistry and craftsmanship, and let that guide you. There will be things you enjoy more than others, learn those. Dig deep and plumb the depths of what makes it go. Really understand stuff.

Then go to an entry-level position at a place you'd enjoy working, and let them see your passion and your intelligence.

Voila, a job.

Alex Baranosky
+1  A: 

Did your college have a career services area that may have some ideas on how to improve your resume and interview skills? That along with recruiters if you have some in your area may be another resource in finding positions.

Do you know what technical and non-technical skills are your strength? Which are your weaknesses? What kind of work environment would you like to have? What challenges you'd expect to find in a job? Do you know if you want to do more front-end work, back-end work or both and everything in between? Those a few of the questions I'd suggest having answers ready almost in an instant as these may be some questions asked at an interview.

I'm not sure if Design Patterns would be useful for your stage but they can be handy to have as something that can be very useful in the future when building applications from scratch that can happen in some places.

JB King