How can I stand out for programming jobs straight from high school?
When I graduate high school I'm going to go to college but I also want to try to get some summer or after school jobs to help pay for school. What can I do to stand out for the competition? For example does it matter if I do a team sport or other things or are my grades and programming languages all that matters?
8 answers
Christopher’s Answer
One thing you can do besides what has already been mentioned is becoming a contributor to an open source project like those hosted at Apache. Millions of people use these software libraries and the development that is done on them is on a volunteer basis. Every single project that I know of can use additional help with development, testing, documentation, etc. There are several benefits of this option:
1) You will learn programming at a professional level.
2) You will learn many of the open source tools of the trade that are used by today's professional programmers.
3) Your participation is a matter of public record and can be easily seen and verified by potential employers.
4) You will be networking with serious developers that can teach you a lot.
Personally I would think it would be amazing if a entry level candidate were able to list numerous tickets or features they were involved in on an open source project.
Eric’s Answer
Practice programming on your own as much as you can. This both helps you see where your passions lie, so you can talk about that when interviewing (do you like writing servers? Android apps? Web apps? Games, real-time or turn-based? Embedded systems? There are innumerable possibilities), and gives you concrete code to show off. Some tech companies looking for programming positions will happily look through source code if you put a link to it on your resume. I had several personal projects which I stored on Github (github.com), and put links to them on my resume with short descriptions. This meant that interviewers could ask specific questions about things that I had done that they were interested in, and I think this helped me stand out.
There are many ways to get started in programming if you haven't already. I can expand on a few of them if you're interested.
Monty’s Answer
Sports and grades will not help you much. The most important thing is networking, meeting people and letting them understand your skill. You can meet people anywhere the important thing is how you present yourself and your expertise. For example you could go to a chamber of commerce mixer or meet a parent of a friend. You will be asked "What are you up to?" A solid answer on I am building a software development company and this is who we are working for right now will pay off.
Understand networking is a long term effort but the person you meet today will suggest a job for you next month. Over time you will have a solid network that feeds you work. Stay in touch with people and talk about your successes and new projects.
Finally in all of your work focus on customer service, take care of the people you do work for. Communicate with them regularly, follow-up on anything that is uncertain and respond to their questions quickly. Previous customers are a great source for new projects.
Essentially I am saying don't present yourself as a student, present yourself as a professional. People might do a student a favor but a young professional who is working hard is much better.
William’s Answer
I started learning web design at 17 and got my first industry job at 19 (almost right out of high school) with no degree. Here's what I did:
1) I spent countless hours (several hours a day) learning everything I could about web design, programming, how computers work, how the web works, etc (the languages I started with were HTML, JavaScript, CSS and PHP).
2) I focused on learning a few key things at first. There are an unfathomable amount of things to learn as a programmer. Don't make the mistake of fluttering between them at first. Focus on learning a couple of big languages or concepts and master those. If you want to build web apps, learn a language like Ruby and a framework like Ruby on Rails and master those. Then you can start to tackle more once you have a solid foundation.
3) Develop your ability to learn rapidly. The skill that has helped me the most throughout my career has been my ability to learn new things quickly. Every single job I've had has required me to learn at least one new programming language (sometimes several) and at least one new major concept (like a new programming paradigm; sometimes several). It cannot be overstated how important it is to know how to learn to be effective with things quickly.
4) Have a portfolio of work. This is what landed me my first job. Having a portfolio of example projects that you've done on your own, open source projects that you've contributed to, and other code that you've written will put you in a new category of candidate. I can tell you, having interviewed many people myself, that it's a big red flag if a programmer doesn't have examples of his or her work. And put your projects up on a site like GitHub.
tl;dr: Pick a single programming language and a framework you can do something useful with and master them. Build a portfolio by working on some open source projects (preferably at least one project you created yourself).
Stephen’s Answer
Hi Jonya,
Engineering is, at the end of the day, a service required to run a business [which exists to make a profit]. Training people takes time and money, which many companies do not wish to provide if they don't have to. If you show up at my company with sports as a big part of your resume, that won't do me any good. If you show up with high grades, I'm going to assume you're intelligent and you work hard, but I'll have to train you. If you show up with good grades knowing one or more programming languages [or similar skills] that I can immediately use to help my business, you're in. Take a look at the open positions companies in your field or area have and the skills they are looking for, and that should help with which language(s) to learn. Best of luck to you!
Tiffany’s Answer
Your best bet is to look for internship positions. A lot of companies will hire interns who are in college to do programming-type work. To get an internship, most companies will likely just be looking at your grades and any past experience you've had in programming. If you have some examples of things you've coded, that's likely going to be a big help! Plus, when you go to get a job after college, internships look great on your resume.
Morgan Bardon
Morgan’s Answer
Sign up to http://www.freelancer.com and start doing work for small businesses in there. Get your experience of small projects and build up that portfolio.
Anshul’s Answer
There is nothing better than demonstrating that you have created something ( a small product ) using the skills you acquired that other people love to use. In my interviews I always showed the projects I worked on ( games in my case ) and why people love to play them.