Job Descriptions and Careers, Career and Job Opportunities, Career Search, and Career Choices and Profiles » Computer Programmer Job Description

Meet a Computer Programmer

interview game mates times bugs

Nathan Mates is a computer programmer at Pandemic Studios in Santa Monica, California. Pandemic is a developer of computer games for PlayStation 2, Xbox, GameCube, and for personal computers (PCs). Mates has helped create many games, including Ten Pin Alley, Brunswick Circuit Pro Bowling, Battlezone II, Triple Play 2002, and Star Wars II: Attack of the Clones.

Mates got his start at an early age. When he was in the third grade, he took a weekend course sponsored by a local university, and he became interested in programming. Throughout his school years, he programmed in his spare time and then started doing it professionally after graduating from college. He says the reason he decided to become a programmer was because he has always enjoyed programming so much. “Much as some people enjoy puzzles or building things with Legos, I enjoy programming. You’re building something—going from a rough goal to a complete product. I’ve looked at other programs, said ‘Hey, I can do that!’ and written my own version of them for fun. In short, programming is building and creating things from scratch, producing something that others can use.”15

What His Job Is Like

Mates says that no two days are ever the same at his job. When he arrives at work, the first thing he does is check his e-mail. He gives priority to e-mails from his company’s software testers, who have reviewed his programs to look for bugs. If they find any, they let him know right away. He says that some bugs can take as long to fix as writing new software. “Depending on how serious the bugs are, they can take days to finally fix right—and sometimes it takes that long just to understand what’s causing them. Then there are times when one thing causes something else to break. A good rule is, for every two bugs that we fix, another is introduced.”

When Mates is not fixing problems in existing software, he is writing new programs. He says the process of creating games starts with an idea of what the final game should look like. The programmer figures out how the game should behave, and then begins to build it. He talks about the process: “Writing new code is like the old joke, how do you eat a whale? One bite at a time. Basically, a task may seem huge at first, but if you keep dividing it up into smaller and smaller chunks, eventually you’ll have a small enough piece of code you can do in a minute or a few. Then you keep putting small chunks together, and sooner or later it starts coming together.”

The time that Mates spends programming often varies based on how large and complicated the games are, as he explains:

Some new code can be written in a few minutes, if it’s just a small feature that needs to be added to a game. Other times, it may be a major task that takes days or weeks or months of programming before it’s done. Modern computer games and programs are getting to be huge. The largest I’ve worked on was half a million lines of code—to put that into perspective, it’s about two to three times the text content of the Bible.

The Best Times

Mates says the most exciting part of his job is watching a basic idea actually come to life in the form of a real game.

I remember the first time I saw one of my games running onscreen, and it was so cool. I had programmed for a while, and when I tried to run it, there it was on the screen and stuff was actually moving! It stopped with an error, but after a few quick fixes, I got rid of the bugs and it started moving again. It didn’t run that fast at first, and the graphics were kind of simple. But still, seeing things work like that was great. Now, when I can point to a game on a store’s shelf and know that I created it, that’s one of the best things about the job. Also, it’s cool to get e-mails from fans who tell me they like a game I’ve developed.

Mates says that another benefit to being a game programmer is that the pay he earns is good. He adds, however, that the money is not his primary motivation.

The Tough Times

Just as there is a downside to most any career, Mates says it is not always easy being a game programmer. He sometimes works very long hours, especially when he is nearing the deadline for a game that is about to be released. Mates explains:

When a due date is getting close, we all go into crunch mode. Working 60-hour weeks happens a lot during those times. However, it can be worse at other companies. Some hit 80- to 100-hour weeks, although I’ve never experienced that. Crunch mode is a necessary evil at times, as a lot of stuff needs to be done. But then there are those occasional projects where we have to work in crunch mode for weeks or months, and too much of that can ultimately burn people out.

Mates says that some of the most frustrating times are when a program is not working and there is no obvious reason why. “That’s when we shake our heads and say ‘This should WORK!’ but it just won’t. Yet, no matter how long it takes, or how frustrating it is, we have to keep trying to understand what’s going wrong. And we can’t quit looking for solutions to the problem until all the bugs are ironed out and the game is running right.”

The Programmer Mentality

