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 finishing my last year of school while working full time and currently, I have a job that's completely unrelated to programming (student job to pay the bills...). I'm trying to find a job as a programmer (or website developer) or in a related field to get some experience.

So far, I've seen companies that hire students part-time and I tried going there, but they always ask me for a portfolio of some kind to show my work and what I can do. The problem is most of my projects so far have been for school work, so they're not really impressive. The other projects are for my current job to help my fellow coworkers accomplish some tasks more easily or so they can be able to accomplish my current tasks when I'm gone. This would be a great project to show, but it's not done yet since I'm always adding new functionalities and I don't really feel like it's a good idea to show something that's not polished enough as a project I'm proud of.

So I end up with nothing to show future employers and they don't call back for an interview or anything. I'd like to know what kind of projects are good to add to a portfolio to show future employers. I know it depends on where I'm applying and what that corporation does, but I'd like to have multiple different projects to show I can learn quickly and that I'm versatile.

I know Python, Java, C++, Javascript, PHP, Oracle and MySQL the most, but I can pick up other languages and be functionnal with them very quickly.

I'm asking because I don't want to end up spending a lot of time on projects that will end up not being a good way to show what I can do. I'm trying to plan my future the best I can.

share|improve this question

closed as off-topic by MichaelT, gnat, Kilian Foth, GlenH7, World Engineer Mar 21 at 13:44

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." – gnat, Kilian Foth, World Engineer
If this question can be reworded to fit the rules in the help center, please edit the question.

1  
great question, I'm curious what the responses will be since I'm somewhat in a similar position (not graduating yet though). –  Virtuoso Sep 24 '11 at 3:09
2  
I can pick up other languages and be functional with them very quickly. -- A good point to emphasize with a prospective employer. –  Robert Harvey Sep 24 '11 at 3:09

4 Answers 4

up vote 9 down vote accepted

Software is never perfect; it is always a work in progress. Show the work you've done for your fellow coworkers, and stop waiting until its polished.

Employers like people who know how to solve problems; they understand that ad-hoc projects are not always going to be gold-plated.

share|improve this answer
    
Let's say I show the project I'm talking about in my question, if I understand your answer correctly, I should document it in a way that highlights what the main problems were, how I decided to approach them and how I solved them rather than putting emphasis on my technical skills in a language or something similar? Am I correct in assuming that or am I missing the point? This might seem like a silly questions but I've never had a job in this field so I don't actually know what's most important to employers... –  Adam Smith Sep 24 '11 at 3:02
    
Employers can ask you all sorts of technical questions about your programming skills, but they don't really know whether or not you have problem-solving skills unless you show them work you've done before. Yes, the documentation you described will help (because it shows them that you know how to produce documentation), but if you are looking for work, don't wait for that documentation to be completed. If your work is good, the employer will know it. –  Robert Harvey Sep 24 '11 at 3:05
1  
I agree. In conducting interviews for my company -- especially with inexperienced junior programmers -- I'm not looking for a shiny project as much as something to point at, talk about, and use for asking questions about how they approached a problem. It's a great way to get an idea what your initiative and problem-solving skills are like. I certainly remember the code I wrote fresh out of school, and I don't find it particularly impressive at this point. Technical interviewers know you're just cutting your teeth, and that's fine. Show them you try, research, and learn! –  RonU Nov 15 '11 at 19:19
  1. Make simple apps e.g.
    a. If you are a windows programmer, make a notepad or a image viewer
    b. If you are a mobile developer, release a app.
    c. Web developer: Make your homepage written/designed from scratch. Show off your skills e.g. Add a JQuery based photo album

  2. Start a blog. Write technical details of the apps you created or things you are learning.

  3. Host all class/sample projects you create on github and share the link on your resume.

share|improve this answer
    
I'm definitely going to do #3 to show future employers what I'm doing and to show how interested I am in programming. For your point #2, I've thought about it but I'm not exactly sure if it's worth spending time on it since I feel like most employers wouldn't bother reading it (and thus time spent coding would be more benefic). Finally, for point #1, it's a great idea, but wouldn't creating original programs (instead of copying existing ones) show that I can plan what I'm going to code and that I'm able to complete projects with my own solutions? I'd like your opinion on that! Thanks! –  Adam Smith Sep 25 '11 at 1:45
    
If you can come up with original ideas, great! However, since the goal here is to show them that you can code, the worth of the idea is less than the real execution. For an original idea you have to iterate on it and vet it. Also, copying existing ideas, makes your execution the real focus instead of the merits of the idea during a discussion. You can always add nifty features (multiple undos to notepad) to differentiate your product –  Amit Wadhwa Sep 26 '11 at 18:00
    
+1 excellent answer. I am in the same situation. I'm working on my blog (Joomla) and three other applications (PhoneGap, PHP/CodeIgnitor & Phython/Django). I feel this variety of projects should help me get my foot in the employment door. I feel very uncomfortable applying for a programming job when I have nothing to show as well. I also recommend getting your own domain name as well, preferably www.your_name.com –  Anthony Apr 20 '13 at 8:06

It might be better to show and explain your patches to an Open Source project. Anyone can pick up a language and write a toy program in a couple of days. To have a patch accepted also demonstrates initiative, testing and debugging skills and being able to work with other people. These are highly sort after abilities.

share|improve this answer
    
Seems like a great idea, I'm probably going to try that if I find a project that interests me. Thanks! –  Adam Smith Sep 25 '11 at 1:38

Write some software that you are passionate about. Find something that will make your life easier, a small group of peoples' lives easier, or the general population. Not only do you get a nice portfolio going, but your justification for writing this software is being innovative, instead of just laying some code down for giggles.

As for the depth of the software, I'm not saying that it should be a project that'll take years to complete, but I would also try to incorporate as much technology and utilization without looking like it's over-engineered.

share|improve this answer

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