Hack College Presents: How To Become A Computer Programmer

computer programming

Computer programmers write code to create software, turning designs into instructions that a computer can follow. If you’re planning to pursue a degree in computer science or a related field, read on to learn about relevant academic programs, job availability in the tech industry, and skills you’ll need to launch a successful programming career.

Part I. The Computer Programming Industry

An Overview of the Computer Programming Industry

  • Technical and Professional Skills: Whether you plan to be a full-time programmer or eventually manage your own software development business, learning the technical skills of the industry will be your first step. You’ll need to learn various programming languages and master a myriad of data management techniques. Professional skills such as attention to detail, critical thinking, problem solving, and communication will help set you apart from competitors in the field.

  • Types of Programmers: There are many programming languages in use today, and the field will only continue to grow as more languages are created. Knowing multiple languages will put you at the top of the list for job placement. On the other hand, job applicants who only know C++ or Java are unlikely to make the cut, so adding to your skill set should be a top priority throughout your career (even though your employer may not pay you to do so). Desirable skills include fluency in scripting languages like Python, Ruby, and PHP, and working knowledge of Software-as-a-service applications that work across a large number of platforms.

  • Places to Work: Programmers have a place in companies and firms of all sizes. In a small company, you may be expected to wear many hats and handle more duties than basic programming. In a larger firm you may work on a team of programmers or on a very specific project, such as a single form or application. You may also work as a contractor taking jobs from multiple companies where you can determine the number and types of jobs you take, and whether or not you work remotely from home. Either way, expect to spend the majority of your time sitting in front of a computer.

Salary and Career Outlook

According to the Bureau of Labor Statistics, median pay for computer programmers was $71,380 in 2010. Most computer programmers work full-time. If you pursue the goal of becoming and IT manager, you can expect your pay to jump; in 2010, median pay for this position was $116,000. Many similar occupations (such as web design or software engineering) pay close to a computer programmer’s salary.

According to the BLS, employment is expected to increase 12% between 2010 and 2020, which is close to the average for all industries. Computer programming can be done from anywhere in the world, and companies have made it a practice to hire programmers in countries where lower wages are acceptable. However, some states are providing incentives for companies in order to create stateside jobs. And with the growth of industries like healthcare and the overall need for computer scientists to enable worldwide tech growth, there is a wide range of available jobs for the right programmer.

Part II. Top U.S. Programs for Computer Programmers

Find a computer programming school near you.

Most programmers enter the field with a bachelor’s degree, although an associate degree may help with job placement. Many of the programs below offer accelerated programs that award an undergraduate degree (either a B.A. or B.S.) and a master’s degree. An advanced degree, such as an MBA, is often sought by those who wish to quickly climb the corporate ladder.

Massachusetts Institute of Technology

(MIT) is world-renowned for it’s innovative faculty and student body. Electrical Engineering and Computer Science (EECS) is the largest undergraduate program at MIT.

  • Course Requirements: There are four undergrad programs at MIT. Students may complete independent study or research for credit. Curricula are provided for each program.

  • Specialized Degrees: Students who show excellent academic preparation and motivation can complete the VI-A M.Eng. program in as little as five years. This program connects mentors and students in real world working situations. The 6-P M.Eng research is completed on campus.

  • Cost: For undergrads, per term tuition is $20,885. That’s more $40,000 per year, not considering room and board. Plan for four or five years to complete a degree.

  • Financial Aid: MIT awards all aid based on the financial needs of current students.

  • For the Financially Savvy: Starting salaries for graduates of EECS average about $90,000. Plus you can take advantage of career boosting opportunities.

  • Who Should Enroll? Top tier students with stellar resumes ready to interact (and compete) with the world’s best and brightest are encouraged to put MIT on the top of their list.

University of Illinois at Urbana-Champaign