Long hours and occasional frustration are just part of the job, and Mates says people who choose this career need to understand that. He also says there are personal qualities that game programmers need in order to be successful. “I would say that tenacity [persistence] is probably the most useful skill for a programmer. Typical game development schedules are a year or two years, and it may take months of work before one single thing is visible onscreen and playable. Spending hours or days on one problem doesn’t happen all the time, but when it does, programmers have to deal with it.” He adds that when programmers face what seems like never-ending bugs, they may feel like giving up and running in the other direction. “We can’t do that, though. Running away from the problem isn’t the answer. We have to stick with it until the problems are all solved.”

Mates stresses that game programmers also need the ability to work well with others.

People at game development studios work in teams pretty much all the time. If you’re working on a project with a team of five to twenty people, you really do need to be able to quickly and accurately communicate things in meetings or informal conversations. A brilliant but arrogant programmer tends to be more of a liability to a team than an asset. It’s very much like sports teams, where the entire team is important.

As for whether he recommends a programming career to young people, Mates says yes—as long as they really enjoy working with computers. “You’ll be dealing with computers a lot, so you’d better like it. The hours can be long, and the work can sometimes be frustrating. But when you can look at something you created and say to your friends ‘See that game? I wrote that!’ you’ll have a great feeling.”

15 All quotes in “Meet a Computer Programmer”: Nathan Mates, interview with author, September 9, 2002.

Types of Computer Programmers [next] [back] For Further Exploration

User Comments

Your email address will be altered so spam harvesting bots can't read it easily.
Hide my email completely instead?

Cancel or

Vote down Vote up

almost 7 years ago

I really like this write up, it encourage not to give up, because it is always frustrating to write a program and is not compiling after spending long hours working on it, but with what I have read now, I won't let frustration to put me down again, thanks and GOD bless

Vote down Vote up

almost 5 years ago

T.inthu Rani- ur a tool, capitol P!!!!!!!1!!!!!

Vote down Vote up

about 5 years ago

im dumd fart!!!!!!!!!!!!!!!!!!!!!!!!!!!

Vote down Vote up

about 9 years ago

I don't care if someone is a brilliant programmer/software designer and always right. I don't think it's worth working with them if they are over-confident and over-dictative. They tend drain the emotional energies away from the people who work with them, making it impossible for the average programmers to contribute.



Heh...just think of Dr. Gregory House. Brilliant, but I wouldn't want to work with him.

Vote down Vote up

over 3 years ago

I love CP and this interview really helped. I stared cp when i found a program that let you create mods for MC (minecraft) after a few years i created mods for The sims 3 and Simcity.

Vote down Vote up

over 4 years ago

cool

Vote down Vote up

over 2 years ago

im doing a project for school and id like to know more about computer programming at least 15 facts about cpu programming

Vote down Vote up

over 4 years ago

You are a fagggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg


And you live with your mom

Vote down Vote up

over 5 years ago

Curriculum Vitae

T.INTHU RANI

Mobile: 8148663791
Email: ranithuraipazham@gmail.com


Objective
Desirous of working in an organization, which provide adequate opportunity for career development and to utilize my knowledge to contribute to the success of the organization.

Academic qualifications

Qualification School/College/ University Year of Passing Marks Obtained
(%)
MCA Madurai Kamaraj University 2008 (DDE). 59%

(PGDCA) Industries Service Institute, Nagercoil 2003 75%
B.Sc – Maths Scott Christian College, Nagercoil,
2002 48%
H.S.C L.M.S Higher Secondary School, Zionpuram, Nagercoil March 1999 63%
S.S.L.C L.M.S Higher Secondary School, Zionpuram, Nagercoil April 1997 68%

Computer Skill

 C, C++, VB, HTML, JAVA, JAVA BEANS, JSP, Servlets, J2EE, Struts.
 ORACLE 8i, 9i, SQL Server, My SQL.
 Completed PGDCA
Work experience
I. Software programmer in Ektaa Technologies Pvt Ltd, Chennai From Dec ,2009 to May 2011.
II. Senior faculty and Guided Students Projects in java SSI Education Center, Nagercoil from April 2008 to November 2008.
III. Project Coordinator, Young Men’s Christian Association, Madurai from June 2003 to march 2008
IV. MCA Project: Congestion Control using credits Resynchronization in ATM.
I. Software programmer in Ektaa Technologies Pvt Ltd, Chennai
From Dec ,2009 to May 2011

