SIGGRAPH Five-Minute Career Mentor

John M. Fujii - SIGGRAPH 96 Conference Chair


Purpose

This document is a snapshot of experiences that I have shared with our SIGGRAPH community over the years. It can help orient new career seekers to the possibilities in the rapidly expanding fields of computer graphics applications and education.

The title comes from what I have touched upon in multiple "five-minute" conversations with SIGGRAPH attendees. They just got pieces, however. You get the whole thing (written down for you, no less). I essentially wrote the type of document I would have liked to find when I was starting out. Hopefully there's something useful for you here.



Disclaimer

The opinions I express here are my own and not those of my employer. Use of any of this advice is completely at your own risk. ACM SIGGRAPH, the author, and contributors can not be responsible for the reliability or use of any information contained in this or related documents.

Copyright © John M. Fujii, 2008 - reproduction by written permission only

Last update: 3 Jun 10


Frequently Asked Questions (FAQ)

  1. Where do I start?
  2. What kinds of jobs are out there?
  3. What should I do about my résumé?
  4. How do I demonstrate my talent to an employer?
  5. What education do I need and where can I find it?
  6. What skills and experience do I need?
  7. What resources are out there for me?
  8. Do you have any personal pearls of wisdom for me?


I get this question a lot. I'm writing this document to help answer the many questions that come out of this one. As a mentor, I've met a variety of people asking this question:

 
And the list goes on. No matter where you start, I'll always ask:

 
Do some work. Be ready to answer those questions. The clearer you are with them, the better chances that you will have with your search. Spend some time researching where you are and what is available to you. Really think about these questions as you read this document. They are here to provide you a framework. The more time you spend at this, the better the results will be.


There are a huge number of possibilities (including those that you might make for yourself because of your special talents). Here are a few off the top of my head:


Note that if you don't see something you think suits your goals, then consider creating your own opportunity. This might include consulting, writing books, giving lectures, or a raft of other possibilities that you can create by bridging your talents with other business angles.


I've looked at literally hundreds of résumés in my career so far. It is hard to generalize what I think they should look like to a given job prospect, but here is what I find useful to me, personally:


Now, here are some formatting and process hints:


Important Note - if at all possible, investigate your target job opportunities and make certain that your résumé reflects positive attributes about yourself that will make you attractive to the employer. Find out everything you can about the opportunity and make certain that your record reflects these matches in a memorable way. Don't be modest (but don't over embellish, either) - good interviewers will detect what is really you.
 
Important Note - the rise of search engines like Google and Yahoo means that you are more than you are on paper. Reviewers are not limited simply to what you "say" you are on paper - if they are interested, they may check up on you by simply typing your name into a search engine. Beware! - activities you may think are separate or are innocent may actually show up on the radar of those researching you. If you have websites, entries on YouTube, or any other outlets that may reflect differently upon you than on your résumé, then it may be wise to reflect upon whether or not you mention/explain those elements before they are "discovered" by other means. Beauty pageant contestants aside who have suffered embarrassments from their previous "photo shoots", similar stories abound from online research of applications that left different and unfavorable impressions of short-list candidates.
 
Do your homework on the job you want. If you need to, tailor your résumé exactly to that opening. It will make it easier for your prospective employer to see they really want you. It is not bad to have a few different types of résumés to fit a particular interest. In fact, if you call the human resources department of your target company, you can find out things like what open positions there are, what they call them, who makes the hiring decisions, etc. Tailoring your résumé gives you a better chance of having your record routed to the right people, standing out high above the generic "trawling" application.


After you have completed your résumé, your next step is how to demonstrate all of those fantastic skills you have acquired.
 
In the age of the Internet, if you are searching for a job remotely (not face-to-face), it might help to establish a personal home page with examples of your work as a digital portfolio.
 
Portfolios, whether or not they are electronic, should showcase your talents in a simple, effective manner. Organize your best work in a way that helps your audience realize the depth and breadth of your talent and experience.
 
Do not overwhelm your interviewer with too many examples of the same type of work unless you know they want to see it.
 
Here are some things I look for in a portfolio:


Many people seeking jobs at SIGGRAPH conferences are looking for employment in the computer animation field. A standard portfolio that you might include with your résumé is a demo reel (or demo tape).
 
Many demo tapes submitted by hopeful candidates fail them because one or more attributes below happen:


Here's a checklist of some things to consider:

 
Important note - when applying for a job really important to you, make certain that you make your materials easy to handle, well organized, and complete. Make certain that you provide your résumé, portfolio, image samples, demo tape, etc., all in the same package and all marked (minimally) with your name and contact information (in case it gets separated). Anything that could cause a reviewer to hit a speedbump in reviewing your materials (such as separate envelopes, having to get online to view something, having to find a player for an uncommon tape format, etc.) could spell doom for your chances. Make it easy. Make it delightful. Be thoughtful.


This section is devoted to educational resources that are available to you. Skills and experience sets are covered in the next section below.
 
Schools
 