U of I’s Department of Computer Science offers several options for degrees in Computer Science.

  • Course Requirements: Three undergraduate degrees vary slightly in their math and science requirements. Prerequisites for the College of Engineering are organized in an easy-to-follow fashion; the same goes for the degree requirements for both general and major courses.

  • Specialized Degrees: UIUC offers a five-year B.S./M.S. in Computer Science.

  • Online Options: UIUC offers a Master’s in Computer Science degree for the working professional, plus online certificate programs in several different computing areas and individual online courses for non-degree seekers.

  • Cost: Residents will pay upwards of $34,000 per year for tuition, fees, room and board, including meals. Non-residents pay roughly $48,000 in annual tuition, while international students pay close to $51,000.

  • Financial Aid: In addition to state, federal, University and private financial aid sources, UIUC offers several awards and scholarships for achievement and leadership in the classroom and research lab.

  • For the FInancially Savvy: You’ll get the chance to apply what you learn in class to original problems through the Senior Design Project to obtain verifiable experience for your resume. That’s money in the bank. Becoming a resident isn’t a bad idea, either.

  • Who Should Enroll? If you care to join the ranks of the co-founders of PayPal or Netscape and you find these facts impressive, then this is your school.

University of California at Berkeley

UC Berkeley offers two computer science programs: a B.A. in the College of Letters & Sciences and a B.S. in the College of Engineering.

  • Course Requirements: The B.S. requires more math and science; the B.A. requires more non-technical courses.

  • Specialized Degrees: UC Berkeley undergrads can complete a five-year program that fulfills both bachelor’s and master’s degree requirements. This degree is more professionally-oriented than most traditional, research-based studies.

  • Cost: Residents living on campus should expect to spend $33,000 per year for everything: tuition, fees, books, room and board. If you live with relatives, the cost drops to $24,000. Non-residents living on campus shell out $56,000.

  • Financial Aid: In addition to standard state and federal financial aid programs, the University offers several scholarships that are both merit-based and need-based. It’s a four-year full ride for any incoming freshman that qualifies.

  • Who Should Enroll? More technically oriented students should enroll in the B.S. If you’re interested in humanities and social sciences, then the B.A. is for you.

Brandeis University

This university based in Waltham, Mass., boasts small classes, a rich history, and diverse student population.

  • Course Requirements: Brandeis offers a B.A. and a B.S. in Computer Science. The B.A. is designed for those entering the workforce in combination with another major. The B.A. requires nine courses: five core and four elective. The B.S. is a more rigorous course of study for those wishing to pursue a doctorate or a research focused career. The B.S. requires 14 courses: seven core, two math, and five elective. All core courses and electives are listed.

  • Specialized Degrees: Brandeis offers a combined B.A./M.A. for students who plan to stay an extra year and take additional CS classes during their senior year. The fifth year is typically composed of six graduate-level classes.

  • Cost: For total tuition, room and board, and other fees, expect the cost to be nearly $60,000.

  • Financial Aid: Brandeis University is committed to offering financial aid. More than half of incoming freshman cover tuition costs with some type of financial aid. Brandeis offers scholarships, fellowships, work-study and university employment opportunities.

  • For the FInancially Savvy: Use Brandeis’ net price calculator to see what the actual cost would be, and what financial aid you’d be offered if accepted.

  • Who Should Enroll? If you want small classes taught by distinguished faculty, summer internships, and diverse career opportunities, Brandeis is for you.

Drexel University

This Philadelphia school provides a co-op experience that allows you to earn real-world (and paid) experience during your undergraduate studies.

  • Course Requirements: Drexel offers a B.A. or a B.S. in Computer Science, the B.A. focusing on humanities electives, and the B.S. focusing on science and math. Undergraduate courses aren’t offered every semester, so enrollment planning is important.

  • Specialized Degrees: Drexel offers a five-year, accelerated B.S./M.S. in Computer Science or a B.S./M.S. in Software Engineering.

  • Cost: Attending Drexel for five years will cost $51,415 each year, which includes tuition, fees, housing and meals. Attending for four years will cost $59,115 per year.

  • Financial Aid: You can use the Net Price Calculator to find out what you can expect to pay with a financial aid package, if accepted.

  • For the FInancially Savvy: Plan ahead. Drexel requires on-campus living for the first two years (or with a parent/guardian). You’ll have to participate in the meal plan for the first three quarters.

  • Who Should Enroll? If you’d like to get a concentration in artificial intelligence and robotics, computer graphics and vision, algorithms and theory or game design and development, then Drexel is your spot.

Florida Tech University