• Back end Application development
• APIs and frameworks
• Web Application design development
Financial Services, Health care, Retail, Telecoms,
Institutions, Insurance & Pharmaceutical Projects
Max New York Lifeline Medicash Insurance web service Developments:
The insurance Web service enables the hospital application to generate an insurance claim based on the results of the patient information. The insurance Web service processes the claim, and returns a claim response to the hospital application that invokes a JSP to display the results or the claim.
The sample Web application demonstrates how to code a JSP in terms of the proxy file development.The Web service is deployed to the Web Sphere Application Server and an internal Web browser is launched to demonstrate the sample application.
The Web service will be deployed using the WebSphere Application Server unit test environment. The Server perspective automatically opens and a Server project is created in the Navigator view. The WebSphere Test Environment starts.
Senior faculty and Guided Students Projects in java SSI Education Center, Nagercoil. from April 2008 to November 2008.
Process: Multiple Projects
• Secure Remote application : VPN client application and Citrix Client applications

• Infrastructure security Application: PGP, Be-crypt and Symantec endpoint encryption.

• Software Management Applications : System Centre Configuration Manager (SCCM) and Software management server (SMS)
• Active Directory Usage : Working knowledge on Group administration Mailboxes creations, Distribution List Creations and user account creation. , admit Group Policy, AD Disaster Recovery, Backup & Restore, Technical understanding of AD tools and resource kit tools, Software, service pack installation
• Ticketing Tools : BMC Remedy, SIP, Etc.,
• Servers : Windows server 2008 and Windows server 2003.
• Operating Systems Windows98, NT, 2000, XP, and Win 7.

II. Project Coordinator, Young Men’s Christian Association, Madurai from June 2003 to march 2008
My projects :
• YMCA services centre for the hearing impaired
The programmes such as the preschool, special school, integrated education, capacity building and skill development fulfils the dire needs of the aurally
• YMCA special school for mentally challenged
This special programme provides opportunities for more than 50 mentally challenged children to develop their daily living skills, get basic education and facilitate them to develop their capacities through special schooling.
• YMCA study centre for the rural children &skill development programme for rural development
It creates a comfortable and healthy environment for children to do their homework and get additional support in learning from the tutors
• YMCA Tsunami project
 Building construction in coastal area
 Self Help group for Rural Area women
III. MCA Project: Congestion Control using credits Resynchronization in ATM.
Programming Language: JAVA, Duration: 6 months
 Connection Admission control
 Priority control
 Traffic Shaping - Traffic management for ATM networks
 CAPC - Congestion Avoidance using Proportional control
 Congestion Detection
 Network Resource management

Personal Skills:

• Enthusiastic in Creative and Cooperative work.
• Quick Learning and hard working
• Interested to help others
• Positive attitude
• Highly trustworthy, reliable and confidential

Personal Profile
Name:
Gender:
Nationality:
Date of birth:
Language Spoken:
Address for Communication:



Inthu Rani
Female
Indian
03 Feb 1983
Tamil, English, and Malayalam
55E/69 Vysar nagar 5th street
Vysar Padi
Chennai 600 039

Declaration:
I hereby declare that the above-mentioned information is correct up to my knowledge and I bear the responsibility for the correctness of the above-mentioned particulars.



(T.Inthu Rani)


Vote down Vote up

about 1 year ago

poop

Vote down Vote up

about 2 years ago

NOT DRAVEN DRAAAAAAAAAAAAVEN

Vote down Vote up

over 5 years ago

Curriculum Vitae

T.INTHU RANI

Mobile: 8148663791
Email: ranithuraipazham@gmail.com


Objective
Desirous of working in an organization, which provide adequate opportunity for career development and to utilize my knowledge to contribute to the success of the organization.

Academic qualifications

Qualification School/College/ University Year of Passing Marks Obtained
(%)
MCA Madurai Kamaraj University 2008 (DDE). 59%