If you can, I definitely recommend exploring advanced education opportunities before jumping directly into the career fray. The greatest advantages are improving your experience and skill sets, connecting with others who share your interests, building your confidence, strengthening your discipline, and gaining access to a variety of computer equipment better than the average home office can offer.
 
Undergraduate and graduate degrees better position you for many types of work out in the industry. Education is an investment in your career. Tehnical positions often require a minimum of a bachelor's degree.
 
A tip for job seekers - if you are targeting a particular employer, you might want to see if you can find / contact any members of its staff to find out where they were educated. If you know they will be represented at a SIGGRAPH conference, for example, you might:

 
In a grossly simplified view of the world, there are (at least) three major areas of computer graphics practice: application, creation, and education.

 
 
 
An excellent resource listing of educational programs around the world can be found at the ACM SIGGRAPH Education Committee's website:
http://education.siggraph.org/
Listed under SIGGRAPH Education Directory on that page, this Internet tool organizes many schools by program type, area of focus, geography, and keyword search.
 
 
Classes / Learning Products
 
Another source of focused education comes from courses taught specifically about a given application program. People interested in learning to use a program like Adobe Photoshop have many options available to them, such as:


This is a tough question to answer. Different jobs require different skill bases. Here are some of my thoughts on the matter.
 
Disciplines
 
Before you even embark on the other things, make certain that you have a mastery in your chosen discipline. For example, animation has a huge history beyond the computer. Make certain that you have a solid foundation in traditional animation before considering a career in it. The same goes for design, engineering, education, marketing, science - anything. Some may argue this is not necessarily true, but for those cases, they are the edge and not the norm. Do everything you can to get a grounding in your chosen field.
 
Basics
 
Basic computer knowledge is a must. As tools of your trade, you should know as much about them as you can - the more the better. You should be able to do things like move around and find things in the file system, understand how to access and control connected options on the computer, and really know how various utilities work on specific data files.
 
If you can, work on a number of different types of computers to generalize your experience base. Knowing the strengths and weaknesses of various systems gives you an edge to using the right tools to solve your problems. Specializing with a given system may make you a real master in that area, but your flexibility (and suitability) may be limited.
 
Learn the terminology that applies to your areas of interest. It will make you a better communicator with your colleagues. Most important, however, is not to just learn the buzz-words. Know what they mean and why. Remember, you are selling yourself as an expert to other experts. I can usually ascertain when someone is just putting on an act versus true expertise.
 
Specifics
 
Understanding one or more programming languages is always a plus. It acquaints you with the logic of the machine and it also allows you to craft small tools that you might need to perform your job. In terms of general languages, you might think about C or C++. If you thinking about a job where there is a lot of computing, then you should be Linux / UNIX aware with some experience in using shell scripts, Perl, and tools. (Scripts are often used to automate processes.) Most DCC production houses are employing some flavor of Linux in their pipelines. Sometimes database skills are a plus such as MySQL or PostgreSQL. Familiarity with development paradigms and the tradeoffs of Waterfall versus Agile development models can also be beneficial.
 
If you going into graphics programming, you should know not only fundamentals of graphics, but you should be familiar with graphics toolkit libraries such as OpenGL and window libraries like X or WindowsNT. Many vendors give you choices, so you should explore what the native offerings are on a given platform used by the employer of your choice. If you're interested in the Internet phenomenon, then experience with HTML, Java, Flash, etc. seem to be a must.
 
If you are going into engineering or other industrial concerns, a good grounding in structured system design, computational theory, algorithms, and data structures will be key to your success. The more advanced experience you have, the greater chance you have of finding optimal solutions for problems given to you.
 
In general, no matter what career you seek, how you design solutions is of highest importance. In the examples above I've mentioned programming languages and tools. It is not just how you say something (programming) but what you say (design) that counts. Be a good designer of solutions.
 
Solid grounding in 2D and 3D graphics principles is also a major plus, especially when considering careers like animation. You should know principles like 3D viewing methods, how rendering simulations work, and what types of data representations there are for images, objects, and materials. In the 2D realm, you should know about image processing, user interfaces, and things like digital design and typography.
 
Application packages to know are always a big question I've gotten. "Which ones do I need to know?" Again, that's a tough question. I usually try to encourage people to learn the tools that they have the most interest in using and the ones they will have the most access to right now. Often times that means what ever they can afford on their home computers or what a school laboratory might offer.
 