This Tier 1 Best National University, as voted by U.S. News & World Report, has also been recognized on the Top Online Education honor roll for its bachelor’s and graduate offerings. This online program is regionally accredited.

  • Online Course Requirements: The undergraduate program includes streaming video lectures, online chat rooms and downloadable lectures. You’ll receive 24-hour customer service and tech support if you ever need assistance accessing your classes. You will be required to take broad-based liberal arts and some business courses in addition to career-specific computer information systems courses. Graduates must complete 124 credits.

  • Specialized Offerings: You can begin your courses six times throughout the year so you’re not forced to wait for another semester to roll around.

  • Cost: Florida Tech costs $495 per credit hour, or slightly more than $61,000 for the 124 credits you’ll need to graduate.

  • Financial Aid: In addition to standard state and federal financial aid programs, residents of Florida may be eligible for an Access Grant. Use their net price calculator to figure real costs.

  • For the FInancially Savvy: Florida Tech offers a military discount of $250 per credit hour. Apply your military tuition assistance, too, and get close to free schooling. Veterans and their dependents get a discount too.

  • Who Should Enroll? If your education competes for time with your children, job, or military service, Florida Tech’s flexibility will benefit you.

Part III. Breaking Into the Field

Where to Start

  • Resumes: Your resume should contain all work experience that is relevant to your job search. If this is your first official job since college, be sure to list any internships, contract labor, or weekend volunteer work you did for that non-profit this year. Your resume shouldn’t just list your previous jobs, but also your various skills. What programming languages have you learned? How proficient are you in each of them? Don’t forget that each hiring manager or HR supervisor is looking for specific job skills for a specific position. Be sure you’ve tailored your resume for that position.

  • Cover Letters: Your cover letter gives you a chance to show off your personality, as well as highlight specific aspects of the job you’re hoping to land. It’s your chance to expand on the reasons you feel you are a perfect fit for the position. Mention the company and position for which you’re applying by name. End with a call to action.

  • Portfolios: Your portfolio is your chance to show off your applied computer programming skills. Even if you haven’t been in a paid position as of yet, your classes and internships should have given you plenty of pieces to put in your portfolio. Screen shots are crucial, and job design specs are also useful.

  • Online Platforms: If your school isn’t hooking you into a great internship or practicum, explore options online. Apply for contract positions, or offer your services to nonprofits seeking someone with your skills to complete a resume building project.

Top 5 Tips from Inside the Industry

Computer Science is definitely not boring; a science that changes literally every minute, a science that infiltrates every other science. It changes the way business works. It changes the way society works. – Professor Hamzeh Roumani,York University

The best advice I can give to anyone aspiring to a degree in computer science is to learn as much as you can outside of school. Join a programming club, get as many internships as possible or just take on projects on your own. School is going the teach you the basics of programming and computer science, essentially giving you the tools you need, but only hands on experience will teach you how to properly use those tools. – Hunter Sherman, Chief Engineer of BizBrag Inc.

One of the best parts about college is that you aren’t burdened by a full-time job, and you actually have time to work on projects. In many cases, you can actually receive credit for such projects. Use your senior design project, your independent research projects, and even project-based homework assignments to enhance your web presence. Spend a little extra time putting up a simple website to collect and show off your work. If appropriate, open your work on github and contribute to active open source projects. Start a blog to document your entrepreneurial endeavors. Whether you’re looking for a job at a startup or elsewhere, simply pointing to your web-based project repo or your github account will be far more effective than emailing another one-page resume. – Blogger Doug Petkanics, aka ‘The DOB’

It’s your personal skills that will count. How well do you communicate? You should know how to present your ideas both to individuals and small groups. Can you write clearly and somewhat grammatically? Do you come across as confident in yourself and your abilities? Do you have leadership skills (that often translate into management skills)? Are you responsible? Are you a nice person to have around (or at least not completely repulsive)? Yes, there are those who are so technologically brilliant they can get away with caring just about technology, but for most of us these other skills are essential. – Blogger Dan Appelman

Being able to stay calm, get enough sleep, eat right, and keep your mental clarity is critical to your long-term survival as a programmer. It’s also important to step away from the computer when work is done, spend time with family, or just recharge your batteries. The amount of flexibility you will have to do this depends greatly on your job and employer, but there’s no doubt that long-term persistent stress will eventually lead to burnout. – Barry Warsaw, Ubuntu platform software engineer for Canonical, tells U.S. News & World Report

Be Relevant, Stay Relevant

Computer science is a rapidly growing field with applications in many seemingly unrelated disciplines. Being able to offer your skills as a computer scientists will put you at the forefront of a secure career; a place where open-minded self-starters lead the pack. Get in the game early by keeping up-to-date on exciting trends in the industry while you earn your degree.