(PGDCA) Industries Service Institute, Nagercoil 2003 75%
B.Sc – Maths Scott Christian College, Nagercoil,
2002 48%
H.S.C L.M.S Higher Secondary School, Zionpuram, Nagercoil March 1999 63%
S.S.L.C L.M.S Higher Secondary School, Zionpuram, Nagercoil April 1997 68%

Computer Skill

 C, C++, VB, HTML, JAVA, JAVA BEANS, JSP, Servlets, J2EE, Struts.
 ORACLE 8i, 9i, SQL Server, My SQL.
 Completed PGDCA
Work experience
I. Software programmer in Ektaa Technologies Pvt Ltd, Chennai From Dec ,2009 to May 2011.
II. Senior faculty and Guided Students Projects in java SSI Education Center, Nagercoil from April 2008 to November 2008.
III. Project Coordinator, Young Men’s Christian Association, Madurai from June 2003 to march 2008
IV. MCA Project: Congestion Control using credits Resynchronization in ATM.
I. Software programmer in Ektaa Technologies Pvt Ltd, Chennai
From Dec ,2009 to May 2011

• Back end Application development
• APIs and frameworks
• Web Application design development
Financial Services, Health care, Retail, Telecoms,
Institutions, Insurance & Pharmaceutical Projects
Max New York Lifeline Medicash Insurance web service Developments:
The insurance Web service enables the hospital application to generate an insurance claim based on the results of the patient information. The insurance Web service processes the claim, and returns a claim response to the hospital application that invokes a JSP to display the results or the claim.
The sample Web application demonstrates how to code a JSP in terms of the proxy file development.The Web service is deployed to the Web Sphere Application Server and an internal Web browser is launched to demonstrate the sample application.
The Web service will be deployed using the WebSphere Application Server unit test environment. The Server perspective automatically opens and a Server project is created in the Navigator view. The WebSphere Test Environment starts.
Senior faculty and Guided Students Projects in java SSI Education Center, Nagercoil. from April 2008 to November 2008.
Process: Multiple Projects
• Secure Remote application : VPN client application and Citrix Client applications

• Infrastructure security Application: PGP, Be-crypt and Symantec endpoint encryption.

• Software Management Applications : System Centre Configuration Manager (SCCM) and Software management server (SMS)
• Active Directory Usage : Working knowledge on Group administration Mailboxes creations, Distribution List Creations and user account creation. , admit Group Policy, AD Disaster Recovery, Backup & Restore, Technical understanding of AD tools and resource kit tools, Software, service pack installation
• Ticketing Tools : BMC Remedy, SIP, Etc.,
• Servers : Windows server 2008 and Windows server 2003.
• Operating Systems Windows98, NT, 2000, XP, and Win 7.

II. Project Coordinator, Young Men’s Christian Association, Madurai from June 2003 to march 2008
My projects :
• YMCA services centre for the hearing impaired
The programmes such as the preschool, special school, integrated education, capacity building and skill development fulfils the dire needs of the aurally
• YMCA special school for mentally challenged
This special programme provides opportunities for more than 50 mentally challenged children to develop their daily living skills, get basic education and facilitate them to develop their capacities through special schooling.
• YMCA study centre for the rural children &skill development programme for rural development
It creates a comfortable and healthy environment for children to do their homework and get additional support in learning from the tutors
• YMCA Tsunami project
 Building construction in coastal area
 Self Help group for Rural Area women
III. MCA Project: Congestion Control using credits Resynchronization in ATM.
Programming Language: JAVA, Duration: 6 months
 Connection Admission control
 Priority control
 Traffic Shaping - Traffic management for ATM networks
 CAPC - Congestion Avoidance using Proportional control
 Congestion Detection
 Network Resource management

Personal Skills:

• Enthusiastic in Creative and Cooperative work.
• Quick Learning and hard working
• Interested to help others
• Positive attitude
• Highly trustworthy, reliable and confidential

Personal Profile
Name:
Gender:
Nationality:
Date of birth:
Language Spoken:
Address for Communication:



Inthu Rani
Female
Indian
03 Feb 1983
Tamil, English, and Malayalam
55E/69 Vysar nagar 5th street
Vysar Padi
Chennai 600 039

Declaration:
I hereby declare that the above-mentioned information is correct up to my knowledge and I bear the responsibility for the correctness of the above-mentioned particulars.



(T.Inthu Rani)