Make certain that you are really learning the concepts behind a tool, more than just expertise in how the tool presents it to you. (I've seen students madly looking around for a certain type of button on a new application when the function they wanted was labeled as something else. If you know what you want, then you just have to find it under the new paradigm you are using.)
 
Projects / Scenarios
 
Here are some ideas to help you gain practical experience and have something to show for it when you're done:

 
The important thing about these projects are that most of them are driven by your own interests. Creativity is the name of the game in the graphics industry, so sharpening yours is always a good thing.
 
A story from my past - I've programmed everything from databases to animation systems to huge utilities libraries. Most of the projects came from either problems other artists were trying to solve or opportunities to try out algorithms to solve a business need. Along the way I got to really practice and apply the theory that I had learned in applications of some substance. Above all, I got practice, practice, practice in programming, problem solving, application design, optimization, etc. Every time I had a chance to help others solve problems, I saw it as a chance to grow myself as well with experience.
 
Miscellaneous Details
 
A few miscellaneous details for entertainment content creation (like animation). Although I am not endorsing specific packages, here are some of the many I've seen on résumés that show where people are learning their principles from:


There are numerous resources out there for you to explore. In fact, there's probably too many of them to search, especially when trying to get a handle on your future directions.
 
Here is a non-exhaustive list of interesting resources to consider in your journey. Please note that these are randomly selected references and do not constitute an endorsement.
 
Internet
 
Resources on the Web:

 
You can find more by going to Internet search engines like Google (http://www.Google.com/) and look up references on computer graphics, animation, computer visualization, etc., to find more relevant sites.
 
Books
 
Here are a few standard references on general theory and practice. Most can be ordered through your local booksellers or from Internet vendors such as Amazon.com (http://www.amazon.com)

http://www.aw.com/cseng

Definitive technical reference text on the principles of 2D and 3D graphics, starting at raster graphics primitives and working up through rendering, modeling, and animation concepts. 1174 pages, including bibliography, index, and color plates.
 

A fine, technical overview on the principles and implementation of the rendering technique known as ray tracing. World famous contributors cover topics such as algorithms, physics, sampling, implementation, and an excellent biography. 327 pages, including bibliography, index, glossary, and color plates.
 

An introduction of computer graphics principles and practice as related to the design processes of graphic designers and artists. Liberal illustrations and patiently clear descriptions cover terminology in easy to understand chapters. 306 pages, including bibliography, index, and color plates.
 

A new reference guilde detailing numerous elements of the computer graphics industry including various job descriptions, demo reel guidelines, a timeline for computer graphics milestones, current and past CG company profiles, and many stories from the industry. 500 pages, including references, glossaries, index, and many plates (black and white, color).
 

Excellent basic technical text for college level introductory course on computer graphics. Covers basic raster graphics through brief descriptions of rendering algorithms. Even as an older text, it still covers basic implementation algorithms in thorough detail. 443 pages, including references, exercises, index, and color plates.
 

Review of state of the art techniques in rendering and animation aimed at advanced students, professionals, and implementors. Techniques and theory covered in sufficient detail to enable implementation, including sample code from case studies. 455 pages, including bibliography, index, and color plates.
 
Numerous texts exist for specific application programs available for personal computers. Popular applications, such as Adobe Photoshop and Autodesk 3D Studio Max, have books by experienced professionals who sometimes include diskettes or CD-ROMs with electronic images and exercises. Be careful to note which version of a book you are purchasing if the program is available for both Windows and Apple Macintosh computers.
 
For animators, a must is:

 
Journals / Periodicals

 
A number of specialty journals and magazines exist for sub-specialties in the field. Check in with people you meet to see what they read.
 
Conferences / Trade Shows

 
Admittedly, these references are North America centric.
 
Europeans can check out the activities of Eurographics (http://www.eg.org) and Imagina (http://www.ina.fr/Imagina).
 
Members of the Pacific rim can check out the likes of the Digital Content Association of Japan (DCAJ) (http://www.dcaj.org/outline/english/index.html) formally known as NICOGRAPH.
 
Special Interest Groups
 
There are many special interest groups out there for computer graphics. The ones I've participated in the most have to do with the Professional Chapters of ACM SIGGRAPH. These groups, organized throughout the world, serve to bring computer graphics professionals together to network and further their interest in the state of the art.
 
Check out this website for a chapter near you: http://www.siggraph.org/chapters/


Here are some personal opinions I've formed over the years. There is no formula for success, although I think common sense (whatever that is) is a thread throughout these points.
 
Working with computers is not for everyone. They test your patience, your attention to details, your values, and your sense of fun. They are a tool that can simultaneously do many wonderful and cruel things to your life. Your spirit can drain away with these digital vampires, although I contend that it's not so much the machine as it is the personality type in front of it. It's easy to get totally immersed in the task. Sometimes the results are exhilarating. Other times they're downright depressing. Be ready for the roller coaster and some really hard work.
 
Remember, you define the reward from the machine. Not the other way around.
 
Okay, you've been warned. I like to check with people that I talk to so that they're not surprised later by the hard work ahead. It's not fatal for most of us, but it sometimes can have some tricky lessons buried in the journey.
 
If you're still with me, here's what I think:

 
**Mutli-discipline - to me this means having good knowledge and mastery in more than one discipline. However, take care how you represent yourself. Don't assume that if you have dabbled in an art or science that you can pass yourself as an expert if you are not. People have washed out of jobs, for example, because they mis-matched their skill / experience levels with what was actually required.
 
 
 
 
 
 



Acknowledgements

I'd like to thank my SIGGRAPH reviewers for their help and contributions to this document:

I'd also like to thank the many friends and people I've met along the way who helped me in the SIGGRAPH world. Some of this work is a gift from them, too.

Good luck to you in your future career!

Samurai John 8^)